Первоначальная настройка

Опубликовано nekit - сб, 26/03/2011 - 21:05

Приветствую всех. В этой статье я расскажу о настройке некоторых подсистем FreeBSD, чтобы в дальнейшем было легче работать. Итак, если вы ставили систему с диска, то скорее всего большую часть настроек сделали через sysinstall, поэтому некоторые пункты вам можно пропустить. В другом случае или в случае, если система была установлена с флешки, то читаем с самого начала... :)

1. Настраиваем временную зону. Проще всего это сделать следующей командой:

  1. # tzsetup

В связи с принятием закона об отмене перехода на зимнее/летнее время, на версиях FreeBSD старее 8.3 и 9.0 хранится устаревшая инфомарция о временных зонах. Для обновления базы данных временных зон следует установить порт /usr/ports/misc/zoneinfo. А после установки выполнить вышеуказанную команду.

2. Создаем БД алиасов для sendmail. Почтовый демон (sendmail) использует ее в процессе доставки писем локальным пользователям, поэтому если ее не будет, то он будет вывалить сообщения об ошибках в лог.

  1. # cd /etc/mail
  2. # make aliases

3. Настраиваем шрифты в консоли, кодировку и имя машины. Локализация системы требуется для того, чтобы корректно работала клавиатура при наборе русского текста, правильно отображался русский текст в консоли, а так же для корректной работы системных команд (например, для команды sort).

  1. # cat /etc/rc.conf
  2.  
  3. font8x14="cp866-8x14"
  4. font8x16="cp866b-8x16"
  5. font8x8="cp866-8x8"
  6. keymap="ru.koi8-r"
  7. keyrate="fast"
  8. saver="green"
  9. scrnmap="koi8-r2cp866"
  10.  
  11. hostname="your.hostname"
  1. # cat /etc/ttys
  2.  
  3. ....
  4. ttyv0   "/usr/libexec/getty Pc"         cons25r  on  secure
  5. # Virtual terminals
  6. ttyv1   "/usr/libexec/getty Pc"         cons25r  on  secure
  7. ttyv2   "/usr/libexec/getty Pc"         cons25r  on  secure
  8. ttyv3   "/usr/libexec/getty Pc"         cons25r  on  secure
  9. ttyv4   "/usr/libexec/getty Pc"         cons25r  on  secure
  10. ttyv5   "/usr/libexec/getty Pc"         cons25r  on  secure
  11. ttyv6   "/usr/libexec/getty Pc"         cons25r  on  secure
  12. ttyv7   "/usr/libexec/getty Pc"         cons25r  on  secure
  13. ....
P.S. На FreeBSD 9 файл /etc/ttys трогать ни к чему, поскольку тип терминала там - xterm, который обеспечивает поддержку различных кодировок.

Чтобы не перезагружать машину и применить новые настройки, можно воспользоваться системными утилитами. К примеру, чтобы заного инициализировать виртуальные терминалы (то есть, чтобы был перечитан файл /etc/ttys), нужно выполнить такую команду:

  1. # kill -1 1

Это заставит первый процесс в системе заного выполнить инициализацию терминалов. Теперь про шрифты и кодировку в консоли. Вообще для управления настройками консоли есть системная утилита — vidcontrol. С помощью нее с консолью можно сделать практически все, что угодно (более подробно об этом смотрите в мане). Здесь же, я расскажу только о том, как к консоли применить новые шрифты и кодировку. Все шрифты лежат здесь — /usr/share/syscons/fonts. Вот как можно загрузить шрифты:

  1. # vidcontrol -f 8x8 /usr/share/syscons/fonts/cp866-8x8
  2. # vidcontrol -f 8x14 /usr/share/syscons/fonts/cp866-8x14
  3. # vidcontrol -f 8x16 /usr/share/syscons/fonts/cp866b-8x16

Новую кодировку можно загрузить такой командой (возможные кодировки лежат здесь — /usr/share/syscons/scrnmaps):

  1. # vidcontrol -l /usr/share/scrnmaps/koi8-r2cp866

Ну и еще расскажу про раскладку клавиатуры — для управления клавой в системе есть утилита kbdcontrol. Возможные варианты раскладок лежат здесь — /usr/share/syscons/keymaps. Загрузить новую раскладку можно так:

  1. # kbdcontrol -l /usr/share/syscons/keymaps/ru.koi8-r

Кстати, в командах vidcontrol и kbdcontrol не обязательно указывать полный путь, они автоматом ищут нужные файлы в предназначенных на то каталогах. Для отображения/изменения имени машины есть системная утилита hostname. Пользоваться ей очень просто — без аргументов выводит текущее имя машины, а если указан аргумент (какая-нибудь последовательность символов), то установит новое имя хоста.

4. Ставим пользователю root локаль по умолчанию:

  1. # pw usermod root -L russian

Чтобы применить новый класс, просто снова зайдите под рутом. Классы пользователей описываются в файле /etc/login.conf.

5. Настраиваем оболочку csh. Настройка осуществляется через конфигурационный файл .cshrc, который находится в домашней директории пользователя. Настройку также можно сделать через основной конфигурационный файл, который находится по такому пути — /etc/csh.cshrc, но тогда эти изменения будут распространяться на всех пользователей. Соответственно, для пользователя root надо отредактировать файл по такому пути: /root/.cshrc. Обычно этот файл у меня выглядит так:

  1. alias h         history 25
  2. alias j         jobs -l
  3. alias la        ls -a
  4. alias lf        ls -FA
  5. alias ll        ls -lA
  6.  
  7. # Команда копирования/перемещения будет выводить имя файла,
  8. # который сейчас обрабатывается.
  9. alias cp        cp -v
  10. alias mv        mv -v
  11. # Делаем, чтобы команда grep подсвечивала искомые фразы
  12. alias grep grep --color
  13.  
  14. # A righteous umask
  15. umask 22
  16.  
  17. set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin $HOME/bin)
  18.  
  19. # У меня стоит vim, поэтому я его установил редактором по умолчанию
  20. setenv  EDITOR  vim
  21. # less будет использоваться для отображения man страниц
  22. setenv  PAGER     less
  23. setenv  BLOCKSIZE       K
  24.  
  25. # По умолчанию less выводит весь текст белым цветом. С помощью
  26. # этих переменных окружения можно задать цвета, которые будут
  27. # использоваться при форматировании man страницы.
  28. # Про управляющие спецсимволы читайте ман про terminfo. С такими
  29. # параметрами:
  30. # текст, выделенный жирным будет синего цвета;
  31. # подсвечиваемый текст (при поиске, найденные совпадения)
  32. #   будет фиолетового цвета;
  33. # простой текст будет белого цвета;
  34. # а подчеркнутый текст будет зеленого цвета
  35.  
  36. # Начало подсвечиваемого текста (при поиске, совпадения)
  37. setenv LESS_TERMCAP_mb `echotc md; echotc AF 5`
  38. # Начало текста, выделенного жирным
  39. setenv LESS_TERMCAP_md `echotc md; echotc AF 4`
  40. # Конец для предыдущих двух
  41. setenv LESS_TERMCAP_me `echotc me; echotc AF 7`
  42.  
  43. # Начало простого текста
  44. setenv LESS_TERMCAP_so `echotc so; echotc AF 5`
  45. # Конец простого текста
  46. setenv LESS_TERMCAP_se `echotc se; echotc AF 7`
  47.  
  48. # Начало подчеркнутого текста
  49. setenv LESS_TERMCAP_us `echotc us; echotc AF 2`
  50. # Конец подчеркнутого текста
  51. setenv LESS_TERMCAP_ue `echotc ue; echotc AF 7`
  52.  
  53. # Включить подсветку в выводе команды ls.
  54. setenv CLICOLOR                yes
  55. setenv LSCOLORS                "ExfxcxdxBxegedabagacad"
  56.  
  57. if ($?prompt) then
  58.         # Что выводить в приглашении? (описание доступных опций ниже)
  59.         set prompt = "[ %T %~ ]# "
  60.         set filec
  61.         # Размер истории в строках
  62.         set history = 500
  63.         # Сохранять не более 500 строк из истории в файл
  64.         set savehist = 500
  65.         set mail = (/var/mail/$USER)
  66.         # По нажатию клавиши tab выводить список команд, которые
  67.         # начинаются с введенной вами последовательности символов.
  68.         set autolist
  69.         set color
  70.         set colorcat
  71.         if ( $?tcsh ) then
  72.                 bindkey "^W" backward-delete-word
  73.                 bindkey -k up history-search-backward
  74.                 bindkey -k down history-search-forward
  75.  
  76.                 # Назначаем стандартные действия для клавиш:
  77.                 #     home, end, delete, insert
  78.                 # P.S. в putty без этого они не работают
  79.                 bindkey "^[[1~" beginning-of-line
  80.                 bindkey "^[[2~" overwrite-mode
  81.                 bindkey "^[[3~" delete-char
  82.                 bindkey "^[[4~" end-of-line
  83.         endif
  84. endif

Описание некоторых опций для "приглашения" (prompt):

  • %/ — текущая директория.
  • %~ — текущая директория, но в домашней директории путь будет заменен на символ '~'.
  • %h, %!, ! — количество событий в истории.
  • %M — полное имя хоста.
  • %m — имя хоста (до первой точки).
  • %B (%b) — начало (конец) текста, выделенного жирным.
  • %U (%U) — начало (конец) подчеркнутого текста.
  • %t, %@ — текущее время в 12 часовом AM/PM формате.
  • %T — текущее время в 24 часовом формате.
  • %p — текущее время (включая секунды) в 12 часовом AM/PM формате.
  • %P — текущее время (включая секунды) в 24 часовом формате.
  • %% — символ '%'.
  • %n — имя пользователя.
  • %j — количество задач.
  • %d — день недели (прописью).
  • %D — день недели (числом).
  • %w — месяц (прописью).
  • %W — месяц (числом).
  • %y — год в формате 'гг'.
  • %Y — год в формате 'гггг'.

Ну вроде все, после этого можно делать дальнейшую более конкретную для ваших целей настройку системы.

Добавить комментарий

Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.