Android と Linux 間でファイルを転送 — MTP の手間なし

Android と Linux 間でファイルを転送 — MTP の手間なし

最終更新 :

Android ↔ Linux ファイル転送 — MTP の手間を省く

Android スマートフォンを USB 経由で Linux デスクトップに接続しようとしたことがあるなら、そのイライラをご存知でしょう。Linux 上の MTP は、不安定なことで有名な libmtp および gvfs-mtp ライブラリによって処理されます。転送中の切断、Nautilus のフリーズ、ファイルが破損しているように見える、または電話がまったく検出されない。

AnExplorer は MTP を完全に回避します。どの Linux ディストリビューションでも実際に確実に動作する 2 つのアプローチ:

  1. デバイス接続 — 携帯電話で HTTP サーバーが実行されている場合、それを Firefox で開きます。Linux ではセットアップは不要です。
  2. SFTP クライアント — AnExplorer は Linux マシンの SSH に接続します。ほとんどの Linux ボックスは、すぐに SSH を実行します。

どちらも Wi-Fi 経由で動作します。ケーブル、ドライバー、mtp-detect のデバッグは必要ありません。

アプローチ 1: デバイス接続 (電話 → Linux、ゼロセットアップ)

これは「うまくいく」方法です。あなたの携帯電話がウェブサーバーになります。Linux のブラウザはクライアントです。

携帯電話で:

  1. AnExplorer を開く → ☰ をタップ → デバイス接続開始
  2. アドレスをメモします: http://192.168.1.42:8080

Linux の場合:

  1. Firefox (または Chrome/Chromium/Brave など、ブラウザを備えたものなら何でも) を開きます。
  2. アドレスを入力 → Enter
  3. 携帯電話のファイルシステムが表示されます - 参照、ダウンロード、アップロード、名前変更、削除

それでおしまい。apt install 何もありません。フラットパックはありません。スナップはありません。PPAはありません。すでにお持ちのブラウザだけです。

あなたにできること:

  • 携帯電話から Linux にファイルをダウンロードします (任意のファイルをクリック)
  • Linux から電話にファイルをアップロード (アップロード ボタン → ファイル ピッカー)
  • フォルダーの作成、ファイル名の変更、削除 - ブラウザーからの完全なファイル管理
  • 複数のファイルを一度に転送

速度: 5 GHz Wi-Fi で 20 ~ 50 MB/秒。実際には MTP よりも高速で、限りなく信頼性が高くなります。

どのディストリビューションでも動作します: Ubuntu、Fedora、Arch、Debian、openSUSE、Mint、Pop!_OS、Manjaro — Web ブラウザがある場合、Device Connect は動作します。ディストリビューション固有のパッケージ、依存関係の地獄、追加する PPA はありません。これが、インフラストラクチャについて考えずにファイルを移動したいだけの Linux ユーザーに推奨される最初の方法である理由です。

アプローチ 2: SFTP クライアント (Linux → 電話、Linux ファイルにアクセス)

Linux マシンはほぼ常に OpenSSH を実行します。AnExplorer の SFTP クライアントは直接接続し、携帯電話から Linux ファイルシステムに完全にアクセスできるようにします。

Linux の場合 (SSH が実行されていることを確認します):

systemctl status sshd

実行されていない場合: sudo systemctl enable --now sshd

Linux マシンの IP をメモします: ip addr show または hostname -I

携帯電話で:

  1. AnExplorer → ☰ → ネットワークSFTP を開きます
  2. + をタップして新しい接続を追加します
  3. ホスト: Linux IP (例: 192.168.1.100 )、ポート: 22
  4. ユーザー名: Linux ログイン、パスワード: Linux パスワード
  5. 接続 をタップします

Linux ファイルシステム全体が AnExplorer に表示されます。/home/username/ を参照し、ファイルを携帯電話にコピーするか、携帯電話から Linux にアップロードします。

Linux ユーザーがこれを好む理由:

  • SSH はすでに実行されています - 追加のソフトウェアをインストールまたは設定する必要はありません
  • デフォルトで暗号化されます (FTP や HTTP とは異なります) - すべてのデータは SSH トンネルを通過します
  • VPN (ローカル Wi-Fi だけでなく) 経由でリモートで動作 - どこからでも自宅の Linux ボックスにアクセス
  • scp または rsync を使用する人にはおなじみ — 同じ資格情報、同じポート
  • ファイルシステムへの完全なアクセス — ユーザーが権限を持っている場合は、 /home/media/mnt 、さらには /etc を参照します
  • AnExplorer でブックマーク可能 — 次回からワンタップでアクセスできるように接続を保存します

実用的な用途:

  • 家を出る前に Linux ワークステーションから携帯電話にファイルをプルします
  • ソファにある携帯電話からホームサーバーのメディアライブラリにアクセス
  • 携帯電話から Linux マシンの写真アーカイブに写真を直接アップロードします
  • 会議中に携帯電話から開発マシン上のプロジェクト ファイルを参照する

アプローチ 3: Samba/SMB (共有フォルダー、常に利用可能)

Samba 経由で Linux マシン上のフォルダーを共有する場合、AnExplorer は SMB クライアントとして接続します。

Linux の場合 (1 回限りの Samba セットアップ):

sudo apt install samba
sudo nano /etc/samba/smb.conf

共有を追加し、Samba パスワード ( sudo smbpasswd -a username ) を設定し、再起動します: sudo systemctl restart smbd

携帯電話で:

  1. AnExplorer → ☰ → ネットワーク → SMB → + をタップします
  2. Linux IP、共有名、ユーザー名、Samba パスワードを入力します。
  3. 接続 — 共有フォルダーが表示されます

ブックマークすると、両方のデバイスが同じネットワーク上にあるときはいつでも AnExplorer のサイドバーからワンタップでアクセスできます。

Device Connect よりも Samba が有効な場合:

  • (サーバーを手動で起動するときだけでなく) 常に使用できる永続的な共有フォルダーが必要です。
  • 複数のデバイスが同じ Linux フォルダーにアクセスする必要がある (電話、タブレット、テレビ)
  • ネットワーク上で Windows マシン用の Samba をすでに実行している
  • Linux 上のフォルダーにファイルをドロップし、後で手動の手順を行わずに携帯電話からファイルを取得したい場合

USB 経由で MTP を実行しないのはなぜですか?

Linux 上の MTP には 10 年以上にわたって問題がありました。よくある問題:

  • 電話が検出されませんgvfs-mtp はデバイスの列挙に失敗します
  • Nautilus/Dolphin がフリーズ — 携帯電話のストレージを参照するとファイル マネージャーがハングします
  • 転送の破損 — ファイルが不完全または破損して到着します(特に大きなビデオ)
  • 同時アクセス不可 - 一度に 1 つのアプリのみが MTP にアクセスできます
  • 権限の問題 — 一部のディストリビューションでは udev ルールが必要です

これらは AnExplorer のせいではなく、Linux MTP スタックの問題です。Device Connect と SFTP は、Linux が完璧に処理する標準ネットワーク プロトコルを使用して、MTP 層全体をバイパスします。

技術的に興味のある方へ: MTP は、2000 年代初頭にポータブル メディア プレーヤー用に Microsoft によって設計されました。決して汎用のファイル転送を目的としたものではありません。Android がデフォルトの USB プロトコルとしてこれを選択したため、Linux はしぶしぶこれを採用しました (アンマウントに関する独自の問題があった USB 大容量ストレージの代わり)。その結果、誰も好まないプロトコルが、誰もうまく保守していないライブラリによって実装され、はるかに優れたネイティブ ファイル共有プロトコル (SSH、SMB、HTTP) が利用可能な OS 上に実装されます。AnExplorer を使用すると、代わりにこれらのより優れたプロトコルを使用できます。

ディストリビューション固有の注意事項

Ubuntu/Debian: SSH は通常、デスクトップ エディションにはデフォルトではインストールされません。sudo apt install openssh-server を使用してインストールします。Ubuntu Server にはプリインストールされています。

Fedora/RHEL: SSH はインストールされていますが、有効になっていない可能性があります。sudo systemctl enable --now sshd で始めます。ファイアウォールがポート 22 をブロックする可能性があります。 sudo firewall-cmd --add-service=ssh --permanent && sudo firewall-cmd --reload を使用してポート 22 を開きます。

Arch Linux: sudo pacman -S openssh でインストールし、 sudo systemctl enable --now sshd で有効にします。

Linux Mint/Pop!_OS: Ubuntu と同じ — sudo apt install openssh-server (存在しない場合)。

Samba の場合、すべての主要なディストリビューションでパッケージ化されています: apt install samba (Debian/Ubuntu)、dnf install samba (Fedora)、pacman -S samba (Arch)。

比較: Linux の転送方法

方法スピードLinux セットアップ信頼性最適
デバイス接続20 ~ 50 MB/秒なし (ブラウザ)素晴らしいどのディストリビューションでも素早い転送
SFTP (Linux へ)20 ~ 40 MB/秒SSH が実行中 (通常はデフォルト)素晴らしい電話から Linux ファイルにアクセスする
サンバ/SMB30 ~ 60 MB/秒Samba のインストールと構成素晴らしいいつでも利用できる共有フォルダー
KDE コネクト10 ~ 30 MB/秒KDE Con​​nect をインストールする良い通知 + 小さなファイル
ローカル送信20 ~ 50 MB/秒LocalSend をインストールする良いクロスプラットフォーム、オープンソース
MTP (USB)10 ~ 30 MB/秒なし (内蔵)Linux が苦手最後の手段
ADB プッシュ/プル30 ~ 50 MB/秒ADB をインストールする良い開発者のみ

関連ガイド

よくある質問