Часто бывает ситуация, когда нужно срочно подсказать ту или иную комбинацию команд своим знакомым, а оно ж как всегда — если срочно, то забывается :).

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

Самым первым, хочу отметить команду netstat, которая помогает узнать многое о сети.
netstat -rn — узнать маршруты, в том числе и default.

ifconfig — показать состояние всех интерфейсов.

# ifconfig rl0 down - положить интерфейс rl0
# ifconfig rl0 up - поднять интерфейс rl0
# ifconfig -d - посмотреть список отключенных интерфейсов
# ifconfig -u - список включенных сетевых карт

Загрузка:

boot /boot/kernel.old - загрузка со старого ядра

Клонирование:

# cd /usr/ && pax -p eme -X -rw . /backup/usr/ - полное клонирование раздела /usr/ 
на предварительно подключенный жесткий диск в /backup/usr/

Часто бывает что после отключения электричества или внезапного reseta ОС, FreeBSD перестает грузится и выходит в однопользовательский режим (single mode) и просит проверить винт на ошибки, в этом случае нам поможет:

fsck -y
fsck_ffs /dev/ad0s1a
fsck_ufs /dev/ad0s1a
или просто прописать в /etc/rc.conf
fsck_y_enable="YES"
также можно добавить:
background_fsck="NO"

но это приведет к более длительному запуску системы.

для проверки, примонтируем все разделы:

mount -a
возможно понадобятся основные ключи:
-r,-w,-f,-u
</code>
<strong>Сбросить root пароль, при условии что на загрузчике тоже нет пароля:</strong>
<code>
1. грузимся в single mode
2. # mount -arw
3. # passwd root
4 Пишем новый пароль для root

Заменить fetch на wget:

в /etc/make.conf прописать
FETCH_CMD=wget
Заставить сервер качать порты и пакеты с интернета через прокси:
HTTP_PROXY="http://192.168.1.1:3128"
FTP_PROXY="http://192.168.1.1:3128"
где, 192.168.1.1 адрес прокси сервера и 3128 его порт.
 
<strong>Ходить пользователю в интернет через прокси:</strong>
в ~.cshrc:
setenv  SOCKS_SERVER    192.168.1.1:1080  
setenv  HTTP_PROXY      192.168.1.1:3128  
setenv  HTTP_PROXY_AUTH "basic:*:user:pass"
 
на лету включить интернет локальному пользователю через прокси:
setenv HTTP_PROXY "http://user:pass@192.168.1.1:3128"
setenv FTP_PROXY "http://user:pass@192.168.1.1:3128"
 
user и pass - это данные авторизации на PROXY

Дополнительные команды утилиты make:

make fetch - скачивает архив порта в котором вы находитесь
make extract - распаковывает его
make depends - перестроить зависимости
make patch - применить патчи к приложению
make build - собрать приложение из исходных тестов
make clean - "почистить" исходники после сборки
make deinstall - деинсталлировать приложение
make reinstall - переустановить приложение после удаления
make package - построить из порта package
make FORCE_PKG_REGISTER=YES install - принудительная установка порта

Такой строкой:

cat /etc/passwd | cut -d: -f1 | grep -v \# - получаем список пользователей системы

Отключение ACPI.

1. acpi_load="NO" - добавить в loader.conf
2. unset acpi_load - если ядро не грузится
3. hint.acpi.0.disabled="1" - добавить в /boot/device.hints
4. loader.acpi_disabled_by_user="1"

Если при запуске apache вываливается сообщение:
[warn] (2)No such file or directory: Failed to enable the ‘httpready’ Accept Filter
то необходимо подгрузить в ядро модуль kldload accf_http, а также прописать его в конфиг bootloaderа.

echo 'accf_http_load="YES"' >> /boot/loader.conf

Выборка из конфигов используя регулярное выражение:

# cat /usr/local/etc/config.conf | grep -v "#" | sed -e '/^ *$/d'
или
# cat /usr/local/etc/config.conf | grep -v "#" | sed '/^$/d'
или
# cat /usr/local/etc/config.conf | grep -v '#' | grep "[^[:space:]]"
- показать файл без комментариев и пустых строк

Добавление статических маршрутов через /etc/rc.conf:

static_routes="dns1 dns2 lan2"
route_dns1="-host dns1_host your_gw"
route_dns2="-host dns2_host your_gw"
route_lan2="-net ip_remote_lan/24 your_gw"

Показать содержимое файла configure.conf без комментариев:

# cat configure.conf |grep -v '#'

Иногда есть необходимость, посмотреть что делает другой пользователь на другом терминале сервера. Для этого используем:

# w
9:16PM up 155 days, 9 mins, 2 users, load averages: 0.07, 0.06, 0.00
USER TTY FROM LOGIN@ IDLE WHAT
user1 p0 domain.pp.ua 10:01PM – w
user2 p1 domain.pp.ua 10:06PM – -bash (bash)
Теперь подключаемся к сеансу:
watch p1

Даунгрейд порта

Иногда возникает необходимость откатить приложение установленное через порты на более раннюю версию. Для этого, сначала откатим данные в нашей базе портов на нужную версию.
К примеру будем откатывать php:

# cd /usr/ports/ports-mgmt/portdowngrade && make install clean 
# /usr/local/sbin/portdowngrade -s “anoncvs@anoncvs.tw.FreeBSD.org:/home/ncvs” lang/php5

Выбираем 1, выбираем номер версии на которую нужно откатиться, пишем yes.
Теперь мы получили нужную версию в дереве портов. Теперь, чтобы переустановить приложение в систему:

portupgrade -f php5

Если нужно даунгрейдить другие приложения, то делаем то же самое, только указываем нужный порт повторить.

Напоминаю всем копирующим мой контент о существовании закона "Об авторском праве".
В связи с этим, прошу во избежании конфликтов при копировании данного материала, ставить на него ссылку:

http://noted.org.ua/834


Также, вы можете отблагодарить меня переслав любую сумму на любой кошелек WebMoney, для поддержания данного ресурса. Или просто админу на пиво ;)

Кошельки для получения благодарности:
R386985788805
U234140473141
Z147712360455

На данной странице нет комментариев, возможно они закрыты. Если Вы хотите оставить свой комментарий, перейдите на специально созданный раздел

Add your comment now

Please note: JavaScript is required to post comments.