9 votes

Comment accéder aux comptes en ligne montés à partir du système de fichiers ?

J'ai ajouté mon Google Drive aux comptes en ligne comme indiqué dans la rubrique Comment accéder à votre compte Google Drive dans Ubuntu 18.04 LTS .

Il fonctionne bien à partir de l'interface graphique :

enter image description here

Mais comment puis-je y accéder par le biais du système de fichiers à partir de la ligne de commande ?


UPDATE : J'ai trouvé ça :

$ mount | grep gv
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)

$ cd /run/user/1000/gvfs/google-drive:host=gmail.com,user=butterworth.ray

$ ls -lgAFt
ls: cannot read symbolic link '1PhljWusfB-JWfKSu3xqzSzCOqztgDTEDWqfG3E2KioQ': Function not implemented
ls: cannot read symbolic link '12TmyqxUuLFQIktoec0Pe2ygDVPVx9YsDfi6tS2hAXFc': Function not implemented
ls: cannot read symbolic link '1uUnjOG172XdBQ1fLe6AbslNjsHiTK-IaUpzImwkwSbc': Function not implemented
...

total 0
lrw------- 1 ray 0 Jan 19 15:56 1IkBP3RVzCkMPO8UYI8LFyLo71rCOhbEirSMuS39GxUc
lrw------- 1 ray 0 Jan  5 10:06 1JkZJuIN4U-XwOLfKmYr3-0Y2KYQMQ_EmVrZPj1i1AMI
lrw------- 1 ray 0 Jun 15  2018 12TmyqxUuLFQIktoec0Pe2ygDVPVx9YsDfi6tS2hAXFc
drwx------ 1 ray 0 Jun 15  2018 1E3zpESlcc90ZmhjztC4HD22chifWHUkk/
lrw------- 1 ray 0 Jun 15  2018 1uUnjOG172XdBQ1fLe6AbslNjsHiTK-IaUpzImwkwSbc
lrw------- 1 ray 0 Jun 15  2018 1PhljWusfB-JWfKSu3xqzSzCOqztgDTEDWqfG3E2KioQ
...

Les entrées correspondent aux données Google-Drive, mais le système de fichiers les considère toutes comme de mauvais liens symboliques, à l'exception du sous-répertoire, qui contient à son tour de mauvais liens symboliques.


UPDATE 2 :

Properties box, showing parent folder as "google-drive://butterworth..."

Peut-être dois-je créer une entrée dans /etc/fstab ? Si c'est le cas, qu'est-ce qui conviendrait ?

3voto

Buddacow Points 41

En référence au moment où vous avez obtenu cette sortie de ls :

lrw------- 1 ray 0 Jan 19 15:56 1IkBP3RVzCkMPO8UYI8LFyLo71rCOhbEirSMuS39GxUc
lrw------- 1 ray 0 Jan  5 10:06 1JkZJuIN4U-XwOLfKmYr3-0Y2KYQMQ_EmVrZPj1i1AMI
lrw------- 1 ray 0 Jun 15  2018 12TmyqxUuLFQIktoec0Pe2ygDVPVx9YsDfi6tS2hAXFc
drwx------ 1 ray 0 Jun 15  2018 1E3zpESlcc90ZmhjztC4HD22chifWHUkk/
lrw------- 1 ray 0 Jun 15  2018 1uUnjOG172XdBQ1fLe6AbslNjsHiTK-IaUpzImwkwSbc
lrw------- 1 ray 0 Jun 15  2018 1PhljWusfB-JWfKSu3xqzSzCOqztgDTEDWqfG3E2KioQ

Il s'agit en fait des noms des fichiers et des répertoires de google drive eux-mêmes et c'est ainsi que google gère les données (utile pour le versionnement des fichiers et pour avoir plusieurs fichiers avec le même nom). Les noms lisibles par l'homme ne sont que des éléments de métadonnées associés à chaque fichier. Une fois que vous êtes dans votre répertoire google drive, vous pouvez utiliser la fonction gio pour afficher ces noms de fichiers lisibles par l'homme avec ceci :

gio list -d

Cela imprime ce que gnome appelle le display names de chaque fichier.

Juste man gio pour d'autres gio list des options comme --long , --hidden etc.

Dans cette page de manuel, vous trouverez également d'autres commandes gio pour manipuler vos fichiers cloud à partir d'un terminal. Malheureusement, je n'ai pas encore trouvé une bonne approche pour envelopper les commandes standard Shell autour des commandes gio pour une expérience plus transparente (comme la manière dont Google Drive File Stream ne fonctionne que lorsqu'on accède à des fichiers à partir d'un terminal sous Windows ou macOS). Je mettrai à jour cette réponse si je trouve une bonne solution.

Ceci dit, tout ceci est une tentative d'utiliser l'interface intégrée de Gnome pour les disques en nuage, car elle est très simple à configurer et semble bien fonctionner dans l'interface graphique de Nautilus. Mais il existe des alternatives telles que rclone y ocamlfuse qui fonctionnent tous deux assez bien, mais peuvent être difficiles à configurer, notamment en ce qui concerne l'optimisation de la vitesse.

1voto

artfulrobot Points 7887

Hmmm, je vois ce que tu veux dire.

Vous pouvez obtenir plus d'informations comme ça :

Tout d'abord, trouvez l'URL de base de votre lecteur google comme ceci :

BASE_URL=`gio mount -li | egrep '^Mount.*google-drive' | sed 's/.*> //'`

Le mien est comme : google-drive://xxx_my_address_xxx@gmail.com/ .

Vous pouvez alors utiliser gio à nouveau pour lister les propriétés comme ceci :

$ gio list -a 'standard::display-name' "$BASE_URL"
1t1221oLkvviV7UXqBjXmWKipT_w    0   (shortcut)  standard::display-name=Swifty14
1h332234_ZoCetVVCpwbdzoeh1_Y    0   (shortcut)  standard::display-name=Holls 2016

Je veux dire que ce n'est toujours pas joli mais ça vous mène quelque part ! Cela nettoie un peu :

$ gio list -a 'standard::display-name' "$BASE_URL" | awk '{print $1 "\t" $4}' | sed 's/standard::display-name=//'
1t1221oLkvviV7UXqBjXmWKipT_w    Swifty14
1h332234_ZoCetVVCpwbdzoeh1_Y    Holls 2016

0voto

24601 Points 7082

Puisque vous pouvez utiliser l'interface utilisateur, pourquoi ne pas essayer d'ouvrir votre google-drive et de sélectionner un fichier aléatoire en faisant un clic droit dessus et en allant dans Propriétés qui affichera l'emplacement du dossier parent :

enter image description here

Ces informations peuvent ensuite être utilisées dans le terminal pour y accéder à partir de la ligne de commande.

enter image description here

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X