Шпаргалки для freebsd

Шпаргалки для FreeBSD. Краще таке записати або запам'ятати

Черговість запуску сервісів FreeBSD.
Подивитися черговість запуску сервісів в freebsd.
#rcorder /etc/rc.d/* /usr/local/etc/rc.d/*

Запустити або зупинити службу можна скриптом, який лежить в папці /etc/rc.d/.

мережеві служби. Система FreeBSD 5.x / 6.x скрипт для роботи з мережевими інтерфейсами -> netif. Доступний тільки для рута (root):

Стартуємо FreeBSD мережеву службу:
# /etc/rc.d/netif start
Зупинити FreeBSD мережеву службу:
# /etc/rc.d/netif stop
restart FreeBSD мережеву службу:
# /etc/rc.d/netif restart

Те-ж саме за допомогою ifconfig (якщо багато мережевої і немає необхідності "ложить" всі мережеві інтерфейси)

FreeBSD оновити / перезавантажити таблицю маршрутизації (routing)
Обов'язково треба оновити "routing table" після перезавантаження мережевої служби:
# /etc/rc.d/routing restart

Зробити все через ssh підключення:

Треба ввести команди як одну. Тоді все виконається в фоновому режимі і ніяких проблем з бойовим серваке не виникне:
# /etc/rc.d/networking restart /etc/rc.d/routing restart
Використання програмного RAID-1 (gmirror) в FreeBSD.

Програмні реалізації RAID, що з'явилися в FreeBSD з версії 5.3:

* Gstripe (8) забезпечує чергування або RAID 0
* Gmirror (8) обеспечиват віддзеркалення / дуплекс або RAID 1
* Graid3 (8) забезпечує чергування з контролем парності або RAID 3
Початкова g вказує на те, що ці утиліти користуються можливостями, які надає GEOM (модульна дискова структура).
Конфігурація зеркалирования / дуплекса:
Для того щоб зробити RAID1, необхідно мати два ідентичних (одного виробника і ємності) жорстких диска.
# Sysctl kern.geom.debugflags = 16
kern.geom.debugflags: 0 -> 16 (необхідна зміна системи для можливості виконання наступної команди)
# Gmirror label -v -b round-robin gm0 / dev / ad0
Metadata value stored on / dev / ad0 (gmirror label створює дзеркало, функція -v включає режим налагодження, -b round-robin вибирає алгоритм балансування (в даний час це найбільш швидкодіючий алгоритм), gm0 - ім'я першого дзеркала GEOM і / dev / ad0 вказує на диск, що містить дані для віддзеркалення.)
# Echo geom_mirror_load = "YES"> /boot/loader.conf (автоматичне завантаження модуля geom)
В / etc / fstab змінюємо кожен ad на gm і вставляємо mirror після / dev. (Прим. / Dev / ad0s1a редагуємо на / dev / mirror / gm0s1a)
# reboot
# Gmirror insert gm0 / dev / ad2
GEOM_MIRROR: Device gm0: provider ad2 detected.
GEOM_MIRROR: Device gm0: rebuilding provider ad2. (Вставляємо другий диск в дзеркало).
# Gmirror list
# Gmirror status
# gstat

Відновлення попереднього ядра, після невдалої завантаження нового.
При завантаження вибрати 6 пункт меню (loader prompt)
OK unload
OK load kernel.old (/boot/kernel.old/kernel або /boot/kernel.GENERIC/kernel)
boot

make WITH_ІМЯОПЦІІ = yes WITHOUT_ІМЯОПЦІІ = yes BATCH = yes install make clean

В останньому випадку включаємо / вимикаємо опції і говоримо приймати стандартні параметри (запит налаштувань порту або залежностей) встановити і провести очистку від тимчасових файлів

При необхідності можна використовувати примусову установку додатка (порту) командою:
make FORCE_PKG_REGISTER = YES install

Відключення 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"

Якщо Вам потрібен список користувачів системи виконуємо скрипт:
cat / etc / passwd | cut -d: -f1 | grep -v #

The cut command selects portions of a file. We use ":" as the delimiting character. And we want only the first field. The grep eliminates lines with # in them, which normally appear at the start of the password file.

Exercises for the interested and motivated:
* Try the above command without the grep
* Remove the before the #
* Try -f5 instead of -f1.

видалення користувача
# Rmuser ім'я-користувача
Matching password entry:
ім'я-користувача: *: 1002: 0 :: 0: 0: ім'я-користувача: / home / ім'я-користувача: / bin / sh
Is this the entry you wish to remove? y
Remove user # 's home directory (/ home / ім'я-користувача)? y
Removing user (ім'я-користувача): files (1) mailspool home passwd.

cat /etc/exim/exim.conf|grep -vi "^ [#] * $" | grep -vi "^ [#] * #. * $"

пошук тексту в файлах папки і рекурсивно підпапках

find / dir / to / be / searched -name # '*. * #' -exec grep # 'Search string #' <> / Dev / null;

Запустити або зупинити службу можна скриптом, який лежить в папці /etc/rc.d/.

Нас ітересуют мережеві служби - ними і займемося. Система FreeBSD 5.x / 6.x скрипт для роботи з мережевими інтерфейсами -> netif. Доступний тільки для рута (root):

Стартуємо FreeBSD мережеву службу:
# /etc/rc.d/netif start
Зупинити FreeBSD мережеву службу:
# /etc/rc.d/netif stop
restart FreeBSD мережеву службу:
# /etc/rc.d/netif restart

Manual method using ifconfig

FreeBSD оновити / перезавантажити таблицю маршрутизації (routing)
Обов'язково треба оновити "routing table" після перезавантаження мережевої служби:
# /etc/rc.d/routing restart

Як рестартонуть мережеву службу через ssh підключення?

Треба ввести команди як одну. Тоді все виконається в фоновому режимі і ніяких проблем з бойовим серваке не виникне:
# /etc/rc.d/networking restart /etc/rc.d/routing restart

`.cshrc`:
setenv SOCKS_SERVER 192.168.1.1:1080
setenv HTTP_PROXY 192.168.1.1:3128
setenv HTTP_PROXY_AUTH "basic: *: user: pass"

Для того, щоб при виконанні make качалка (fetch) лізла в інет можна

а в змінні середовища вписати

Оновлення локального дерева портів.

Програмне забезпечення для FreeBSD постійно вдосконалюється. І щоб йти в ногу з часом, потрібно хоча б раз на місяць оновлювати його.
У даній статті ми розглянемо оновлення локального дерева портів і трохи торкнемося оновлення програм за допомогою набору портів.

Порт - це один з дуже зручних способів установки програмного забезпечення для FreeBSD. Щоб встановити потрібну програму достатньо увійти в директорію з потрібним портом і дати лише одну команду make
install.

Що ж відбувається при виконанні make install?

1. Якщо в каталозі / usr / ports / distfiles що невиявлений встановлюється пакет, то виконується команда make fetch. Завантажується з ftp сервера вихідний tar-архів і копіюється в каталог / usr / ports / distfiles. Перевіряються залежність від інших пакетів, потрібні викачуються.

2. Виконується команда make checksum. Тобто перевіряється справжність архіву tar.

3. Далі архів расспаковивается в робочий каталог work (make extract).

4. У вихідний код вносяться виправлення з каталогу files (make patch).

5. Виконується сценарій конфігурації make configure.

6. компілює вихідний код (make build)

Після інсталяції порту, запис про нього створюється в каталозі / var / db / pkg /.

Ну що ж за справу! Для поновлення локального дерева портів нам знадобиться пакет cvsup. Встановимо його.

# Cd / usr / ports / net / cvsup /
# Make install

Створимо конфігурацію за допомогою псевдо-порту cvsupit

# Cd / usr / ports / net / cvsupit /
# make
# Make install

На екрані має з'явиться меню псевдо-порту cvsupit. Виберіть пункт меню The 5.0-current branch (. = HEAD). В інших меню прийміть всі за замовчуванням (не встановлюйте вихідні / src) і відмовтеся від поновлення
CVSup.

У каталозі / etc повинен з'явиться файл cvsupfile. Відкрийте його і закоментіруйте всі рядки починаються з src. Має вийти приблизно наступне:

* Default host = cvsup.ru.FreeBSD.org
* Default base = / usr
* Default prefix = / usr
* Default release = cvs
* Default tag =.
* Default delete use-rel-suffix
# Src-all
* Default tag =.
ports-all
doc-all

А тепер найголовніше - оновлюємо порти:

# / Usr / local / bin / cvsup -g -L 2 / etc / cvsupfile
Я обновляю дерево портів щотижня через cron. Я створив файлик cvsup_up.sh в / usr / local / sbin / і помістив в нього команду поновлення портів (див. Вище). В / etc / crontab додав наступний рядок
35 23 * * 6 root /usr/local/sbin/cvsup_up.sh

Щоб подивитися які програми мені потрібно оновити, я використовую команду

# Pkg_version -v> / tmp / newport

Для поновлення будь-якої програми заходимо в потрібний порт і послідовно виконуємо наступні команди:

# Make clean
# make
# Pkg_delete -f Имя_Пакета
# Make install clean

Имя_Пакета - це назва встановленого раніше пакета (наприклад cvsup-6.1_3)

Схожі статті