IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

[chmod] Remettre les droits par défaut


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 181
    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.

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 265
    Par défaut
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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..

  3. #3
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 181
    Par défaut
    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).

  4. #4
    Membre émérite Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Par défaut
    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/

  5. #5
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    181
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 181
    Par défaut
    Merci beaucoup BlaireauOne, tout est rentré dans l'ordre !
    Vraiment pas mal cette ligne de commande... merci pour la doc aussi...

  6. #6
    Candidat au Club
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Mars 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Assistant aux utilisateurs

    Informations forums :
    Inscription : Mars 2016
    Messages : 2
    Par défaut
    Heylo un peu tard mais ça peut tjs servir aux autres ^^

    chmod -rwx -R /chemin
    chmod u=rwX -R /chemin
    chmod go=rX -R /chemin

    supprimer les droits
    ajouter droit lecture/écriture + exécution sur les répertoires
    ajouter droit lecture + exécution sur les répertoires

    Bon dans le sens ou tu souhaites retrouver 755 pour les rep et 644 pour les fichiers. En ce qui concernent les droits spéciaux ...

  7. #7
    Expert confirmé
    Homme Profil pro
    Développeur informatique en retraite
    Inscrit en
    Avril 2008
    Messages
    2 103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique en retraite

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 103
    Par défaut
    Citation Envoyé par BlaireauOne Voir le message
    Si tu as des noms de fichiers avec des "blancs", syntaxe :

    find . -type f -print0 | xargs -0 -n1 chmod 664
    Y a-t-il une bonne raison d'utiliser "| xargs" plutôt que "-exec"?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    find . -type d -exec chmod 775 {} +
    find . -type f -exec chmod 664 {} +

  8. #8
    Membre confirmé Avatar de wh6b.
    Homme Profil pro
    Nicolas Vergnes
    Inscrit en
    Avril 2017
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Nicolas Vergnes
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2017
    Messages : 17
    Par défaut
    Tu as plus de fonctionnalités avec xargs qu'avec le -exec de find
    Si tu as besoin de réaliser plusieurs actions sur chaque élément, une autre possibilité est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    while read fichier; do
      echo Je fais faire des super trucs avec "$fichier"
      # pleins de super actions
      ...
    done < <(find /un/repertoire/ )
    Ne pas faire la commande suivante car des commandes (comme return par exemple) ne fonctionneront pas bien dans la boucle while
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    find /un/repertoire/  | while read fichier; do
      echo A eviter
      ...
    done

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Reinitialiser les droits par défaut sur les dossiers de Linx
    Par digital prophecy dans le forum Administration système
    Réponses: 1
    Dernier message: 02/11/2009, 09h48
  2. Remettre tous les icônes par défaut
    Par koKoTis dans le forum Windows XP
    Réponses: 4
    Dernier message: 19/12/2006, 19h38
  3. Problème avec les valeurs par défaut
    Par Steph Ace dans le forum Requêtes
    Réponses: 3
    Dernier message: 12/12/2005, 09h55
  4. Restaurer les paramètres par défaut au démarrage
    Par Manu14400 dans le forum Access
    Réponses: 1
    Dernier message: 22/09/2005, 15h21
  5. Réponses: 9
    Dernier message: 13/06/2005, 17h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo