Данный список команд, будет полезен в качестве шпаргалки любому пользователю FreeBSD
Прервать выполняющуюся команду:
^C (Ctrl-C)
Выйти из shell:
exit
Показать документацию к команде ls. Вместо ls можно подставить любую другую команду:
man ls
Описание структур каталогов:
man hier
Показать текущую дату и время:
date
Показать продолжительность того, сколько времеи включена система:
uptime
Показать кто залогинен:
w
Показать последние 10 входов:
last -10
Показать директорию, в которой сейчас находимся:
pwd
Перейти в директорию /usr/local/etc/:
cd /usr/local/etc/
Вместо /usr/local/etc/ можно указать любую другую директорию, в которую есть доступ.
Перейти в каталог на один уровень вверх:
cd ..
Перейти в свою домашнюю директорию:
cd ~
Перейти в корневую директорию:
cd /
Узнать размер папки:
du -hsx /путь/до/папки
Показать содержимое текущей директории:
ls
Показать подробно содержимое текущей директории (в выводе команды указаны даты, права на файлы/директории):
ls -l
Показать список всех файлов, включая скрытые файлы:
ls -a
Показать права доступа к файлу filename:
ls -l filename
Показать права доступа к директории directory:
ls -ld directory
Создать даректорию newdir в папке tmp:
mkdir /tmp/newdir/
Создаём директорию subdir, даже если у нас отсутствует папка newdir. Все папки создадутся автоматически:
mkdir -p /tmp/newdir/subdir/
Удалить директорию /tmp/newdir/ . Вместо /tmp/newdir/ можете указать нужную вам папку:
rmdir /tmp/newdir/
Удалить непускую директорию newdir. Вместо «newdir» у вас может быть другая папка:
rm -rd /tmp/newdir/
Список частовводимых комманд:
history | awk ‘{a[$2]++}END{for(i in a){print a[i] » » i}}’ | sort -rn | head
Колличество активных соединений tcp:
netstat -an|grep tcp | wc -l
Колличество активных соединений udp:
netstat -an|grep udp | wc -l
Прочитать несколько байт файла и определить тип файла:
file filename
Пример 1:
file /etc/rc.conf
/etc/rc.conf: ASCII English text
Пример 2:
file /bin/cp
/bin/cp: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), for FreeBSD 7.1, dynamically linked (uses shared libs), FreeBSD-style, stripped
Вывести на экран содержимое файла filename:
less filename
space(пробел) = следующая страница, b = предыдущая страница,
q = выйти, / = искать далее, ? = искать в предыдущем, n = повторить поиск.
Вывести на экран содержимое файла filename. -M = показывать название файла:
less -Mi filename
Показать количество строк в файле filename:
wc -l filename
Показать первые 5 строк файла filename (количество строк можно указать самостоятельно):
head -5 filename
Показать последние 5 строк файла filename (количество строк можно указать самостоятельно):
tail -5 filename
Показать последние 10 строк файла, подождать и показать новые линии по мере их добавления (^ C для выхода). Особенно полезено для лог-файлов:
tail -f filename
Создать файл filename, если он не существует или обновить время создания, если такой файлик имеется:
touch filename
Удалить файл filename:
rm filename
Копировать файл filename и присвоить ему новое имя — newname:
cp filename newname
Копировать файл или файлы в директорию /tmp/ ,название файлов и директорию укажите самостоятельно:
cp file1 file2 … /tmp/
Копировать директорию /tmp/ в директорию /home/ ,название директорий укажите самостоятельно:
cp -R /tmp/ /home/
Перенести файл oldname в туже директорию, где он находится, но под другим названием — newname. Проще говоря, переименовать файл oldname в newname:
mv oldname newname
Перенести файл или файлы в директорию /tmp/ , название файлов и директорию укажите самостоятельно:
mv file1 file2 … /tmp/
Сделать жёсткую ссылку newname на файл filename:
ln filename newname
Найти все файлы в директории /etc/ , или в любой другой указанной вами директории (/etc/ -для примера):
find /etc/ -type f
Найти все файлы в директории /etc/, начинающиеся с rc. Вместо /etc/ и rc укажите свои данные:
find /etc/ -type f -name ‘rc*’
Читать сжатый текстовый файл, без распаковки его на диск:
gzip -dc filename.gz | less
bzip2 -dc filename.bz2 | less
Показать содержимое сжатого архива:
tar -tzf filename.tgz или .tar.gz
tar -tjf filename.tbz2 или .tar.bz2
Извлеч содержимое архива filename.tgz в директорию /tmp/:
tar -xvzf filename.tgz -C /tmp/
Извлеч содержимое архива filename.tbz2 в директорию /tmp/:
tar -xvjf filename.tbz2 -C /tmp/
Извлеч содержимое архива filename.tgz в текущую директорию:
tar -xvzf filename.tgz
Извлеч содержимое архива filename.tbz2 в текущую директорию:
tar -xvjf filename.tbz2
Показать все процессы:
ps auxw
Показать все процессы «sshd»:
ps auxw | grep sshd
Постоянно показывать наиболее активные процессы (q — выход):
top
Отправить сигнал для остановки процесса, идентификатором которого является его pid:
kill pid
или
kill -TERM pid
Послать сигнал всем процессам, чье имя «httpd»:
killall httpd
Искать команду cp в PATH и показать, где она была найдена:
which cp
Показать 20 последних введённых команд:
history 20
Показать все переменные окружения:
printenv
Показать одну переменную окружения ‘PATH’:
printenv PATH
или
echo $PATH
Переменные среды можно установить в ~/.profile для sh, ~/.bash_profile для bash, или ~/.cshrc для csh
Показать текущие uid, gid и дополнительные groups:
id
Показать текущее имя пользователя:
whoami
Стать root’ом (пользователь должен быть в группе «wheel»):
su
Изменить uid на username:
su username
Показать все учётные записи (выводится содержимое файла /etc/passwd, где они перечислены):
cat /etc/passwd
Показать все группы (выводится содержимое файла /etc/group, где они перечислены):
cat /etc/group
Создать пользователя username; — m = создать домашную директорию:
pw useradd username -m
Изменить свой пароль:
passwd
Изменить пароль пользователя username (имеет право только root):
passwd username
Добавить пользователя username в группу «wheel» (или отредактируйте /etc/group):
pw usermod username -G wheel
Удалить пользователя username; -r = удалить домашную директорию:
pw userdel username -r
Показать все учётные записи с зашифрованными паролями:
cat /etc/master.passwd
Показать примонтированные файловые системы:
mount
Показать используемое и свободное место на всех примонтированных файловых системах (-h = для большей читабельности для людей, -m = если надо узнать размер в Мб):
df
df -h
df -m
Список процессов с открытыми файлами:
fstat
Показать файловую таблицу:
cat /etc/fstab
Показать слайсы устройства ad0:
fdisk /dev/ad0
Показать статистику дисковых операций ввода/вывода каждые 2 секунды:
iostat 2 gstat -I 2s
Показать список установленных пакетов:
pkg_info
Показать подробное описание пакета «zip» (вместо zip укажите любой установленный у вас пакет):
pkg_info zip*
Показать список файлов, включенных в пакет «zip»:
pkg_info -L zip*
Установить пакет foo-1.2.3.tbz:
pkg_add foo-1.2.3.tbz
Установить пакет foo из FTP сервера, используемого по умолчанию:
pkg_add -r foo
Установить пакет foo из альтернативного FTP сервера:
PACKAGEROOT=»ftp://ftp.freebsd. org» pkg_add -r foo
Удалить пакет foo-1.2.3:
pkg_delete foo-1.2.3
Выполнять после установки пакетов, для повторного сканирования PATH. (Необходимо только если используете csh):
rehash
Показать загруженные модули:
kldstat
Загрузить модуль:
kldload название_модуля
Выгрузить модуль:
kldunload название_модуля
Показать все сетевые интерфейсы:
ifconfig -a
Показать таблицу маршрутизации:
netstat -r -n
Добавить статический маршрут по умолчанию:
route add default 192.168.0.254
Отправить ping пакеты на адрес 1.2.3.4, проверка доступности хоста (^C для выхода):
ping 1.2.3.4
Отправка пакетов до адреса 1.2.3.4 и отображение промежуточных найденных маршрутизаторов:
traceroute -n 1.2.3.4
Показать все пакеты, переданные и принятые на интерфейсе em0:
tcpdump -i em0 -n -s1500 -X
Показать только заголовки tcp пакетов приходящих/уходящих на 80 порт:
tcpdump -i em0 -n tcp port 80
Открыть TCP соединение на порт 80 хоста с адресом 1.2.3.4:
telnet 1.2.3.4 80
Инициализация настроек сетевых интерфейсов в /etc/rc.conf:
/etc/rc.d/netif start
Инициализация настроек статических маршрутов из /etc/rc.conf:
/etc/rc.d/routing start
Настройка интерфейса с пометкой «DHCP» в /etc/rc.conf:
/etc/rc.d/dhclient start
Показать активные сетевые подключения:
netstat -finet -n
Показать процессы слушающие на IPv4 sockets:
sockstat -4 -l
Перезагрузить ОС:
reboot
Выключить ПК, немедленно
shutdown -p now
Права на файлы/папки:
права на файлы и папки обозначаются в виде цифр или букв:
4 = read (разрешение на чтение)
2 = write (разрешение на запись)
1 = execute (разрешение на выполнение)
Права представлены тремя цифрами:
первая цифра — разрешения для вас
вторая цифра — разрешения для группы
третяя цифра — разрешения для всех остальных
Сложение цифр можно добиться установления прав. Например:
3 (2+1) — разрешение на запись и выполнение файла (каталога);
5 (4+1) — разрешение на чтение и выполнение;
6 (4+2) — разрешение на чтение и запись;
7 (4+2+1) — разрешение на чтения, запись и выполнение
То есть существует всего семь вариантов:
7 = read, write & execute (чтение, запись, выполнение);
6 = read & write (чтение и запись);
5 = read & execute (чтение и выполнение);
4 = read (чтение);
3 = write & execute (запись и выполнение);
2 = write (запись);
1 = execute (выполнение).
Для установления прав доступа используется команда CHMOD.
На примере нагляднее:
chmod 777 /tmp/file.sh -разрешить читать, изменять, выполнять файл file.sh всем
chmod 766 /tmp/file.sh -разрешить себе читать, изменять, выполнять файл file.sh, а группе и всем остальным только читать, изменять.
Если надо дать права всем файлам в папке и всему содержимому включая подпапки(рекурсивно), надо использовать параметр -R, т.е.:
chmod -R 766 /tmp/
Узнать погоду из консоли (должен быть установлен curl, Вместо Moscow напишите свой город):
curl -s «http://www.google.com/ig/api?weather=Moscow» | sed ‘s|.*.*|1|’
Узнать количество установленной физической памяти:
cat /var/run/dmesg.boot | grep «real memory»
Узнать переменные окружения (PATH) в языке csh (по умолчанию во FreeBSD):
setenv | grep PATH
Перестартовать сеть (сетевое подключение по ssh сохранится)
/etc/rc.d/netif restart
Остановить сетевую карту:
ifconfig network-interface down
здесь network-interface — это интерфейс сетевой карты, который можно посмотреть командой ifconfig
Аналогично запуск сетевой карты:
ifconfig network-interface up
Получить список поднятых сетевых интерфейсов:
ifconfig -u
Получить список выключенных сетевых интерфейсов:
ifconfig -d
Посмотреть размер директории:
du -h
Перезапустить ipfw:
/etc/rc.d/ipfw restart
Информация об установленном CPU:
sysctl -a | egrep -i ‘hw.machine|hw.model|hw.ncpu’
Узнать все IP-адреса сайта:
host -t a mediaunix.com
Создать дамп базы mysql:
mysqldump -u ЛогинАдминаБД -pПарольАдминаБД -B ИмяБД > /путь/куда/сохранить/дамп/базы/ИмяБазы.sql
Настроить дату и время на freebsd:
date yymmddhhss
где
yy -сокращённо год (две последние цифры)
mm -месяц
dd -день
hh -час
ss -минуты
Синхронизировать дату и время с сервером:
ntpdate pool.ntp.org