私はいくつかのソフトウェアをテストしています debian x32 。そのChroot環境とその根本として入った。いくつかのテストは ルートアカウントのために失敗した :
make test
...
# Failed test 'Testing that we aren't running as a privileged user, such as root'
# at ../test/recipes/40-test_rehash.t line 49.
...
# Looks like you failed 1 test of 5.
../test/recipes/40-test_rehash.t ........... Dubious, test returned 1
(wstat 256, 0x100)
Failed 1/5 subtests
...
_
SUEDによって権限を落とそうとしています。
# su - jdoe
No passwd entry for user 'jdoe'
_
Debian Chrootで特権を削除する方法
エラーの理由は、ユーザーが古いファイルシステムに存在するが、新しいファイルシステムに存在するが、chroot
で変更された新しいものではないと仮定する。
すべてのユーザー詳細が保持されている場所を正確に知っていれば、古いユーザーがで実行されているオペレーティングシステムにログインできるように、古いファイルシステムからのどのファイルとディレクトリを新しいファイルシステムからコピー/リンク/マウントするかについてアドバイスすることができます。新しいルート。私はそれらのほとんどが/etc
、ただし、新しいファイルシステムに固有の構成データが含まれているため、そのディレクトリを関係なく置き換えることはできません。
故障しても、簡単な解決策は、新しいファイルシステム内で必要なユーザーを作成することです。あなたの目的は特権のないユーザーをテストすることですので、既存のユーザーを正確に再現する必要はありません。