web-dev-qa-db-ja.com

ファイルシステム内のMTPマウントデバイスはどこにありますか?

MTP経由でコンピューターに接続するAndroid電話があります。これは正常に機能します。 Nautilusでファイルを表示して転送できます。ただし、端末を使用して多数のファイルを移動したいことがよくあり、ファイルシステムツリー内のどこにもデバイスが見つからないようです。 Nautilusはmtp://[usb:003,007]/として場所を報告しますが、/mediaまたは/mntの下にはありません。

誰がそれがどこにあるか知っていますか?

205
bessman

すでに 検出 があるように、マウントポイントは/run/user/$USER/gvfs/(または/var/run/user/$UID/gvfs)にあり、使用するプロトコル、接続タイプ、およびアドレスに基づいて名前が付けられます。同じポートであっても、デバイスを再接続するたびに接続アドレスが変わる可能性があるため、これは事態をより難しくします。同じデバイスを2回使用すると、さらに悪化します。

lsusbを使用して、接続されているすべてのUSBデバイスを端末から表示できます。

$ lsusb | grep Google                       # Note: This is a Nexus 4
Bus 002 Device 025: ID 18d1:4ee2 Google Inc.

お気づきのとおり、Nautilusはツールチップを介してこの情報も提供します。エンコードされた形式の例があります。 mtp://[usb:002,025] in /run/user/$USER/gvfs(または/var/run/user/$UID/gvfs)in mtp:Host=%5Busb%3A002%2C025%5D


Askerの編集:これには、13.04でデフォルトで利用可能なものよりも新しいバージョンのlibmtpやgvfsが必要と思われます。 Sudo add-apt-repository ppa:langdalepl/gvfs-mtpを実行し、他のことを行う前に更新します。


編集:PSAはsaucy/13.10以降では不要になり、ファイル名はNautilusの場合と同様にターミナルにリストされます。

2016-01-11の編集:メンテナンスと改善の時間がないため、この回答に以前含まれていたスクリプトを削除しました。あなたはまだ改訂履歴でそれを見つけることができます。

152
LiveWireBT

Nexus端末のメモリには次の場所からアクセスできます。

/run/user/$UID/gvfs/mtp*

したがって、$ UIDが1000の場合、次のいずれかの方法で見つけることができます。

$ cd /run/user/$UID/gvfs/mtp*

または(UIDが1000であると仮定した例の正確な場所)、

$ cd /run/user/1000/gvfs/mtp\:Host=%5Busb%3A001%2C006%5D/
94

MTPマウントされたデバイスは通常、次の場所にあります。/run/user/1000/gvfs/


たとえば、Nautilusのアドレスバーにmtp://[usb:001,006]/と表示されている場合は、次の方法でアクセスできます。

/run/user/1000/gvfs/mtp\:Host=%5Busb%3A001%2C006%5D/

ターミナルでファイルまたはフォルダーをコピーできます:

  • フォルダーにcd-> cd /run/user/1000/gvfs/mtp\:Host=%5Busb%3A001%2C006%5D/
  • 次に、必要なフォルダを現在のディレクトリにコピーします-> cp -r ~/videos/ .
25
suhailvs

これはで動作しています:

  • Linux Mint 17.3
  • Samsung Galaxy S5

これを試して:

  1. apt-get install mtpfs
  2. apt-get install mtp-tools
    • # yesは1行です(これはoptional
  3. Sudo mkdir -p /media/mtp/phone
  4. Sudo chmod 775 /media/mtp/phone
    • #個人的には、パーミッションをNO-eXecuteに制限します
    • #この時点では、マウントするのに十分なのかわかりません。
  5. 電話のmicro-USBとプラグインを取り外してから...
  6. Sudo mtpfs -o allow_other /media/mtp/phone
  7. ls -lt /media/mtp/phone

出力:

 total 0
 drwxrwxrwx 2 will will 0 Jan  1  1970 Card
 drwxrwxrwx 2 will will 0 Jan  1  1970 Phone
 drwxrwxrwx 2 will will 0 Jan  1  1970 Playlists
  1. ls -lt /media/mtp/phone/Card

出力:

 total 0
 drwxrwxrwx 2 will will 0 Jan  1  1970 Android
 drwxrwxrwx 2 will will 0 Jan  1  1970 DCIM
 drwxrwxrwx 2 will will 0 Jan  1  1970 LOST.DIR
 drwxrwxrwx 2 will will 0 Jan  1  1970 Music

Android電話でSDカードへのアクセスをリストします。 「Playlists」は、プレイリストを.m3uファイルとして含む「/ Playlists」という仮想ディレクトリです。 。 (man mtpfsごと)

これでうまくいくようです。覚えておくと便利なコマンド...

  • Sudo mtpfs -h ...は、デバイスのオプションをリストします。これは、デバイスをマウントする前にのみ機能するようです。したがって、おそらく最初に確認してください。
  • mtp-detect ...は、デバイスに関する多くのstuffを示します(mtp-toolsの一部)。

また、携帯電話/デバイス「on」が必要だと思います。スクリーンセーバーがあれば、それを開いてデバイスを接続できます。

USB-sが次のようにマウントされていることに気付きました。

  • / media/will /usbdrive

したがって、「mtp」スタブではなく、ユーザー名でマウントする方が合理的かもしれません。また、投稿を確認してください:「 buntuでMTP Androids SDカードをマウントする 」には、いくつかの有用な提案と追加があります。

参照:

私はこれらの2つの投稿からリードを取りました。

10
will

mountと入力します。すべてのアクティブなファイルシステムがリストされます。

10
waltinator

LG2電話を入手し、Xubuntu 15.10を実行しています。

これは、ユーザーの下でmntディレクトリにデバイスをマウントする方法です。

  1. まず、システムに次のパッケージがインストールされていることを確認してください。

    Sudo apt-get install jmtpfs mtp-tools
    
  2. 電話機をMTPデバイスとして接続し、端末で次のコマンドを入力します。

    mtp-detect
    
  3. ファイルuser_allow_other/etc/Fuse.confのコメントを外します。

  4. ホームディレクトリにディレクトリmntを作成します。

    mkdir mnt
    
  5. デバイスをマウントします。

    jmtpfs ~/mnt
    
  6. それでおしまい。これで、デバイスはステップ4で作成されたmntディレクトリの下にマウントされます。

注:不要な手順がいくつかある場合があります。しかし、上記の手順に従うとうまくいきました。

リファレンス: https://wiki.archlinux.org/index.php/MTP

8
Iron Heart

これは問題に対する直接的な答えではありませんが、それでも解決策です。

USB接続で不整合が発生した後、.gvfsとUSBシステムをまとめてバイパスしました。

Androidに簡単なFTPサーバーをインストールしました。 Nautilus/nemo/thunarからサーバーに接続し(選択した方法に応じて、ログインありまたはなしのftpのいずれか)、外に出ます。

フォルダの同期は、OwnCloudおよび/またはBitTorrentSyncを介して処理されます。

また、FTP over wirelessは、USB接続よりもはるかに高速です。

6
Nick Heywood

MTPは、FTPやSSHによく似たプロトコルです。ユーザーが要求したときにファイルを取得します。したがって、コンピューターにマウントされたファイルシステムはありません。

マウントされたファイルシステムのように表示するには、mtpfsを使用します。

mtpfs <a_folder_to_mount>

デバイスを指定する必要はありません。接続されているデバイスが1つだけの場合、あいまいさはありません。コンピューターに接続された複数のデバイスでテストしていません。

5
Krishnendu

端末を介してMTPロケーションに移動することを正確に知りません。しかし、内部ストレージ/ SDカードを右クリックして、「ターミナルで開く」オプションを選択できることがわかりました。そうすることで、場所がターミナルで直接開かれます。

4
Vikas Mohan

以下に記載されているgvfs-*コマンド(たとえばgvfs-cpgvfs-move、...)を使用して、MTP接続Androidデバイス上のファイルを管理できます。 ウィキペディアの記事GVfs

Androidデバイスとのファイル同期のための簡単なCLIユーティリティを作成しました。 https://github.com/DusanMadar/PySyncDroid

1
Dušan Maďar