У мене є повний суб-файлова система всередині шляху , /home/user/system
що містять стандартну структуру Linux з каталогами /bin
, /home
, /root
, /usr
, /var
, /etc
, ...
Ця підфайла містить символьні посилання, відносні чи абсолютні. Відносні символьні посилання просто чудові, вони знаходяться в підфайловій системі під /home/user/system
. Але абсолютні посилання є проблематичними, оскільки вони вказують на ціль поза підфайловою системою.
В якості прикладу ми беремо абсолютне символьне посилання наступним чином (видно всередині підфайлової системи):
/usr/file1 -> /usr/lib/file1
У загальній файловій системі у нас є посилання, /home/user/system/usr/file1
яке зараз вказує на файл /usr/lib/file1
поза підфайловою системою, а не на файл /home/user/system/usr/lib/file1
всередині підфайлової системи.
Я хотів би мати простий скрипт, бажано, один командний рядок (rsync, chroot, find, ...), який перетворює кожне абсолютне посилання на відносне.
У наведеному прикладі ця відносна ланка стане
/usr/file1 -> ../usr/lib/file1