Полезные команды FreeBSD
Проверить соответствие установленного ПО с деревом портов (на предмет новых версий)
[root@nas ~]# pkg_version -vL= en-freebsd-doc-20090913 < needs updating (port has 20100519) ghostscript8-nox11-8.71_1 < needs updating (port has 8.71_2) sane-backends-1.0.20_6 < needs updating (port has 1.0.21)
Узнать из какой директории портов ставилась программа
[root@nas ~]# pkg_info -o rtorrent-0.8.6_1 Information for rtorrent-0.8.6_1: Origin: net-p2p/rtorrent
Провести аудит установленного ПО
[root@nas ~]# portaudit -Fda auditfile.tbz 100% of 61 kB 42 kBps New database installed. Database created: Thu May 27 19:55:00 NOVST 2010 0 problem(s) in your installed packages found.
Cменить шелл у пользователя
1. Смотрим доступные
[root@nas ~]# cat /etc/shells # $FreeBSD: src/etc/shells,v 1.5.36.1.2.1 2009/10/25 01:10:29 kensmith Exp $ # # List of acceptable shells for chpass(1). # Ftpd will not allow users to connect who are not using # one of these shells. /bin/sh /bin/csh /bin/tcsh /usr/local/bin/bash /usr/local/bin/rbash
2. Меняем
[root@nas ~]# chsh -s csh pascal chsh: user information updated
Посмотреть rc переменные скриптов автозапуска
[root@ca-blade-8-BSD ~]# /usr/local/etc/rc.d/rsyncd rcvar # rsyncd $rsyncd_enable=YES
Посмотреть сетевые соединения
[root@dio-archive ~]# sockstat -4 | grep 873 root rsync 6120 4 tcp4 *:873 *:*
Посмотреть активность жестких дисков
# gstat dT: 1.007s w: 1.000s L(q) ops/s r/s kBps ms/r w/s kBps ms/w %busy Name 0 0 0 0 0.0 0 0 0.0 0.0| acd0 0 0 0 0 0.0 0 0 0.0 0.0| mfid0 0 0 0 0 0.0 0 0 0.0 0.0| mfid0s1 0 0 0 0 0.0 0 0 0.0 0.0| mfid0s1a 0 0 0 0 0.0 0 0 0.0 0.0| mfid0s1b 0 0 0 0 0.0 0 0 0.0 0.0| mfid0s1c 0 0 0 0 0.0 0 0 0.0 0.0| mfid0s1d 0 0 0 0 0.0 0 0 0.0 0.0| mfid0s1e 0 0 0 0 0.0 0 0 0.0 0.0| mfid0s1f 0 0 0 0 0.0 0 0 0.0 0.0| mfid0s1g
Отслеживать параметры системы в реальном времени
# vmstat -w 3 procs memory page disk faults cpu r b w avm fre flt re pi po fr sr mf0 in sy cs us sy id 0 1 0 607M 184M 132 0 0 0 131 1 0 65 1236 771 0 0 100 0 1 0 617M 180M 1518 0 0 0 1178 0 1 57 1893 725 1 0 98 0 1 0 617M 180M 3 0 0 0 7 0 2 67 817 804 0 0 100 1 1 0 617M 180M 118 0 0 0 108 0 97 104 5892 900 0 0 100 0 1 0 617M 180M 1 0 0 0 6 0 1 52 498 614 0 0 100
Мониторинг загрузки сетевых интерфейсов
# systat -ifstat /0 /1 /2 /3 /4 /5 /6 /7 /8 /9 /10 Load Average Interface Traffic Peak Total lo0 in 2.469 KB/s 2.469 KB/s 1.280 GB out 2.469 KB/s 2.469 KB/s 1.280 GB em0 in 31.014 KB/s 48.655 KB/s 3.831 GB out 20.426 KB/s 32.246 KB/s 2.314 GB
Определение занятого\свободного места на разделах
# df -h Filesystem Size Used Avail Capacity Mounted on /dev/mfid0s1a 9.7G 246M 8.7G 3% / devfs 1.0K 1.0K 0B 100% /dev /dev/mfid0s1d 4.8G 13M 4.4G 0% /tmp /dev/mfid0s1f 145G 96G 38G 72% /usr /dev/mfid0s1e 39G 1.5G 34G 4% /var /dev/mfid0s1g 129G 39G 80G 33% /smb
#cd = Сменить директорию (#cd /user/music) #cd ~ = Переход в домашний каталог (так же как и просто #cd) #cd ~otheruser = Переход в домашний каталог другого пользователя #cd - (минус) = Вернуться в предидущую директорию #pwd = Посмотреть текущее местонахождение #ls = Покажет содержимое директории #cat = Показывает содержимое файла #echo = Предназначенна для вывода параматров и перенаправление ввода/вывода #head = Посмотреть первые несколько строк файла (#head -n 10 - показать первые 10 строк файла) #tail = Посмотреть последние несколько строк файла (#tail -n 10 - показать последние 10 строк файла) #df -h = Инфо по дисковому пространству. #last reboot = Покажет историю перезагрузок. #dmesg = Покажет сообщения ядра полученные после перезагрузки. #mkdir = Создает директорию #mkdir -p = Создает сразу несколько директорий (например /root/newf1/newf2/newf3/newf4) #rmdir = Удаляет директорию (удаляет только пустую директорию) #rm = Удаляет один файл #rm -r = Удаляет директорию и все содержимое (папки, файлы) #touch = Создает пустой файл. Если файл существует, то тогда комманда touch меняет дату модификации файла. #chown = Сменить владельца и поменять права доступа на директорию. (#chown username foldername) #chown -R username foldername = Сменить владельца на директорию и все её поддиректоии и файлы #chgrp = Изменить группу #chmod = Изменяет права доступа для файла/директории #chmod ugo +-= rwx (u-user; g-group; o-other) (+allow; -deny; =add) (r-read; w-write; x-execute) #chmod u+rwx test.cf = Разрешить пользователю "читать", "изменять" и "выполнять" файл test.cf
Для работы с pkg_info при использовании ключа x нет необходимости указывать версию по, например:
%pkg_info -xo apache Information for apache-2.2.15_9: Origin: www/apache22 %pkg_info -xD apache Information for apache-2.2.15_9: Install notice: To run apache www server from startup, add apache22_enable="YES" in your /etc/rc.conf. Extra options can be found in startup script. Your hostname must be resolvable using at least 1 mechanism in /etc/nsswitch typically DNS or /etc/hosts or apache might have issues starting depending on the modules you are using.
Проверяем наличие библиотек в зависимостях определенного бинарника
$ ldd `which bash` /usr/local/bin/bash: libncurses.so.7 => /lib/libncurses.so.7 (0x28101000) libintl.so.8 => /usr/local/lib/libintl.so.8 (0x28144000) libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x2814d000) libc.so.7 => /lib/libc.so.7 (0x28242000) $ csh % ldd `which bash` /usr/local/bin/bash: libncurses.so.7 => /lib/libncurses.so.7 (0x28101000) libintl.so.8 => /usr/local/lib/libintl.so.8 (0x28144000) libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x2814d000) libc.so.7 => /lib/libc.so.7 (0x28242000) %bash [ooorc@ns ~]$ ldd `which bash` /usr/local/bin/bash: libncurses.so.7 => /lib/libncurses.so.7 (0x28101000) libintl.so.8 => /usr/local/lib/libintl.so.8 (0x28144000) libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x2814d000) libc.so.7 => /lib/libc.so.7 (0x28242000)