Установка Debian/APT и продолжение установки

Общий ход настройки и использования APT целевой системы мало отличается от такого для основной. В частности, если целевая система будет эксплуатироваться в том же «окружении» (в той же сети, совместно с тем же HTTP proxy, etc.), ее настройки можно попросту скопировать.

Источники пакетов

править

Основой настройки APT является список источников, хранимый в .list-файлах директории /etc/apt/sources.list.d/, подобно:

$ ls -- /mnt/etc/apt/sources.list.d/ 
54-http.debian.net-jessie.list
55-security.debian.org-jessie-sec.list
$ tail -n3 -- /mnt/etc/apt/sources.list.d/*.list 
==> /mnt/etc/apt/sources.list.d/54-http.debian.net-jessie.list <==
deb     http://http.debian.net/debian jessie main
# deb-src http://http.debian.net/debian jessie main

==> /mnt/etc/apt/sources.list.d/55-security.debian.org-jessie-sec.list <==
deb     http://security.debian.org/debian-security/ jessie/updates main
# deb-src http://security.debian.org/debian-security/ jessie/updates main
$ 

Также может быть полезно установить (создав в директории /mnt/etc/apt/apt.conf.d/ один или более содержащих желаемые настройки файлов) такие параметры, как, например:

APT::Default-Release "jessie";
APT::Install-Recommends "true";
Acquire::http::Proxy "http://proxy.example.org:3128/";
Acquire::http::Proxy::apt.example.org "DIRECT";

Подавление запуска init.d-кода

править

Чтобы предотвратить нежелательный на данном этапе запуск init.d/-кода в процессе работы APT, создадим следующий policy-rc.d-файл:

# cat < /mnt/usr/sbin/policy-rc.d 
#!/bin/sh
echo NB: policy-rc.d called >&2
exit 101
# chmod -- 0755 /mnt/usr/sbin/policy-rc.d 
# 

Установка компонент системы

править

Выполним теперь установку составляющих желаемую конфигурацию пакетов целевой системы (не забыв о такой важной части системы, как ядро), подобно:

# chroot /mnt apt-get install -V \
      linux-image-amd64 \
      busybox bzip2 diffutils ed file less patch rsync screen time \
      tree unzip uuid-runtime xutils-dev xz-utils zip  bc dc gawk 

Возможность явно задать список пакетов для установки командой, подобной представленной выше, выгодно отличает, на взгляд автора, установку с использованием системы общего назначения от установки с использованием D-I (в случае чего предложено было бы воспользоваться tasksel.)

На данном этапе можно также сменить пароль привилегированного пользователя (# chroot /mnt passwd), внести правки в passwd(5) и group(5) целевой системы (текстовым редактором, или же используя # chroot /mnt adduser, etc.), создать пользовательские домашние (private) и public-директории, подобно:

# cat < /mnt/root/mkud.sh 
#!/bin/sh
for u ; do
    g=$(id -g -- "$u")
    install -v -d -m 0700 -o "$u" -g "$g" -- /home/private/users/"$u"
    install -v -d -m 0755 -o "$u" -g "$g" -- /home/public/users/"$u"
done
# chroot /mnt bash /root/mkud.sh  jrh bloggs 

(Здесь может иметь смысл вернуться к разделу «Адаптация к окружению» и проверить, все ли из упомянутых в нем действий по настройке целевой системы были в действительности выполнены?)

После завершения работы с APT (см., однако, следующий раздел, на предмет еще одного пакета, подлежащего установке), файл policy-rc.d следует удалить:

# rm -- /mnt/usr/sbin/policy-rc.d 

См. также

править