
Wenn Geräte über KDEConnect zwischen Computer und Telefon gekoppelt wurden, ist es dann möglich, direkt über die Befehlszeile auf die SD-Karte und den internen Speicher des Telefons zuzugreifen?
Anwendungsfall:
Wenn Geräte gekoppelt wurden, möchte ich mit einem Skript automatisch Dateien vom Telefon (interner Speicher, externe SD-Karte) kopieren. Schritte:
- Geräte als gekoppelt festlegen
- Skript ausführen
Mit kdeconnect-cli
kann ich die Geräte-ID wie folgt ermitteln:
$ kdeconnect-cli --id-only -a
166ec0250e88ff2b
Aber hier kann ich nicht darauf zugreifen:
$ ls /run/user/1000/166ec0250e88ff2b/
ls: cannot access '/run/user/1000/166ec0250e88ff2b/': Permission denied
Berechtigungen:
[root@host]# ls -la /run/user/1000/
ls: cannot access '/run/user/1000/166ec0250e88ff2b': Permission denied
...
drwx------ 9 user user 380 Nov 17 11:57 .
drwxr-xr-x 3 user user 60 Nov 17 08:07 ..
d????????? ? ? ? ? ? 166ec0250e88ff2b
Wie greife ich auf das Dateisystem des internen und externen Speichers des Telefons zu?
$ ls -la /run/user/1000/166ec0250e88ff2b/storage
total 0
dr-x------ 1 user user 0 Jan 1 1970 0000-0000/
d--x------ 1 user user 0 Feb 6 1970 emulated/
d--x------ 1 user user 0 Sep 2 20:10 self/
$ ls -la /run/user/1000/166ec0250e88ff2b/storage/0000-0000/
ls: reading directory '/run/user/1000/166ec0250e88ff2b/storage/0000-0000/': Operation not permitted
total 0
Antwort1
Mconnectist eine KDE Connect-Protokollimplementierung in Vala/C, verfügbar übergithub.com. Es benötigt keine KDE-Bibliotheken und verfügt über einen Client, mit dem Sie Dateien einfach über die Befehlszeile teilen können, z. B. mit
mconnectctl share-file /org/mconnect/device/0 /path/to/file
Weitere Informationen finden Sie auf der verlinkten GitHub-Seite.
Sie sollten in der Lage sein, mconnectctl
zu testen, ob ein bestimmtes Gerät gekoppelt ist, z. B. für ein Telefon mit dem Namen „ Motorola Moto G Maciek
verbunden mit“ /org/mconnect/device/0
:
mconnectctl show-device /org/mconnect/device/0 | awk '/Motorola Moto G Maciek/{f=1}/Paired/{{if(f){g=1}}}f&&g{print $2;exit}'
Dies wird zurückgegeben true
, wenn es gepaart ist, und kann in einem Skript verwendet werden.