Debian Chroot で権限を削除するにはどうすればいいですか?

Debian Chroot で権限を削除するにはどうすればいいですか?

私はいくつかのソフトウェアをテストしていますデビアンX32これはchroot環境であり、rootとしてログインします。テストの一部は次のとおりです。ルートアカウントが原因で失敗する:

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    
...

su によって権限を削除しようとすると失敗します:

# su - jdoe
No passwd entry for user 'jdoe'

Debian Chroot で権限を削除するにはどうすればいいですか?

答え1

エラーの原因は、ユーザーが古いファイル システムに存在するが、 で変更した新しいファイル システムには存在しないためであると考えられますchroot

すべてのユーザーの詳細がどこに保存されているか正確にわかっていれば、古いユーザーが新しいルートで実行されているオペレーティング システムにログインできるように、古いファイル システムから新しいファイル システムにコピー/リンク/マウントするファイルとディレクトリについてアドバイスできます。それらのほとんどは にあると思います/etcが、新しいファイル システムに固有の構成データが含まれるため、そのディレクトリをそのまま置き換えることはできません。

それができない場合、簡単な解決策は、新しいファイル システム内に必要なユーザーを作成することです。目的は非特権ユーザーをテストすることなので、既存のユーザーを正確に再現する必要はありません。

関連情報