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

Linux Discussion :

Besoin d'aide sur une commande


Sujet :

Linux

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Besoin d'aide sur une commande
    Bonjour à tous,
    Completement néophyte dans le domaine Linux, j'aimerais savoir si une chose est possible.
    Je travaille dans un centre de formation et met à disposition des eleves a distance des dossiers comprenant leur cours via une platteforme dedibox geré sous fedora en passant par la console putty.
    chaque eleve possede un espace personel comprenant un dossier multimedia dans lequel sont copiés les dossiers via un lien dur.
    voici la ligne que j'utilise pour generer le lien /

    cp -l -r /home/audreco/multimedia/0000 /aud-xxx/multimedia

    je voulais savoir si je pouvais copier en une seule fois plusieur lien dur ?

    sachant que j'ai essayer de mettre les fichier à la suite, mais ça ne fonctionne pas et que je n'y connais rien en programetion de batch ou de shell...

    Merci d'avance pour votre aide.

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 587
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 470
    Points
    19 470
    Par défaut
    cp -l ne fait que copier des liens symboliques vers des liens symboliques au lieu de copier le fichier lié vers un fichier, et ne copie pas des fichiers vers des liens symboliques.

    La création de liens symboliques s'effectue via la commande ln -s /chem1/source /chem2/destination
    Les liens durs ne sont utilisés que par le système, jamais par les utilisateurs, même root.

    Tu peux avoir plusieurs sources (en utilisant les différents développements, et autres motifs génériques), mais qu'une seule destination.
    par exemple:
    cp ?ass* monRep/
    copiera
    casse-tête
    password

    vers monRep
    mais pas tracasseries, parce que
    Citation Envoyé par man bash
    * Correspond à toute chaîne, y compris la chaîne vide.
    ? Correspond à n'importe quel caractère
    ou alors il faut passer par une boucle...

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    ok
    sinon il faut genere une boucle et dire d'effectuer la boucle pour une liste de fichier donné ?
    comment peut on faire ça ?
    en tout cas merci pour les explication je comprend mieux le principe.
    en fait tu vois j'y connais vraiment rien. lol
    le fait est que par soucis d'economie de place , comme ce sont souvent les meme fichier qui sont copiers on ne fait que creer des liens vers ces ficiers (si j'ai bien tout compris)

  4. #4
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 587
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 470
    Points
    19 470
    Par défaut
    en fait, tout dépend comment est organisée l'arborescence à "copier", mais en gros:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for user in 0{0{1..9},{10..20}}; do
    #echo pour l'exemple :
       echo "ln -s /home/audreco/multimedia /aud-${user}/multimedia"
    done
    ...
    ?

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2010
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    super,
    merci je vais tenter ça.

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Points : 2 890
    Points
    2 890
    Par défaut
    Il y a quand même une différence notable entre la situation initiale avec les liens en dur et la solution avec les liens symboliques.
    Avec un lien symbolique, si la source du lien disparait, le contenu disparait physiquement et le lien ne sert plus à rien.
    Avec des liens en dur, le contenu ne disparait que si plus personne n'a plus aucun lien dessus.
    Autrement dit si un de ces fichiers est effacé à la source, avec les liens en dur les autres utilisateurs ne s'en rendront pas compte, alors qu'avec les liens symboliques, plus personne n'accédera au fichier. Ca peut être une bonne chose ou pas, mais il faut choisir en connaissance de cause.

    Les liens durs ne sont utilisés que par le système, jamais par les utilisateurs, même root.
    C'est un avis subjectif, car la doc des commandes ln ou cp n'indique aucune restriction de ce style. Libre à chacun d'utiliser les liens en dur quand ils sont utiles.

  7. #7
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 587
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 470
    Points
    19 470
    Par défaut
    Ah, ah ! donc debutant75013 avait raison de dire qu'il créait des liens en dur avec cp -l

    J'admet ne pas être très au clair avec les liens en dur : tant ls -l, que stat, ou readlink, ne permettent pas de les distinguer d'une simple copie...

    Citation Envoyé par estofilo
    Citation Envoyé par N_BaH
    Les liens durs ne sont utilisés que par le système, jamais par les utilisateurs, même root.
    C'est un avis subjectif, car la doc des commandes ln ou cp n'indique aucune restriction de ce style. Libre à chacun d'utiliser les liens en dur quand ils sont utiles.
    J'ai fait un amalgame avec :
    Citation Envoyé par man ln
    d, -F, --directory
    permettre au superutilisateur de créer des liens directs (« hard links ») sur des répertoires (note : ceci échouera probablement en raison de restrictions système même pour le superutilisateur)

  8. #8
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Points : 2 890
    Points
    2 890
    Par défaut
    ls -l permet de savoir, via le compteur de références, qu'un fichier a plusieurs exemplaires au contenu physiquement identique (=liens durs).
    Par exemple dans le /bin du système sur lequel j'écris
    $ ls -l bzip2
    -rwxr-xr-x 3 root root 30140 2008-11-10 12:51 bzip2
    le nombre 3 en 2ème colonne indique que ce fichier existe sous 3 références différences.
    Si je veux trouver les 2 autres, la méthode que je connais est de passer par le numéro d'inode (je ne sais pas s'il y a plus simple):
    $ ls -i bzip2
    671807 bzip2
    $ find . -inum 671807
    ./bzip2
    ./bzcat
    ./bunzip2
    Et voilà mes 3 fichiers qui n'en font qu'un au niveau du contenu. Le lien dur n'est pas une relation source->destination mais une relation d'équivalence de contenu.

  9. #9
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 587
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 470
    Points
    19 470
    Par défaut
    c'est un peu moins flou, je vais continuer de me documenter...

    Merci estofilo.

Discussions similaires

  1. [SQL] Besoin d'aide sur une requête
    Par Angath dans le forum Langage SQL
    Réponses: 2
    Dernier message: 17/01/2006, 16h26
  2. besoin d'aide sur une requette sql
    Par maxidoove dans le forum Langage SQL
    Réponses: 13
    Dernier message: 10/10/2005, 18h42
  3. Besoin d'aide sur une fonction
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 30/08/2005, 17h40
  4. Réponses: 1
    Dernier message: 03/08/2005, 11h41
  5. Besoin d'aide sur une requête (JOIN + COUNT ?)
    Par PanzerKunst dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/06/2005, 10h29

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