私は、fakeroot ユーティリティについて多くの混乱を抱えています。2 つの rootfs の /dev フォルダーにキャラクター ノードを追加しようとしています。rootfs_1 の所有者は自分ですが、2 番目の所有者は root です。
rootfs_1 の所有者は私です。
を。ls -l を実行すると。私は所有者を「Me Me」と
見なします b. rootfs_1/dev で mknod を使用してノードを作成しようとすると失敗します。
c. $fakeroot コマンドが通ります。
d. ls-al。所有者をルートと見なします(これは偽物であることがわかっています)
e. これで、mknod を使用して rootfs_1/dev にノードを作成できます。
f.
g を終了します。新しく作成されたノードの所有者は、予想どおり「私」です。rootfs_2 の所有者は root
a です。ls -l。所有者を「ルート ルート」と
見なします b.
c. rootfs_2/dev で mknod を使用してノードを作成しようとすると失敗します。$fakeroot コマンドが通ります。
d. ノードを作成しようとすると失敗します。
今、私は動作が期待されていることを知っています。しかし、fakeroot の仕組みと、fakeroot を介したシステム コールの流れについて混乱しています。fakeroot は LD_PRELOAD トリックを行うと思います。
ケース1が機能し、ケース2が失敗する理由を詳しく説明できる人はいますか。
ありがとう