dimanche 26 juin 2011

t'as pas le droit!

L'autre jour j'ai fais des transferts à travers le réseau locale vers mon dossier publique. C'est pratique, mais si la source provient d'un système Windows qui donc ne gère pas les droits, vous vous retrouverez avec des petits cadenas qui vous interdisent de les supprimer. Ils appartiennent à l'utilisateur "nobody" qui lui même appartient au groupe "nogroup"en tant qu'utilisateur "benjamin" (bah quoi je m'appelle comme ça!) je n'ai pas le droit de les supprimer. Il faut donc changer l'utilisateur de ces fichiers. Comme d'hab un petit tour dans le terminal:
ls -l (et vous verrez l'utilisateur et le groupe)
sudo chown -hR benjamin:benjamin /home/benjamin/Public/
ls -l (et vous verrez la difference)

Maintenant les fichiers sont bien à nous maintenant on peut décider de ce que l'on peu en faire. Lors du premier ls -l en début de ligne il y a une suite de caractères qui se suit, ici:
dr-xrwxr-x
qu'est ce que cette série de lettres veut dire?
-la première renseigne sur la nature de l'objet (d pour répertoire, - pour un fichier et l pour un lien)
-les 3 suivantes représentent les permissions du propriétaire (r pour lecture w pour écriture et x pour exécution si il s'agit d'un programme, si c'est un dossier on peu entrer dedans)
-les 3 suivants représentent les permissions du groupe
-les 3 derniers ceux du reste du monde
donc ici j'ai le droit d'écriture au niveau du groupe mais je n'ai pas le droit d'écrire sur ces fichiers, en tant que propriétaire. donc je ne peux toujours pas les déplacer! contraignant non? bon je présume qu'il y a une bonne raison mais dans mon cas je m'en fou un peu. Cependant je vais essayer de les changer et pas avec un chmod 777!
La fonction chmod permet de changer les permissions. Le premier chiffre représente le proprio le deusième le groupe et le dernier les autres. read vaut 4, write vaut 2, exécuter vaut 1 et aucun droit c'est 0. pour mon cas je veux les pleins pouvoirs sur mes fichiers donc 4+2+1 => 7, je veux bien partager avec mon groupe mais je ne veux pas qu'il me le modifie donc 4+0+1 => 5, et pour le reste du monde peut se brosser avec 0+0+0 => 0 =. J'obtiens donc la série 750 que je veux appliquer récursivement avec la commande suivante
chmod -R 750 /home/benjamin/Public
pour après transfert le remettre si je veux qu'il soit publique à
chmod 777 ~/Public

plus d'info sur comment sont automatiquement délivrés les droits sont disponibles sur là bas

Aucun commentaire:

Enregistrer un commentaire