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

Ставим screen, sudo, zsh, freecolor 
# cd /usr/ports/sysutils/screen && make install clean  
# cd /usr/ports/security/sudo && make install clean
# cd /usr/ports/shells/zsh && make install clean
# cd /usr/ports/sysutils/freecolor && make install clean
Настраиваем конфиги: 
Файл /etc/rc.conf:

ifconfig_em0=»inet 192.168.1.248 netmask 255.255.255.0″
defaultrouter=»192.168.1.1″
sshd_enable=»YES»
font8x14=»koi8-r-8×14″
font8x16=»koi8-r-8×16″
font8x8=»koi8-r-8×8″
keymap=»ru.koi8-r.win»
keyrate=»fast»

Файл /etc/profile:

export LANG=ru_RU.KOI8-R
export LC_ALL=ru_RU.KOI8-R

Файл .zshrc (после установки screen раскоментируем строки с ним):
export EDITOR=/usr/bin/ee # текстовый редактор поумолчанию
export HISTFILE=~/.zhsrc_history # файл истории команд
export HISTSIZE=50000 # размерфайла
export SAVEHIST=50000 # кол-во записей

bindkey '\e[3~' delete-char # по нажатию клавиши del - удалять текущий символ
bindkey ';5D' backward-word # ctrl+left предыдущее слово
bindkey ';5C' forward-word #ctrl+right следующее слово
bindkey "^[[1~" beginning-of-line #Включаем клавишу Home. По Ctrl-V узнаем её код

# Автоматическое завершение написания команды
autoload -U compinit promptinit
compinit
promptinit;
# Раскраска пользовательского интефейса. Каждый настраивает для себя
# Мне инетесно было вывести из под какого пользователя, папку и время работы
if [[ $EUID == 0 ]]
then
PROMPT=$'%{\e[1;31m%}%n %{\e[1;34m%}%~ #%{\e[0m%} ' # user dir %
else
PROMPT=$'%{\e[1;32m%}%n %{\e[1;34m%}%~ %#%{\e[0m%} ' # root dir #
fi
RPROMPT=$'%{\e[1;34m%}%T%{\e[0m%}' # right prompt with time
#if [ -z "$STY" ]; then
# exec screen -dR
#fi

#Не пищим при дополнении и ошибках
setopt NO_BEEP
#Перейти в директорию, если набрали путь без команды cd
setopt AUTO_CD
#Исправлять неверно набраные команды
setopt CORRECT_ALL
#Вопрос на автокоррекцию
SPROMPT='zsh: Исправить '\''%R'\'' на '\''%r'\'' ? [Yes/No/Abort/Edit] '

zstyle ':completion:*:processes' command 'ps -xuf'
zstyle ':completion:*:processes' sort false
zstyle ':completion:*:processes-names' command 'ps xho command'

# Алиасы на популярные команды :)
#alias ls='ls -G'
alias ll='ls -Alo'

#SSH . автозаполнение хостов, юзеров.
hosts=(${${${(f)"$(<$HOME/.ssh/known_hosts)"}%%\ *}%%,*})
zstyle ':completion:*:hosts' hosts $hosts
zstyle ':completion:*:(ssh|scp):*' tag-order '! users'

#Отображение в заголовке окна терминала информации о номере консоли, пути и выполняемой команде
precmd()
{
[[ -t 1 ]] || return
case $TERM in
*xterm*|rxvt|(dt|k|E)term*) print -Pn "\e]2;[%~] :: %l\a"
;;
esac
}
preexec() {
[[ -t 1 ]] || return
case $TERM in
*xterm*|rxvt|(dt|k|E)term*) print -Pn "\e]2;<$1> [%~] :: %l\a"
;;
esac
}

.screenrc:

startup_message off
deflogin on
vbell off
vbell_msg ""
caption always
caption string "%{= kw} [%{y}%H%{= kw}] %{+b kG}%M %d %{kr} %c %{dd} %{+b M}%n  %{-b dd}%-w%{+b B.}%n* %t%{-}%+w%< | %{kR} Load: %l %{kB}"
shell -$SHELL

По желанию включаем PermitRootLogin  /etc/ssh/sshd_config

Фряха готова к работе 🙂

Оставьте комментарий