1

Я тестирую некоторые программы под Debian X32. Это среда chroot, и он введен как root. Некоторые тесты не пройдены из-за учетной записи 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 - jdoe
No passwd entry for user 'jdoe'

Как мне отбросить привилегии в Debian Chroot?

1 ответ1

1

Я предполагаю, что причина ошибки в том, что пользователь существует в старой файловой системе, но не в новой, которую вы изменили с помощью chroot .

Если бы я точно знал, где хранятся все пользовательские данные, я мог бы посоветовать, какие файлы и каталоги из старой файловой системы следует скопировать / связать / смонтировать в новую, чтобы старые пользователи могли войти в операционную систему, работающую с новый корень. Я думаю, что большинство из них будет в /etc , но вы не можете просто заменить этот каталог, так как он будет содержать данные конфигурации, специфичные для новой файловой системы.

В противном случае простое решение - создать пользователей, которых вы хотите, в новой файловой системе. Поскольку ваша цель - тестировать непривилегированных пользователей, вам не нужно точно воспроизводить существующих пользователей.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .