20 апреля 2024 года

Вы здесь

Предварительная настройка FreeBSD

После пересборки ядра FreeBSD, рекомендуется сразу же сделать некоторые предварительные настройки. Речь пойдет о настройкех, которые позволят в дальнейшем более комфортно работатть с сервером. Статья не панацея на все случаи жизни, поэтому каждый сам выбирает  необходимые ему опции.

Так как у нас сервер без поддержки графической оболочки, поэтому сразу перед установкой и обновлением портов удаляем из них X11:

# echo "WITHOUT_X11=YES">>/etc/make.conf

Только теперь устанавливаем и разворачиваем дерево портов:

# portsnap fetch extract

Уменьшаем время ожидания загрузчика при старте операционной системы:

# echo 'autoboot_delay="2"'>>/boot/loader.conf

Изменим приветствие при авторизации. Здесь можно указать свои контактные данные или адрес и телефон технической поддержки:

# ee /etc/motd
Welcome to the Our Super Server!

Если вы собираете домашний не нагруженный сервер, актуальной становится задача его энергопотребления. С этой работой нам поможет демон powerd. По-умолчанию, рабочая частота процессора установлена в максимальное значение. Посмотрим:

# sysctl dev.cpu.0.freq
dev.cpu.0.freq: 2800

При работе powerd и при отсутствии нагрузки, частота процессора понижается. По-умолчанию powerd управляет частотой процессора в адаптивном режиме. Запускаем powerd при старте системы:

# echo 'powerd_enable="YES"’ >>/etc/rc.conf

Стартуем powerd:

# /etc/rc.d/powerd start
Starting powerd.

Проверяем текущую частоту работы процессора:

# sysctl dev.cpu.0.freq
dev.cpu.0.freq: 300

Процессор перешел с максимальной частоты 2800MHz на минимальную частоту 300MHz!

Русифицируем системную консоль с поддержкой кодировки UTF-8. Почему UTF-8?

  • Это кроссплатформенная кодировка для работы в разных ОС;
  • Это родная кодировка многих файловых систем (корректное отображение файлов);
  • В базах данных самая беспроблемная кодировка, особенно когда работаешь с несколькими языками одновременно.

Собираем ядро с поддержкой кодировки UTF -8 (добавляем строки):

options TEKEN_UTF8
options TEKEN_XTERM

Заменяем драйвер консоли 'cons25' на 'xterm' в /etc/ttys и перечитываем его заново:

# /etc/rc.d/syscons restart

Редактируем /etc/login.conf:

russian|Russian Users Accounts:\
:charset=UTF-8:\
:lang=ru_RU.UTF-8:\
:tc=default:

Создаём новый хеш для login.conf:

# cap_mkdb /etc/login.conf

Изменяем файл /etc/csh.cshrc и устанавливаем переменные окружения:

setenv LANG ru_RU.UTF-8
setenv LC_CTYPE ru_RU.UTF-8
setenv LC_COLLATE POSIX
setenv LC_ALL ru_RU.UTF-8

Для тех, кто работает в bash-подобных командных интерпретаторах, изменяем /etc/profile:

LANG="ru_RU.UTF-8"; export LANG
LC_CTYPE="ru_RU.UTF-8"; export LC_CTYPE
LC_COLLATE="POSIX"; export LC_COLLATE
LC_ALL="ru_RU.UTF-8"; export LC_ALL

Для root'а консоль оставляем англоязычной и изменяем /root/.cshrc

setenv LANG C
setenv LC_CTYPE C
setenv LC_COLLATE POSIX
setenv LC_ALL C

Если вам необходима конвертация имен файлов с KOI8-R в UTF-8, ставим следующий порт /usr/ports/converters/convmw и как пример использования:

# convmw -f koi8-r -t utf-8 /file/path/* --notest –r

Изменяем приглашение prompt на более информативное. В файле /usr/share/skel/dot.cshrc (всем новым пользователям) и в файле /home/user/.cshrc (для созданного пользователя user) заменим строку:

# ee /usr/share/skel/dot.cshrc
# ee /home/user/.cshrc

Удаляем строки, содержащие какое-либо приглашение (set prompt):

set prompt = "..."

Вставляем строку:

set prompt = "%{\033[33m%}[%T] %{\033[0;4;31m%}`/usr/bin/whoami`%{\033[0;1;31m%}@%{\033[0;4;31m%}%m%{\033[0;1;34m%} %/%{\033[0;32m%} >"

Также, необходимо изменить приглашение для root:

# ee /root/.cshrc

Удаляем строки, содержащие какое-либо приглашение (set prompt):

set prompt = "..."

Изменим строку:

set prompt = "%{\033[33m%}[%T] %{\033[0;4;31m%}`/usr/bin/whoami`%{\033[0;1;31m%}@%{\033[0;4;31m%}%m%{\033[0;1;34m%} %/%{\033[0;32m%} # "

Теперь вместо стандартных значений # и > мы получим текущее время, имя пользователя, адрес сервера, текущая директория  и цветное приглашение на ввод команд, например:

[10:51] user @ server /home/user >

Также системному администратору частенько приходится использовать системную утилиту grep. Для того, чтобы искомые строки подсвечивались цветом,  добавим alias  рядом со стандартными алиасами в .cshrc для root'a, системного пользователя user и для всех новых пользователей:

# ee /home/user/.cshrc
# ee /root/.cshrc
# ee /usr/share/skel/dot.cshrc

alias grep grep --color=auto

Для root, пользователя и новых пользователей, добавим подсветку консоли. В .cshrc-файлах:

# ee /home/user/.cshrc
# ee /root/.cshrc
# ee /usr/share/skel/dot.cshrc

после всех алиасов (alias) добавим следующие строки:

setenv LSCOLORS ExFxBxDxCxEgEdAbAgAcAd
setenv CLICOLOR
set autolist
set color