Bonjour, je veux créer de liens matériels mais heu en fait ln, bah... il redirige sur cp apparemment
Version imprimable
Bonjour, je veux créer de liens matériels mais heu en fait ln, bah... il redirige sur cp apparemment
Bonjour,
quelle commande entres-tu ?
qu'affiche la commande type ln ?
Bonjour
Pour être certain que tu n'utilises pas un malencontreux alias, remplace "ln" par "\ln". Et vérifie la suggestion de N_Bah.
Accessoirement le vrai ln , soit il fait le boulot, soit il ne le fait pas mais il ne redirige pas sur cp...
que répond
Code:
1
2 type ln
Bonjour,
De base, ln fait un lien physique, c'est a dire que tu verras deux fichiers, mais il n'y en a en realite qu'un seul sur le disque dur. Cette notion n'existe pas sous Windows. Tu peux le voir avec ls -li, qui t'affiche le numero d'inode : si c'est le meme, c'est que tu as un lien physique.
Pour faire un lien symbolique, comme sous windows, il faut utiliser l'option -s
Il existe une notion similaire sous windows mais elle est peu utilisée
http://netensis.net/windows:fichiers:hardlinks
Il y a aussi le 2° champ du ls -l (juste après les rwxrwxrwx) qui donne le nombre de liens associés au fichier. Généralement il est à 1 mais si on commence à en créer, on verra ce nombre monter à 2, 3, 4...
Et pour les dossiers, ce nombre comptabilise le nombre de sous-dossiers contenus dans le dossier en question (en n'oubliant pas les sous-dossiers "." et ".." qui sont inhérent à chaque dossier Unix)
Si on veut trouver tous les liens d'un fichier particulier, alors on chope son n° d'inode (avec ls -i effectivement) puis suffit de faire un find /repertoire_de_base_de_la_partition -inum le_no_d_inode -printEn relisant tout ce topic je pense que tu vois un second fichier apparaitre alors tu crois que c'est un cp mais en fait il s'agit d'un second nom associé au même contenu disque. Bref ton ln fonctionne en fait
Joli. Je ne connaissais pas. :applo:
type ln m'affiche ça :C'est bon signe?Code:ln is /bin/ln
Note : je veux bien créer des liens physiques
C'est parfait.
Comme je l'ai dit, si tu crées un fichier "toto" et que tu tapes ln toto titi, tu vois un second fichier apparaitre. Tu peux donc croire que tu n'as fait qu'une simple copie mais en réalité, tu as bien créé un lien physique.
Visuellement il y a une différence car si tu fais un ls -l toto titi, tu verras un petit "2" juste après les droits rwxrwxrwx (si tu fais une simple copie, tu verras un "1"). Et si, comme l'a dit gangsoleil, tu fais un ls -i toto titi tu verras que le premier chiffre (le n° d'inode) est le même pour les deux (deux fichiers copiés ont deux n° différents).
Et si tu modifies toto puis que tu affiches titi, tu verras que ta modif y est aussi. Je dis "aussi" comme si cela sous-entendait une espèce de transfert alors qu'en réalité, puisqu'il n'y a qu'un seul contenu, la modif n'a même pas eu besoin d'être transférée. Il n'y a qu'un seul contenu référencé par deux noms => c'est bien un lien physique que tu as fait.
ce qui ne change pas ma question... pourquoi quand je fais :
et que je modifie mon titi, toto ne se modifie pas, et vice-versa?Code:ln toto titi
Peux-tu nous donner le résultat des 2 commandes suivantes?
Ca devrait nous aider à voir ce qui ne va pas.Code:
1
2 ls -l toto titi ls -i toto titi
Au début :
Puis quand je modifie titi :Code:
1
2
3
4 -rw-r--r-- 2 solalrastier staff 6 8 avr 18:52 titi -rw-r--r-- 2 solalrastier staff 6 8 avr 18:52 toto 2232099 titi 2232099 toto
Donc si j'ai bien compris, la modification casse le lien.Code:
1
2
3
4 -rw-r--r-- 1 solalrastier staff 6 8 avr 18:52 titi -rw-r--r-- 2 solalrastier staff 6 8 avr 18:52 toto 2232107 titi 2232099 toto
Extraordinaire - Jamais vu ça - Effectivement tu as bien deux fichiers liés mais la modif casse le lien.
Il se pourrait que toto possède un attribut spécial - Essaye lsattr toto.
Sinon peux-tu recommencer avec un autre fichier ?
Exemple
Puis modif de truc1 et voir si ça se répercute dans truc2.Code:
1
2 date >truc1 ln truc1 truc2
Puis refaire ce même test dans un autre fs (/tmp ou /var/tmp par exemple...)
Bonjour,
Perso, je me méfie du processus qui modifie titi. Il fait peut-être une suppression/réécriture en pensant que c'est pareil. La preuve que non.
Le problème vient de l'application apparemment.... Qui a la mailing list d'Emacs que je demande aux devs de corriger le problème?
Effectivement, aussi improbable que cela puisse paraitre, il y a bien un soucis avec emacs et la gestion des liens hard.
Avant :
emacs -nw f1 (oui, j'ai pas de X).J'ecris, je sauve, je quitte, et pan :Code:
1
2 4572419 -rw-r--r-- 2 name group 5 Apr 9 14:48 f1 4572419 -rw-r--r-- 2 name group 5 Apr 9 14:48 f2
Code:
1
2
3 4572421 -rw-r--r-- 1 name group 10 Apr 9 14:49 f1 4572419 -rw-r--r-- 2 name group 5 Apr 9 14:48 f1~ 4572419 -rw-r--r-- 2 name group 5 Apr 9 14:48 f2
Ce que tu dois faire :
Chercher le gestionnaire de bug de emacs
Chercher dedans s'il y a un bug deja remonte sur ce sujet.
Si ce n'est pas le cas, ouvrir un rapport de bug
Tu ne dois normalement pas utiliser la mailing liste pour remonter des bugs.
Ce n'est pas un bug mais un effet de bord de la méthode de backup utilisée par défaut et documentée.
Il est possible d'affecter la variable de configuration backup-by-copying-when-linked pour avoir un comportement plus raisonnable.
http://www.gnu.org/software/emacs/ma...p-Copying.html
Mais quelle idée d'utiliser "emacs" alors que "vi" est tellement supérieur :wink:
Idem
On arrête de troller:D
En tout cas tu peux passer en résolu. Comme tu l'as constaté, ln fonctionne parfaitement; c'est juste ton éditeurmoiside qualité reconnue qui mettait la zone...
comment on fait pour passer en résolu?
Sérieusement je ne suis pas certain que pouvoir modifier un comportement fondamental d'un fs soit une bonne chose. En effet, le but de celui qui crée un lien est d'avoir plusieurs noms associés à un même contenu. Si on peut paramétrer emacs pour lui faire casser le lien (donc concrètement créer un effet destructif sur une action préalable de l'utilisateur) ben je pense que c'est plus néfaste qu'autre chose...
Écoute, si t'es pas content, t'as qu'à devenir contributeur à Emacs et à corriger tout ça.
Euh si tu le prends sur ce ton ça va vite monter dans les tours. Déjà je n'ai pas dit que je n'étais pas content, j'ai juste émis un avis personnel sur ce que je pense bon ou pas bon à propos des choix qui sont faits ; avis qui peut donner lieu à débats plus motivants que ce que ta petite poussée d'hormones vient de nous sortir.
De plus je te rappelle que c'est toi qui a eu un pb avec le comportement d'emacs, pas moi (qui utilise vi lequel se comporte parfaitement avec les liens) et donc je ne vois pas pourquoi j'irais me mettre contributeur d'un éditeur que jen'aimen'utilise pas (et qui me donne maintenant une raison de plus de ne pas utiliser).
Pb qui t'a même fait douter de la fiabilité des fondamentaux d'Unix et qui nous a nous aussi fait chercher pour ne pas te laisser te dépatouiller tout seul. Alors moins de graine !!!
Si tu préferes utiliser ton éditeurnazereconnu par POSIX commemoisistandard Unix, c'est ton choixstupide. Mais bon, je dis que si jamais ça t'intéresse, on sait jamais.
Ce que je trouve surtout néfaste, c'est la valeur par défaut de backup-by-copying-when-linked !
Si on veut que l'édition d'un fichier lié conserve le lien (comportement raisonnable!), il suffit de customizer backup-by-copying-when-linked à t (ce qui est la valeur que j'utilise dans mon .emacs depuis pas mal de lustres).
Je suis très impressionné par et admiratif devant ta sérénité face aux propos de ce collégien! :applo:
Pardonnez-lui car il ne sait pas ce qu'il fait... ;)
C'est quand-même triste qu'un comportement (que j'estime) nécessaire ne soit pas le comportement par défaut de cet éditeur (qui a sûrement des qualités vu son nombre de fans et la guerre soutenue qui se fait avec ceux de vi)...
Bof, s'il ne comprend pas au premier message il n'y a rien qu'on puisse dire (surtout qu'il n'est plus actif) qui lui fera comprendre. Je sais qu'il comprendra plus tard lorsque la vie lui aura mis les raclées qu'il mérite. Je regrette juste de ne pas pouvoir en profiter :aie: