Dans un script python, je crée un tas de liens symboliques enchaînés.
exemple: link1-> link2-> link3 -> .......-> somefile.txt
Je me demandais comment vous pouvez changer le nombre maximum de liens symboliques pour qu'il soit supérieur à 20?
Dans un script python, je crée un tas de liens symboliques enchaînés.
exemple: link1-> link2-> link3 -> .......-> somefile.txt
Je me demandais comment vous pouvez changer le nombre maximum de liens symboliques pour qu'il soit supérieur à 20?
Réponses:
Sous Linux (3.5 au moins), il est codé en dur à 40 (voir follow_link()
dansfs/namei.c
), et notez que c'est le nombre de liens suivis lors de la résolution de tous les composants d'un chemin, vous ne pouvez le changer qu'en recompilant le noyau.
$ ln -s . 0
$ n=0; repeat 50 ln -s $((n++)) $n
$ ls -LdF 39
39/
$ ls -LdF 40
ls: cannot access 40: Too many levels of symbolic links
$ ls -LdF 20/18 10/10/10/6
10/10/10/6/ 20/18/
$ ls -LdF 20/19 10/10/10/7
ls: cannot access 20/19: Too many levels of symbolic links
ls: cannot access 10/10/10/7: Too many levels of symbolic links
/usr/include/x86_64-linux-gnu/sys/param.h
sur mon système) et n'est pas destiné à être modifié par les utilisateurs.