Top / Old / etch / Software / chroot

chroot の FAQ

  • schroot
  • dchroot
    • 一般ユーザで chroot を使えるようにするツール

シェル上で現在、chroot 内にいるのか否かをチェックしたい

/etc/skel/.bashrc の "set variable identifying the chroot you work in (used in the prompt below)" のあたりにチェック用コードが書いてあります。

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
    ;;
*)
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
    ;;
esac

# Comment in the above and uncomment this below for a color prompt
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

要はプロンプト変数 PS1 に細工してやるということです。
これを $HOME/.bashrc にコピペして、 /etc/debian_chroot という適当な内容のファイルを chroot 環境に作成してください。

zsh 用はこちら
$HOME/.zshrc に

prompt='%m{%n}%# '
[ -f /etc/debian_chroot ] && prompt="%m-`cat /etc/debian_chroot`{%n}%# "


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-12-12 (金) 23:04:38 (3269d)