Пропустить навигацию.

Справочник команд Unix / Linux

Файловые команды
ls – список файлов и каталогов
ls -al – форматированный список со скрытыми каталогами и файлами
cd dir – сменить директорию на dir
cd – сменить на домашний каталог
pwd – показать текущий каталог
mkdir dir – создать каталог dir
rm file – удалить file
rm -r dir – удалить каталог dir
rm -f file – удалить форсированно file
rm -rf dir – удалить форсированно каталог dir *
cp file1 file2 – скопировать file1 в file2
cp -r dir1 dir2 – скопировать dir1 в dir2; создаст каталог dir2, если он не существует

оптимизация =)))

не знаеш что это не трогай и бо убьешь .. !!!

sysctl kern.ipc.maxsockets=204800
sysctl kern.ipc.maxsockets=51200 *
sysctl kern.ipc.numopensockets

/boot/loader.conf
net.inet.tcp.tcbhashsize=32768
sysctl kern.ipc.somaxconn=4096

sysctl kern.maxfiles=204800
sysctl kern.openfiles

sysctl kern.maxfilesperproc=200000

nginx:worker_rlimit_nofiles 200000

sysctl kern.ipc.nmbclusters=51200

sysctl net.tcp.recvspace=8192
sysctl net.inet.tcp.recvbuf_auto=0
sysctl kern.ipc.nmbjumbop=48000
sysctl net.inet.tcp.sendspase=16384
sysctl net.inet.tcp.sendbuf_auto=1

обновление портов =) вечно забываю =)

При первом обновлении необходимо выполнить следующие команды:
portsnap fetch && portsnap extract

При последующих обновлениях
portsnap fetch update

Пример,
cd /usr/ports/
portsnap fetch && portsnap extract

настройка sshguard freebsd или как защититься от подбора (брута) пароля на сервере

как то в один прекрасный вечер .. точнее ночь меня заебло что брутят пасс на сервачок .. =)))
ну вот и решил что пора позаботиться об этом .... и бо с придумыванием паролей у меня сложно =)))
Однако ставим =)))
cd /usr/ports/security/sshguard-ipfw
make CONFIGURE_ARGS="--prefix=/usr/local --with-firewall=ipfw --with-ipfw-rules-range=40-90" install clean

но можно еще сделать по другому кому как нравиться =)))

If you have an allow policy higher than 55050 in your IPFW chain, move it to a lower priority. E.g.:

ipfw list
# 1240 allow ip from any to me 22
ipfw del 1240

Поиск подстроки в файлах на сервере FreeBSD

Ок, чтобы долго не бегать, сразу дам ответ на вопрос «Как найти строку во всех файлах в текущей папке»:

find $PWD -name '*.*' -exec grep -l "TEST" {} \;

Использовать по протоколу ssh, $PWD указывает на текущую директорию (можно посмотреть путь командой pwd).

Параметр -name '*.*' указывает что идёт поиск всех файлов по маске *.*. К этим файлам выполняем (-exec) команду grep, которая ищет строку TEST в списке файлов и (можете изменять на свою, не забывайте только экранировать некоторые символы, например кавычки) и выводит список всех файлов (-l).

Вроде просто.

Как создать и распакавать архив tar и tar.gz

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

Условимся, что все операции выполняются по протоколу ssh.

Вопрос: Как создать tar архив?

Ответ: tar -cf arc.tar *

«No space left on device» или ищем кто занимает всё место на жёстком диске

du -h -d 1 /

Видим список файлов с указанием их размера. Например какая-то ошибка в скрипте вызывает постоянное логирование в файл в папке /var, то есть вижу что-то вроде:

781M /var

Ок:

du -h -d 1 /var

...

du -h -d 1 /var/log

И т.д., пока не найдём пожиратель дискового пространства.

Может быть есть более изящный способ определения причны «No space left on device», но и этот хорошо работает.

быстрый поиск файлов во freebsd при помощи Locate

сначала обновим базу
выполняем /usr/libexec/locate.updatedb
и идем пить чай или курить 5 минут =)))

дальше когда все обновиться можно работать .. но желательно еще добавить /usr/libexec/locate.updatedb в cron хотя бы раз в 3 дня обновлять базу =)

теперь можем осуществлять поиск
делается так =) к примеру нам нужно найти где находиться
rc.conf

выполняем
locate rc.conf
и нас появиться список где он есть вот пример как у меня =)

[Василич@test:/]# locate rc.conf
/etc/defaults/rc.conf
/etc/rc.conf
/etc/rc.conf_old
/usr/obj/usr/src/share/man/man5/rc.conf.5.gz

IPFW правила для хостинга

в /etc/rc.conf

прописываем
# SECURITY
tcp_extensions="NO"
tcp_drop_synfin="YES"
tcp_restrict_rst="YES"
icmp_drop_redirect="YES"
icmp_log_redirect="YES"
static_routes="0 1 2 3 4 5 6"
route_0="-net 10.0.0.0/8 -iface lo0 -blackhole"
route_1="-net 172.16.0.0/12 -iface lo0 -blackhole"
route_2="-net 192.168.0.0/16 -iface lo0 -blackhole"
route_3="-net 169.254.0.0/16 -iface lo0 -blackhole"
route_4="-net 192.0.2.0/24 -iface lo0 -blackhole"
route_5="-net 224.0.0.0/4 -iface lo0 -blackhole"
route_6="-net 240.0.0.0/4 -iface lo0 -blackhole"
firewall_enable="YES"

Пара трюков в работе: dns сервера, /etc/hosts и vim

Так случилось, что ночью перестал открываться liveinternet.ru, а ping liveinternet.ru показал, что пинг идёт на 127.0.0.1.

«Хм, странно,» — cказал я себе: «это не винда и вирусов быть не должно». Посмотрев файл /etc/hosts понял что дело не в нём. Там только мои записи были.

Хорошо, тогда попробуем посмотреть цепочку запросов-ответов.

whois liveinternet.ru

% By submitting a query to RIPN's Whois Service
% you agree to abide by the following terms of use:
% http www ripn.net/about/servpol.html#3.2 (in Russian)

RSS-материал