Установка ПО · 4 min read · Feb 06, 2026

Идеальный сервер - Gentoo 2007.0 - Страница 4

7 Установите несколько программ

Опционально мы можем установить пару вещей, чтобы сделать наше время в командной строке более комфортным. Это не имеет реального функционального значения для “идеальной настройки”. Установите vim таким образом, даже если вы уже добавили его в систему chroot ранее, так как это установит его правильно.

emerge --ask --verbose gentoolkit vim

Теперь вы можете изменить редактор по умолчанию, если не хотите, чтобы это был nano.

vi /etc/rc.conf

Измените свойство EDITOR на желаемое значение. Это вступит в силу с момента следующего входа в систему, или вы можете просто ввести сейчас,

source /etc/rc.conf

У нас уже есть большинство необходимых файлов разработки, и любые другие, которые нам понадобятся, будут добавлены по мере установки их основного программного обеспечения. Поскольку это Gentoo, здесь нет деления, которое обычно наблюдается в других дистрибутивах, между пакетом и версией package-dev.

emerge --ask --verbose expect fetchmail ncftp netkit-telnetd unzip zip

8 Создайте пользователя-администратора

Хотя это не строго необходимо для работы системы, это стандартизирует вещи с идеальной настройкой для других дистрибутивов. Мы создадим пользователя с именем administrator и позволим этому пользователю использовать sudo.

groupadd -g 1000 administrator   
useradd --create-home --gid administrator --groups wheel --shell /bin/bash administrator   
passwd administrator

Введите пароль, затем установите sudo.

emerge --ask --verbose sudo

Настройте sudo так, чтобы любой в группе wheel мог его использовать.

visudo

Уберите комментарий с этой строки:

# %wheel        ALL=(ALL)       ALL

Это должно выглядеть так,

[...]  
# Уберите комментарий, чтобы разрешить людям в группе wheel выполнять все команды
%wheel        ALL=(ALL)       ALL
[...]  

Сохраните и выйдите.

Затем, если хотите, вы можете удалить пароль root:

passwd --delete root

9 Квота

9.1 Конфигурация ядра

Нам нужна поддержка квот в ядре и версия 2 формата файла квоты.

Стандартное ядро Gentoo не имеет поддержки квот. Если вы следовали этому HowTo для базовой установки, вы уже настроили это, и можете перейти к следующему разделу. В противном случае вам нужно сделать это сейчас. Эти инструкции предназначены для пользователей genkernel. Остальные, вероятно, уже знают, что делать.

genkernel --no-clean --no-mrproper --menuconfig all

Перейдите в Файловые системы, выберите Поддержка квот и выберите, чтобы это было встроено в ядро, а не как модуль, Поддержка формата квоты v2.

menuconfig включить квоту 1

menuconfig включить квоту 2

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

Перезагрузите.

9.2 Конфигурация пользовательского пространства

emerge --ask --verbose quota

Отредактируйте /etc/conf.d/quota и добавьте m к QUOTACHECK_OPTS. У меня это выглядит так:

# /etc/conf.d/quota: конфигурационный файл для /etc/init.d/quota
# Примечание: если ваша консоль подключена к последовательному терминалу,
# вам, вероятно, нужно убрать '-v' из переменных OPTS ниже.

# Запускать quotacheck ?
RUN_QUOTACHECK="yes"

# Опции для quotacheck
QUOTACHECK_OPTS="-avugm"

# Опции для quotaon
QUOTAON_OPTS="-avug"

# Опции для quotaoff
QUOTAOFF_OPTS="-avug"

Отредактируйте /etc/fstab. У меня это выглядит так (я добавил, usrquota, grpquota к разделу с точкой монтирования /):

# /etc/fstab: статическая информация о файловой системе.
#
# noatime отключает atimes для повышения производительности (atimes обычно не нужны;
# notail увеличивает производительность ReiserFS (за счет эффективности хранения).
# Безопасно убрать опции noatime, если хотите, и свободно переключаться между notail / tail.
#
# Корневая файловая система должна иметь номер прохода 0 или 1.
# Все остальные файловые системы должны иметь номер прохода 0 или больше 1.
#
# См. страницу man fstab(5) для получения дополнительной информации.
#
#                                           
# ПРИМЕЧАНИЕ: Если ваш BOOT раздел является ReiserFS, добавьте опцию notail к opts.
/dev/hda1               /boot           ext2            noauto,noatime  1 2
/dev/hda3               /               ext3            noatime,usrquota,grpquota               0 1
/dev/hda2               none            swap            sw              0 0
/dev/cdrom              /mnt/cdrom      audo            noauto,ro       0 0
#/dev/fd0               /mnt/floppy     auto            noauto          0 0
# glibc 2.2 и выше ожидает, что tmpfs будет смонтирован в /dev/shm для
# POSIX общей памяти (shm_open, shm_unlink).
# (tmpfs - это динамически расширяемый/уменьшаемый ramdisk, и
#  будет использовать почти никакой памяти, если не заполнен файлами)
shm                     /dev/shm        tmpfs           nodev,nosuid,noexec    0 0

Запустите систему квот.

mount -o remount /   
/etc/init.d/quota start   
rc-update add quota boot

10 DNS сервер

Запустите,

echo "net-dns/bind resolvconf" >> /etc/portage/package.use   
emerge --ask --verbose bind

По соображениям безопасности мы хотим запустить BIND в chroot, поэтому нам нужно выполнить следующие шаги.

emerge --config bind   
echo alias rndc='rndc -k /chroot/dns/etc/bind/rndc.key' >> ~/.bash_profile   
source ~/.bash_profile   
rm --recursive --force /etc/bind   
ln --symbolic /chroot/dns/etc/bind /etc/bind

Нет необходимости настраивать демон журналирования для включения журналов BIND; он уже настроен для нас.

Итак, мы запускаем его.

/etc/init.d/named start   
rc-update add named default

11 MySQL

Стандартные USE флаги Gentoo приведут к тому, что MySQL будет установлен с выбранной по умолчанию кодировкой UTF-8 для всего. Если вы собираетесь установить ISPConfig, вам нужно ввести следующую строку, иначе веб-интерфейс ISPConfig не будет функционировать:

echo "dev-db/mysql latin1" >> /etc/portage/package.use

Отдельные базы данных все еще могут использовать другие кодировки, такие как UTF-8.

Запустите,

emerge --ask --verbose mysql

Это займет некоторое время; затем, когда это будет сделано,

emerge --config dev-db/mysql

mysql --config 1

Введите корневой пароль, который вы хотите установить для базы данных, и дайте ему завершить.

mysql --config 2

Если вы хотите, чтобы MySQL слушал на всех интерфейсах, а не только на localhost, отредактируйте /etc/mysql/my.cnf и закомментируйте строку bind-address = 127.0.0.1:

Запустите MySQL

/etc/init.d/mysql start   
rc-update add mysql default
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.