web-dev-qa-db-ja.com

Ubuntu 13.04でGoogle Nexusを接続できません

12.10から13.04にアップグレードした後、Google NexusをUbuntuマシンに接続すると問題が発生します。

私はこのスクリプトをインターネット上のどこかで見つけましたが、今は動かないようです:

#!/bin/bash

if [ `lsusb |grep Google |wc -l` == 0 ]; then
    echo "plug in the device"
    exit 1
fi

if [ `dpkg -l mtpfs |wc -l` == "0" ]; then
    Sudo apt-get update && Sudo apt-get install mtpfs
fi

rules_file=/etc/udev/rules.d/60-Android.rules
if [ ! -f $rules_file ]; then
    vp=`lsusb|grep Google|cut -d " " -f 6`
    vendor=`echo $vp | cut -d ':' -f 1`
    product=`echo $vp | cut -d ':' -f 2`
    rule="SUBSYSTEM==\"usb\", ATTR{idVendor}==\"$vendor\", ATTR{idProduct}==\"$product\", MODE=\"0600\", GROUP=\"plugdev\" OWNER=\"$USER\""
    Sudo bash -c "echo $rule > $rules_file"
fi  

mount_point=/media/nexus
if [ ! -d $mount_point ]; then
    Sudo mkdir $mount_point
    Sudo chmod 775 $mount_point
fi  
Sudo mtpfs -o allow_other $mount_point

それを起動した後、私は得る:

Unable to open ~/.mtpz-data for reading, MTPZ disabled.Listing raw device(s)
Device 0 (VID=xxxx and PID=yyyy) is a Google Inc (for LG Electronics/Samsung) Nexus 4/10 (MTP).
   Found 1 device(s):
   Google Inc (for LG Electronics/Samsung): Nexus 4/10 (MTP) (xxxx:yyyy) @ bus 2, dev 4
Attempting to connect device
ignoring libusb_claim_interface() = -6PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
Android device detected, assigning default bug flags
Error 1: Get Storage information failed.
Error 2: PTP Layer error 02fe: get_handles_recursively(): could not get object handles.
Error 2: Error 02fe: PTP: Protocol error, data expected
Listing File Information on Device with name: (NULL)
LIBMTP_Get_Storage() failed:-1
2
Patryk

MTPを更新してみてください?

Sudo add-apt-repository ppa:langdalepl/gvfs-mtp
Sudo apt-get update

次に、Software Updater(以前はUpdate Managerと呼ばれていました)を起動し、利用可能な更新をインストールします

1
Mihai

13.04では、外部スクリプトを使用する必要はありません。また、とにかくmtpfs自体はNexus 4のような最新のAndroidデバイスでは動作しません。

NautilusでデフォルトのUnityデスクトップを使用していると仮定すると、デバイスを接続するだけで十分であり、Nautilusに表示され、デバイスを参照したりファイルをコピーしたりできます。

通常のアプリケーションがデバイス上のファイルを直接開くことができるように、ファイルへのフルアクセスを取得する場合は、 here のように、新しいバージョンのgvfsが必要です。

0
langdalepl