chrootにコマンドを実行させるにはどうすればよいですか?

chrootにコマンドを実行させるにはどうすればよいですか?

コンパイルに問題があります。リニアFSLinux Mint 20のシステムとCinnamon。私の問題は、私がGlibcの(3番目の?)チャネルに到達したときにchrootどのコマンドも実行できないことです。これは、コマンドがディレクトリではないことを知らせます。 chrootの正確な出力は次のとおりです。

root@LAPTOP:~# chroot "$LFS" /usr/bin/env -i HOME=/root TERM="$TERM" PS1='(lfs chroot) \u:\w\$ ' \
                                             PATH=/bin:/usr/bin:/sbin:/usr/sbin \
                                             /bin/bash --login +h
chroot: failed to run command '/usr/bin/env': Not a directory

ここで何が間違っているのかわかりません。誰かが私にアドバイスを与えることができますか?

PSこのコンテンツのより良いサイトがあれば教えてください。

ベストアンサー1

ああ、ついに何が起こったのかわかりました。

最初に最初のファイルシステムを作成したときに/ usr / libへのシンボリックリンクとして/ libを作成しました。
次に、次のコマンドを実行すると、次のようになります。

case $(uname -m) in
  i?86)   ln -sfnv $PWD/elf/ld-linux.so.2        /lib ;;
  x86_64) ln -sfnv $PWD/elf/ld-linux-x86-64.so.2 /lib ;;
esac

リンク先をに変更するため、ディレクトリ$PWD/elf/ld-linux-x86-64.so.2以外のファイルは/ libです。

おすすめ記事