Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2007, 20h42   #1
Membre actif
 
Étudiant
Inscription : avril 2007
Messages : 181
Détails du profil
Informations personnelles :
Âge : 24
Localisation : Canada

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2007
Messages : 181
Points : 195
Points : 195
Par défaut [chmod] Remettre les droits par défaut

Bonjour,

Par défaut les droits appliqués sont -rw-r--r-- (644) sur les fichiers et drwx-r-xr-x (755) sur les répertoires.

Mais dans le cadre d'un projet, je dois transférer des fichiers depuis un poste windows, via une clef USB.
Quand je copie les données sur mon Linux, le chmod est de 600 sur les fichiers et sur les dossiers.

Déjà, est-ce normal ? Vu que les clefs USB sont formatées en FAT-16, et donc ne gèrent pas les droits, le système n'est-il pas censé appliquer les droits par défaut sur les fichiers lors du transfert ?

Et comment faire pour remettre les droits par défaut sur toute une arborescence ?
Si je fais un
c'est OK pour les dossiers, mais tous les fichiers sont exécutables, ce qui n'est pas très malin...
Et si je fais un
Je ne peux plus accéder aux dossiers, et ça me met un ?--------- sur tous les sous dossiers et leur contenu.
Jusqu'à présent j'étais contraint de remettre les droits en procédant dossier par dossier, ce qui est assez fastidieux.
Mais cette fois-ci j'ai beaucoup plus de données et je ne vais pas continuer à tout faire à la main.
N'y a t-il pas une ligne de commande qui puisse automatiser tout ça ?

Merci.
Haze. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 20h55   #2
Membre confirmé
 
Inscription : février 2007
Messages : 265
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : février 2007
Messages : 265
Points : 266
Points : 266
salut,
je ne sais pas trop par contre si le problème est que tous tes fichiers sont executables alors tu peux faire ton suivi d'un
Code :
chmod -R a-x *.extension_de_tes_fichiers
A priori je suppose que tu n'as pas énormément d'extensions différentes donc ca ne sera pas trop fastidieux.. Après tu met ces deux lignes dans un fichier comme ca tu ne retape pas tout a chaque fois. Il te faudra executer le fichier à chaque fois mais bon c un moindre mal.

J'espère que ca peut t'aider..
jln13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 22h02   #3
Membre actif
 
Étudiant
Inscription : avril 2007
Messages : 181
Détails du profil
Informations personnelles :
Âge : 24
Localisation : Canada

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2007
Messages : 181
Points : 195
Points : 195
Merci pour ton aide. Mais malheureusement la commande ne marche pas récursivement, malgré l'option -R.

Je ne comprends pas pourquoi, mais seuls les fichiers du répertoire courant sont traités (j'ai vérifié à plusieurs reprises avec le mode verbose).
Haze. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 22h33   #4
Membre expérimenté
 
Avatar de BlaireauOne
 
Inscription : mars 2007
Messages : 469
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2007
Messages : 469
Points : 576
Points : 576
Citation:
Envoyé par Haze.
Bonjour,

Par défaut les droits appliqués sont -rw-r--r-- (644) sur les fichiers et drwx-r-xr-x (755) sur les répertoires.

N'y a t-il pas une ligne de commande qui puisse automatiser tout ça ?

Merci.

Une solution :

http://pwet.fr/man/linux/commandes/find
http://pwet.fr/man/linux/commandes/xargs

Parcours de toute l'arborescence à partir du répertoire courant . avec sélection de tous les répertoires dir :
find . -type d -print | xargs chmod 775

Parcours de toute l'arborescence à partir du répertoire courant . avec sélection de tous les fichiers file :
find . -type f -print | xargs chmod 664


Si tu as des noms de fichiers avec des "blancs", syntaxe :

find . -type f -print0 | xargs -0 -n1 chmod 664

http://www.unixreview.com/documents/s=8274/sam0306g/
BlaireauOne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2007, 22h58   #5
Membre actif
 
Étudiant
Inscription : avril 2007
Messages : 181
Détails du profil
Informations personnelles :
Âge : 24
Localisation : Canada

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : avril 2007
Messages : 181
Points : 195
Points : 195
Merci beaucoup BlaireauOne, tout est rentré dans l'ordre !
Vraiment pas mal cette ligne de commande... merci pour la doc aussi...
Haze. est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h41.


 
 
 
 
Partenaires

Hébergement Web