Jump to content

Media Transfer Protocol (Magyar)

From ArchWiki
Fordítás állapota: Ez az oldal az angol Media Transfer Protocol című oldal magyar nyelvre lefordított változata. Utolsó fordítás dátuma: 2026.03.31. Amennyiben a lefordítás időpontja óta az angol nyelvű oldalon történtek újabb módosítások, akkor Ön segíthet hozzászinkronizálni az angolhoz ezt a magyar nyelvű fordítást.

A Media Transfer Protocol (MTP protokoll) felhasználható médiafájlok átvitelére sok mobiltelefon (minden Windows Phone 7/8/10 készülék, a legtöbb újabb Android készülék) és médialejátszó (pl. Creative Zen) között.

Csatlakoztatás

Az MTP protokollt felhasználva, a számítógéphez a következőképpen lehet hozzácsatlakoztatni a készüléket:

  • A készüléket USB vezeték segítségével kell hozzácsatlakoztatni a számítógéphez.
  • Az MTP protokollt engedélyezni kell a készüléken.
  • A készülék képernyőjét fel kell oldani (biztonsági okok miatt).

FUSE fájlrendszerek

A következő programok lehetővé teszik azt, hogy Ön MTP készülékeket érjen el FUSE fájlrendszeren keresztül.

Megjegyzés Az MTP zavaros, és a implementációja készülékenként eltérő. Próbálja ki az alábbi kliensprogramokat, és nézze meg, hogy melyik működik a legjobban az Ön székülékével.
Tipp Az MTP protokollal kapcsolatos szoftvercsomagok feltelepítése után ajánlott újraindítani a számítógépet.

A FUSE-alapú fájlrendszerek esetében előfordulhat, hogy először létre kell hozni a csatolási pont könyvtárát. Az alábbi példákban a ~/mnt könyvtárat használjuk.

A FUSE felcsatolások általában a fusermount -u felcsatolási pont paranccsal választhatók le a fájlrendszerünkről.

Android File Transfer

Android File Transfer — MTP kliensprogram. Parancssori felülettel, Qt grafikus felülettel, és FUSE szoftvercsomaggal rendelkezik, amely egy egyedi MTP implementációt használ.

https://whoozle.github.io/android-file-transfer-linux/ || android-file-transfer

Csatolja fel az Ön készülékét a ~/mnt könyvtárba:

$ aft-mtp-mount ~/mnt

Futtassa a fenti parancsot, hogy az album borítója megjelenjen, az album neve albumart.xxx legyen, és elsőként kerüljön a célkönyvtárba. Ezután másolja a többi fájlt. Vegye figyelembe, hogy a fuse akár 7–8-szor lassabb lehet, mint a grafikus vagy parancssori fájlátvitel.

Ha a parancssori felületen keresztül szeretne vele dolgozni, futtassa a következő parancsot:

$ aft-mtp-cli

Parancssorban Ön írja be a help parancsot az összes elérhető parancs kilistázása érdekében, illetve az exit parancsot a kilépés érdekében.

Ha Ön a grafikus felhasználói felületen keresztül szeretne vele dolgozni, akkor indítsa el az android-file-transfer alkalmazást, válasszon ki egy célkönyvtárat, majd kattintson a menüsor bármely gombjára. Az elérhető lehetőségek: Upload Album, Upload Directory és Upload Files. Az utóbbi kettő magától értetődő. Az Upload Album a forráskönyvtárban keresi meg az albumborítókat, és beállítja a legjobb elérhető borítót.

MTPfs

MTPfs — A libmtp alapján működő FUSE fájlrendszer, amely támogatja a bármely MTP készülékről történő olvasást és írást.

https://www.adebenham.com/mtpfs/ || mtpfs
Megjegyzés A következő valószínűleg nem fog működni, és előfordulhat, hogy Önnek a libgphoto2 használatára vagy egy gvfs fájlrendszert támogató fájlkezelőre, például a PCManFM fájlkezelőre kell hagyatkoznia.

Először szerkessze a /etc/fuse.conf fájlt, vegye ki a megjegyzést a következő sor elől:

user_allow_other

Majd csatolja fel az Ön készülékét a ~/mnt könyvtárba:

$ mtpfs -o allow_other ~/mnt

jmtpfs

jmtpfs — A libmtp alapján az MTP (Media Transfer Protocol) készülékek eléréséhez.

https://github.com/JasonFerrara/jmtpfs || jmtpfsAUR

Csatolja fel a készüléket a ~/mnt könyvtárba:

$ jmtpfs ~/mnt

Illessze a Linux többi részéhez (használja a szokásos mount/umount parancsokat) kettő lépésben:

$# ln -s <actual mount command's path/name>  <a name consistent with Linux's mount convention>
$  ln -s /sbin/jmtpfs                        /sbin/mount.jmtpfs

Adja hozzá ezt az /etc/fstab fájlhoz:

 #jmtpfs <mount path>        fuse nodev,allow_other,<other options>                             0    0
  jmtpfs /home/sam/run/motog fuse nodev,allow_other,rw,user,noauto,noatime,uid=1000,gid=1000    0    0

Végül, csatolja fel a készüléket, és ellenőrizze, hogy az opciók "érvényesültek-e" :

 $ mount /home/sam/run/motog
 Device 0 (VID=22b8 and PID=2e82) is a Motorola Moto G (ID2).
 Android device detected, assigning default bug flags
 $ mount 
  ...
  jmtpfs on /home/sam/run/motog type fuse.jmtpfs (rw,nosuid,nodev,noexec,noatime,user_id=1000,group_id=1000,allow_other,user=sam)

SIMPLE-MTPFS

SIMPLE-MTPFS — A libmtp alapú Simple Media Transfer Protocol FileSystem egy olyan fájlrendszer, amely képes a helyi számítógéphez USB vezeték segítségével csatalakoztatott MTP készülékeken lévő fájlok kezelésére.

https://github.com/phatina/simple-mtpfs/ || simple-mtpfsAUR

Az észlelt készülékek kilistázása érdekében Ön futtassa a simple-mtpfs -l parancsot.

Annak érdekében, hogy a listából az első készülék a ~/mnt könyvtárba fel legyen csatolva, Ön futtassa a simple-mtpfs --device 1 ~/mnt parancsot.

go-mtpfs

go-mtpfs — Egy FUSE fájlrendszer egyedi MTP implementációval. Go programozási nyelven lett megírva.

https://github.com/hanwen/go-mtpfs || go-mtpfs-gitAUR

Telepítse fel a számítógépre az android-udev szoftvercsomagot, amely lehetővé teszi a /etc/udev/rules.d/51-android.rules fájl szerkesztését, és az Ön idVendor valamint idProduct értékeinek alkalmazását, amelyeket Ön az mtp-detect futtatása után láthat. A sor végére adja hozzá az Ön felhasználóját: OWNER="ide az Ön felhasználója kerül".

Csatolja fel a készüléket a ~/mnt könyvtárba:

$ go-mtpfs ~/mnt
Megjegyzés
  • Ha Ön több készüléket is használ, akkor érdemes a -d kapcsolót használni egy bizonyos készülék megadása érdekében. (Ennek az egy bizonyos készüléknek az azonosítóját az mtp-detect futtatásával lehet megtalálni).
  • Ha külső SD-kártya van jelen, akkor a go-mtpfs használatával történő felcsatolás sikertelen lehet. Ha Ön SD-kártyával próbálja elérni a készüléket, és a go-mtpfs hibát jelez, akkor próbálja meg eltávolítani az SD-kártyát, majd újból próbálja meg a felcsatolási műveletet végrehajtani.
  • Ez a szoftvercsomag 2020 óta nincs karbantartva.

libmtp

A libmtp egy MTP implementációt nyújtó függvénykönyvtár, amely néhány például szolgáló parancssori programmal is érkezik. (Ezeket a programokat Ön felsorolhatja a pacman -Ql libmtp parancs segítségével).

Telepítse fel a számítógépre a libmtp szoftvercsomagot.

Futtassa az mtp-detect parancsot a készülék felismerése érdekében.

Amennyiben Ön hibát kap vissza, akkor győződjön meg róla, hogy az Ön felhasználója tagja az adbusers felhasználói csoportnak.

A libmtp tulajdonképpen függvénykönyvtárként való felhasználásra szolgál, nem végfelhasználók számár lett kitalálva. Az mtp-detect parancson kívül a többi parancssori program a mindennapi munkához valószínűleg szükségtelen. A fejlesztő ezeket a programokat csak példaként említi. Úgymint például 2025 januárjában a README fájl 115–138. sorainál. Konkrétabb példáért tekintse meg a régi, de szemléltető Fájl másolása MTP készülékről libmtp használatával (USB vezetéken keresztül) című javaslatot. Ajánlott egy front end program használata.

Front end programok

gMTP — Egy grafikus felhasználói felülettel rendelkező front end program a libmtp számára. Lehetővé teszi Android készülékek felcsatlakoztatását és a fájlok kezelését asztali környezetfüggetlen grafikus felületen.

https://gmtp.sourceforge.io/ || gmtp

Médialejátszók

Ön a saját MTP készülékét használhatja zenelejátszókkal együtt, például az Amarok zenelejátszó programmal együtt is. A felhasználás érdekében előfordulhat, hogy Önnek szerkesztenie kell a /etc/udev/rules.d/51-android.rules fájlt. (Az alábbi példában használt MTP készülék egy Galaxy Nexus mobiltelefon). Parancssorban futtassa a következő parancsot:

$ lsusb

Keresse meg az Ön saját készülékét. Valószínűleg valami ilyesmi lesz:

Bus 003 Device 011: ID 04e8:6860 Samsung Electronics Co., Ltd GT-I9100 Phone [Galaxy S II], GT-P7500 [Galaxy Tab 10.1]

Továbbá, a /etc/udev/rules.d/51-android.rules fájlba belekerülő bejegyzés így fog kinézni:

SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0666", OWNER="[username]"

Töltse be újra az udev szabályokat is:

# udevadm control --reload

Fájlkezelő integrációja

Ön a saját Android készülékében lévő tárhely tartalmát megtekintheti (MTP protokollon keresztül) a fájlkezelőben a megfelelő bővítmény feltelepítésével:

  • Azokhoz a fájlkezelőkhöz, amelyek GVFS fájlrendszert használnak (GNOME Files), telepítse fel a számítógépre a gvfs-mtp szoftvercsomagot MTP protokollhoz vagy a gvfs-gphoto2 szoftvercsomagot telepítse fel a PTP protokoll támogatásához.
  • Azokhoz a fájlkezelőkhöz, amelyek KIO (KDE Input/Output) keretrendszert használnak (KDE Dolphin), az MTP támogatás a kio-extras szoftvercsomagban található (a dolphin szoftvercsomag-függősége).

A szükséges szoftvercsomag számítógépre történő feltelepítése után a készüléknek automatikusan meg kell jelennie a fájlkezelőben, és elérhetővé válik egy URL címen keresztül, például mtp://[usb:002,013]/.

gvfs-mtp

This article or section is a candidate for merging with udev.

Notes: please use the second argument of the template to provide more detailed indications. (Discuss in Talk:Media Transfer Protocol (Magyar))

A gvfs-mtp szoftvercsomag elérhető a hivatalos szoftvercsomag-tárolókban.

Az lsusb használatával információt kaphat az Ön saját készülékéről, ahol a Bus és Device számok a gvfs-mtp-vel és az készülékazonosítóval együtt felhasználhatók egy udev szabály létrehozásához.

Bus 002 Device 018: ID 04b7:88a9 Compal Electronics, Inc.

Az MTP protokollt használó készülékek megtekintése érdekében Ön

használja a gio mount lehetőséget:

gio mount -li | grep -e ^Volume -e activation_root
Volume(0): MT65xx Android Phone
  activation_root=mtp://[usb:002,018]/

Használja az lsusb programot:

lsusb -v 2> /dev/null | grep -e Bus -e iInterface -e bInterfaceProtocol
...
Bus 002 Device 018: ID 04b7:88a9 Compal Electronics, Inc. 
      bInterfaceProtocol      0 
      iInterface              5 MTP
...

Az összes elérhető, csatlakoztatott MTP készülék felcsatolása érdekében Ön használjon inline szkriptet:

gio mount -li | awk -F= '{if(index($2,"mtp") == 1)system("gio mount "$2)}'

A gvfs-mtp parancs használatával (a Bus és Device számok segítségével) fel lehet csatolni vagy le lehet választani az készüléket. Például a felcsatolás érdekében: gio mount mtp://[usb:001,007]/, a leválasztás érdekében pedig: gio mount -u mtp://[usb:001,007]/. A felcsatolt készülék egy olyan könyvtárban lesz elérhető, amely mtp:host= előtaggal kezdődik, és a /run/user/$UID/gvfs/ alatt található.

Az MTP készülékek automatikus felcsatolódásának letiltása érekében, Önnek a gvfs használatával módosítania kell az AutoMount változó értékét true szövegről false szövegre. A változó a /usr/share/gvfs/mounts/mtp.mount fájlban található.

Megjegyzés A fájlkezelő programoknak lehetnek saját beállításaik az automatikus felcsatolás érdekében. Induláskor ellenőrzik az összes elérhető, felcsatolható készüléket.

Amennyiben az Ön készüléke nem jelenik meg a fájlkezelőben, akkor a #libmtp nem rendelkezik natív támogatással, és jelenleg nem szerepel a támogatott készülékek listájában. Ha parancssorból próbálja meg felcsatolni, akkor Ön hibát is kaphat.

Device 0 (VID=XXXX and PID=XXXX) is UNKNOWN.
Please report this VID/PID and the device model to the libmtp development team

Egy udev szabályt kell megírni a készülékhez annak érdekében, hogy maga a készülék megjelenjen a fájlkezelőben. Ám nincs garancia arra, hogy MTP protokollon keresztül Ön majd fel is tudja csatolni a készüléket.

Használja az azonosítószámot, amelyet a vendorId:productID minta képvisel, például 04b7:88a9, és hozzon létre egy udev szabályt beállításfájl létrehozásával.

/etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="04b7", ATTR{idProduct}=="88a9", MODE="0660", GROUP="uucp", ENV{ID_MTP_DEVICE}="1", SYMLINK+="libmtp"

Töltse újra az udev szabályokat.

# udevadm control --reload

A gvfs támogatással rendelkező fájlkezelők képesek megjeleníteni és felcsatolni az MTP készülékeket, amennyiben a #libmtp támogatja őket. Ha azonban nincs támogatás, és a készülék nem nyitható meg, akkor a telefon beállításait PTP protokollra kell változtatni, valamint telepíteni kell a gvfs-gphoto2 szoftvercsomagot, annak érdekében, hogy Ön legalább a fényképekhez hozzáférjen a készüléken. A PTP parancssorban történő felcsatolása némileg hasonlít az MTP készülékek felcsatolásához: gio mount gphoto2://[usb:002,019]/.

Megjegyzés Amennyiben Ön csak korlátozott hozzáférést kap a készülékhez, és nem tudja használni a szokásos parancssori utasításokat (például a cp vagy ls), akkor keresse meg a gvfs saját alternatíváit: ls -1 /usr/bin/gvfs-* .

Hibaelhárítás

libmtp (gvfs-mtp): A fájlkezelő (nautilus, pcmanfm, vifm stb.) lefagy az Android készülék DCIM/Camera könyvtárának az elérésekor

Tünetek: Minden rendben működik egészen addig, amíg Ön be nem lép a DCIM/Camera könyvtárba. Ilyenkor a fájlkezelő lefagy, és Ön még parancssorból sem tudja lefuttatni az ls parancsot azon a könyvtáron.

Ez a probléma nagyon valószínű, hogy a libmtp függvénykönyvtár miatt fordul elő.

Úgy tűnik, hogy ezt egy olyan fájl okozza, amelynek neve hasonló a 20180915_180351(0).jpg névhez. Például a Samsung telefonok gyakran hoznak létre ilyen nevű fájlokat.

Több, a hibával kapcsolatos jelentés (egy, kettő stb.) és kérdés (egy, kettő) foglalkozik a hibával.

Lehetséges kerülőmegoldás, hogy Ön más MTP opciót használ a #FUSE fájlrendszerek közül. Például Ön a go-mtpfs fájlrendszert használja az ilyen könyvtárakhoz, vagy valamilyen módon megváltoztatja a telefon kamerájának fájlnévképzési szabályait (vagy áttér egy másik kameraalkalmazásra, például az Open Camera alkalmazásra).

jmtpfs: Input/output hiba az első hozzáféréskor

Tünetek: A jmtpfs sikeresen felcsatolódik, de Ön amint megpróbálja elérni a készüléken lévő fájlokat (például ls segítségével), rögtön hiba jelentkezik:

 cannot access <mount-point>: Input/output error

Ez a hiba valójában biztonsági funkciónak tűnik: Amikor a telefon lezáródik a zárolóképernyővel, akkor az MTP nem működik. Oldja fel a telefont, és ismét működni fog a kommunikáció,amíg a kábel csatlakoztatva marad.

kio-mtp: Nem lehet használni az "Open with File Manager" műveletet

Amennyiben Ön nem tudja használni az "Open with File Manager" műveletet, akkor a problémát megkerülheti a /usr/share/solid/actions/solid_mtp.desktop fájl szerkesztésével.

Módosítsa az Exec=kioclient exec mtp:udi=%i/ sort az Exec=dolphin "mtp:/" sorra.

A kio-mtp egyidejű hívása különböző szolgáltatások által

Kerülni kell az mtpfs és a kio-mtp párhuzamos használatát. Továbbá, ahogyan az említve van ebben a fórumban, kerülni kell a kio-mtp protokollokat használó, de közben ütközésben lévő szolgáltatások használatát (beleértve a zenelejátszókat is).

Az Amarok MTP szolgáltatásokhoz tartozó bővítménye például megakadályozhatja, hogy a Dolphin (plasma) hozzáférjen különböző telefonmodellek fájljaihoz. Legalább egy felhasználónál megoldást jelentett a bővítmény kikapcsolása.