私は、パス内の完全なサブファイルシステムを持っている/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