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

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

Самым первым, хочу отметить команду 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/?p=834


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

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

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

Add your comment now

You must be logged in to post a comment.