uname -mがchroot環境とschroot環境で異なって報告されるのはなぜですか?

uname -mがchroot環境とschroot環境で異なって報告されるのはなぜですか?

Ubuntu 14.04.2, 64 bitホストシステムを運用しています。を使用してdebootstrapディレクトリに最小限のシステムをインストールしましたUbuntu 14.04.2, 32 bittrusty32私の設定は次のとおりですschroot

[trusty_i386]
description=Ubuntu 14.04 Trusty for i386
directory=/home/dipanjan/trusty32
personality=linux32
root-users=dipanjan
type=directory
users=dipanjan

32ビット刑務所に一度ログインしてchroot次回使用していますschroot。驚くべきことに、出力がuname -m異なります。chrootセッションではx86_64(ホストシステムスキーマ)を返し、セッションschrootではi686(ゲストシステムスキーマ)を返します。誰かがこの違いを説明できますか?

$ sudo chroot trusty32/
(trusty_i386)root@dipanjan-OptiPlex-960:/# uname -m
x86_64
(trusty_i386)root@dipanjan-OptiPlex-960:/# exit
exit
$ schroot -c trusty_i386
(trusty_i386)dipanjan@dipanjan-OptiPlex-960:~$ uname -m
i686
(trusty_i386)dipanjan@dipanjan-OptiPlex-960:~$ exit
logout

ベストアンサー1

chrootプロセスを変更しないでください。性格デフォルトでは、chrootホストの(カーネル)アーキテクチャを引き続き表示できますx86_64

一方、すでにPersonalitytrusty_i386 schrootを設定しlinux32ているのでschroot、設定時に実行してくださいchroot。そしてlinux32(リンクsetarch)は現在の特性を変更して32ビットカーネルアーキテクチャを報告しますi686

おすすめ記事