Pythonスクリプトでは、互いにリンクされた複数のシンボリックリンクを作成します。
例: リンク1->リンク2->リンク3->.....->somefile.txt
最大シンボリックリンク数を20個より大きく変更する方法を知りたいです。
答え1
Linux(最小3.5)では40にハードコードされています(参照:follow_link()
存在するfs/namei.c
)、これはパス内のすべてのコンポーネントをチェックするときに続くリンクの数なので、カーネルを再コンパイルするだけで変更できます。
$ 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