Форум Зейского сообщества любителей ОС Linux и Unix
Тематические обсуждения *nix => Общие вопросы => Тема начата: vovka от Суббота, 13 Января, 2018, 13:41:43
-
Возникла необходимость в установке и настройке сервера - интернет-шлюза. Начал выбирать дистрибутив. На Debian 7 работает пара серверов и, учитывая последние найдённые уязвимости, решил попробовать последний Debian - 9-ю версию.
Поставил для ознакомления без графического интерфейса на виртуалке, выбрал русский язык в инсталляторе (хотя он мне на шлюзе и не нужен будет) и после установки оказалось, что все русскоязычные слова отображаются квадратиками...
Заглянул в процессы - рулит systemd, что не есть хорошо.
Покопался в Интернете - многие специалисты пишут, что качество дистрибутива серьёзно упала, что ставит вопросы о возможном переходе на другие дистрибутивы.
-
Для нормального старта:
0.5. Установка временной локали
Если при установке был выбран русский язык, то временно меняем локаль на английскую, чтобы хоть как-то можно было работать:
nano /etc/default/locale
Меняем:
LANG=ru_RU.UTF-8
на
LANG=en_US.UTF-8
Перезаходим в систему.
1. Обновляем минимальную систему
apt-get upgrade
2. Выпиливаем systemd
apt-get install sysvinit-core
cp /usr/share/sysvinit/inittab /etc/inittab
reboot
Опционально:
1. Удаляем systemd:
apt-get remove --purge --auto-remove systemd
2. Предотвращаем установку systemd по-новой из-за какой-нибудь зависимости:
echo -e 'Package: *systemd*\nPin: release *\nPin-Priority: -1\n' > /etc/apt/preferences.d/systemdИли просто создаём файлик с именем systemd в каталоге /etc/apt/preferences.d/ такого содержания:
Package: *systemd*
Pin: release *
Pin-Priority: -1
Источник: without-systemd.org (http://without-systemd.org/wiki/index.php/Debian_Stretch)
Перезагружаем систему.
3. Восстановление локалей
Ранее локалями управлял systemd (да, да, не удивляйтесь, этот комбайн управляет ещё кучей всего) и сейчас нужно функционал перекинуть на другую систему. Ставим пакет console-cyrillic и выполняем повторную генерацию локалей:
apt-get install console-cyrillic
dpkg-reconfigure localesВыбираем русскую и английскую локали UTF-8 и затем выбираем локаль по умолчанию. После настроек перезаходим в систему.
4. Доустановка утилит
Уж не знаю по какой причине, но выпиливать утилиты для диагностики и настройки сетевого соединения - это издевательство. ifconfig, netstat и другие утилиты входят в пакет net-tools, который по умолчанию теперь не ставится:
apt-get install net-tools
5. Возвращаем старую систему именования сетевых адаптеров
Вот здесь (https://lists.debian.org/debian-user/2017/07/msg01453.html) говорится об изменениях в системе именования, что с версии udev 220-7 именованием сетевых интерфейсов занимается само ядро и имя интерфейса формируется исходя из: именования биосом, модулем ядра и номера слота, куда вставлен адаптер - т.е. адаптер именуется однозначно и без вариантов, что раньше udev делал по своей логике. Примерно по такой же системе именуются адаптеры во FreeBSD. Причина, по которой функцию именования сетевых адаптеров извлекли из udev, заключается в невозможности провести переименование, когда корневая файловая система (где находится /etc/udev/ ) монтируется в режиме только чтение.
Кому же проще работать со старой системой, то можно перейти на неё таким образом:
К уже существующим значениям параметра GRUB_CMDLINE_LINUX_DEFAULT в /etc/default/grub , добавляем через пробел такие:
net.ifnames=0 biosdevname=0
Пересобираем образ initrd и обновляем конфигурацию grub:
update-initramfs -u
update-grub
Перезагружаем систему и редактируем /etc/network/interfaces , поскольку в этом конфиге остались не классические имена интерфейсов.
Замечено, что даже после добавления второго интерфейса в системе, конфигурационный файл в /etc/udev/rules.d/ не появляется. Похоже что манипуляции с привязкой мак-адреса и его алиаса через udev более работать не будут.