chroot環境を識別するためにbashrcでdebian_chrootを使用する方法は?

chroot環境を識別するためにbashrcでdebian_chrootを使用する方法は?

次の内容が表示されます~/.bashrc

 if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
     debian_chroot=$(cat /etc/debian_chroot)
 fi

これは、変数が設定されておらず、ファイルが存在して読み取れる場合は、ファイルの内容が変数に設定されることを意味します。

chrootを準備するためにこのファイルに何かを書く必要がありますか?
もしそうなら、chroot操作が終わったらファイルを削除する必要があります!

どんな説明やアドバイスでも大変感謝します。

ベストアンサー1

この変数は、デフォルトのPS1シェルを構築するためにのみ使用されます。プロンプトは次のとおりです。

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

したがって、現在の場所を確認することをお勧めしますが、ファイルを生成する必要はありません。

ご覧のとおり、-r はファイルをテストして、ユーザーがファイルを読み取ることができるかどうかを確認します。ファイルが存在する場合、debian_chrootはその内容を取得します。/etc/debian_chroot ~へchrootには希望のフレーズが含まれています。 (内部的にchroot内にないため、実際のルートではこれをしないでください)

したがって、chrootがにある場合、/mnt変更する必要があるファイルは/mnt/etc/debian_chroot(ではありません/etc/debian_chroot)です。

おすすめ記事