У меня есть Xubuntu 18.04 в a chroot
среда. Я просто отбросил его там от VM, который я имел его.
Вход chroot
среда, если я пытаюсь работать apt update
Я получаю эту ошибку:
/usr/bin/apt-key: 624: /usr/bin/apt-key: cannot create /dev/null: Permission denied
Я попробовал большинство решений здесь: https://unix.stackexchange.com/questions/146633/bash-dev-null-permission-denied, А также это решение: https://superuser.com/a/814594 Ни один работал. Тот же точный вывод.
Есть ли некоторый способ, которым я могу получить эту работу?Заранее спасибо.
Вычисленный проблема. Это не было читаемо/перезаписываемо всеми пользователями. Измененный это так все пользователи могли читать и записать, и это работало. Спасибо так или иначе!
От man null
:
These devices are typically created by:
mknod -m 666 /dev/null c 1 3
mknod -m 666 /dev/zero c 1 5
chown root:root /dev/null /dev/zero
Эти команды должны были бы быть выполнены в chroot
среда.
Вместо того, чтобы добавлять ключи GPG для репозитория apt внутри chroot с помощью apt-key
, вы также можете поместить их непосредственно в /etc/apt/trusted.gpg.d
каталог с расширением файла .asc
или .gpg
в соответствии с этой ошибкой Debian, на которую я наткнулся.
В моем случае я пытался добавить репозиторий apt в среду chroot
при создании базового образа для своих контейнеров.
Например:
wget -q "SOME_URL_HERE" -O- | run_in_chroot sh -c 'cat >/etc/apt/trusted.gpg.d/mykey.asc';
...где run_in_chroot
запускает команду внутри chroot:
run_in_chroot() {
chroot "path/to/directory/to/chroot/into" "$@";
}