Шпаргалка команд Linux.(Debian/Ubuntu)

Шпаргалка популярных консольных команд для Linux.

Файлы и директории:

cd                   переход в директорию.
cd /home  перейти в директорию ‘/home‘.
cd ..              перейти в директорию уровнем выше.
cd ~user    перейти в домашнюю директорию пользователя user.

pwd             показать текущую директорию.

mkdir dir                                      создать директорию с именем ‘dir‘.
mkdir -p /tmp/dir1/dir2  создать дерево директорий.

rmdir dir                                       удалить директорию с именем ‘dir‘.

rm file                                             удалить файл file.
rm -R(рекурсивно) dir           удалить директорию dir.

mv dir new_dir или file new_file     переименовать или переместить файл или директорию .
mv /var/dir   /home/test/dir                переместить dir из директории var в home/test.

ls   [-ключ]                            печатает содержание каталога

-l       выдавать тип файла, права доступа к файлу имя владельца, имя группы, размер файла (в байтах), временной штамп и имя файла.
-F      для каждого имени каталога добавлять суффикс `/’, для каждого имени FIFO — `|’ и для каждого имени исполняемого файла `*’.
-a     показать скрытые файлы и директории в текущей директории.

tar — наиболее распространенный архиватор, используемый в Linux-системах.
Сам по себе tar не является архиватором в привычном понимании этого слова, т.к. он самостоятельно не использует сжатие.

tar [ключ] [имя_файла.tar] [файл или директория]
-c (создание архива).
-x (распаковка архива).
-f(упаковка содержимого в файл).
-v(вывод списка упакованных файлов в процессе работы) .
-z gzip сжатие tar.gz.
-j bzip2 сжатие tar.bz2.
tar -cvzf files.tar.gz ~/files   упаковка файла или директории сжатием gzip.
tar -cvf files.tar ~/files            упаковка без сжатия.

tar -xvf /path/to/test.tar       распаковка архива.
/path/to/                                        альтернативное место.
tar -xvf /path/to/test.tar -C /home/test/1/
-tf                                                             просмотр содержимого архива.
tar -tf /path/to/test.tar

chmod программа для изменения прав доступа к файлам и директориям.

ch 777 file      установить права 777 на fail.
ch 777 *            установить на все файлы права 777 .
ch -R 777 *    установить на все файлы и поддиректории права 777.

400 (-r———)    Владелец имеет право чтения; никто другой не имеет права выполнять никакие действия.
644 (-rw-r—r—)  Все пользователи имеют право чтения; владелец может редактировать.
660 (-rw-rw—-)Владелец и группа могут читать и редактировать; остальные не имеют права выполнять никаких действий.
664 (-rw-rw-r—)Все пользователи имеют право чтения; владелец и группа могут редактировать.
666 (-rw-rw-rw-)Все пользователи могут читать и редактировать.
700 (-rwx——)  Владелец может читать, записывать и запускать на выполнение; никто другой не имеет права выполнять никакие действия.
744 (-rwxr—r—)  Каждый пользователь может читать, владелец имеет право редактировать и запускать на выполнение.
755 (-rwxr-xr-x) Каждый пользователь имеет право читать и запускать на выполнение; владелец может редактировать.
777 (-rwxrwxrwx)Каждый пользователь может читать, редактировать и запускать на выполнение.

chown меняем владельца файлу или папке.
chown -ключ user:group /tmp или /tmp/file.txt меняем папке или файлу владельца на user и группу на group.
-R рекурсивно.

which Команда which обычно используется для быстрого поиска программ. Она просто выполняет поиск по переменной окружения PATH и возвращает первый найденный результат, а также путь к нему.

whereis Команда whereis работает примерно как и which, однако она также ищет страницы руководства и файлы с исходными текстами.

Пользователи и Группы.

adduser, addgroup — добавляют пользователя или группу в систему
adduser -ingroup group -home /home/user -shell [shell] user Создаем пользователя user , входящего в группу group , домашний каталог /home/user.

-no-create-home не создавать домашний каталог, даже если он не существует.
-disabled-login не запускать passwd для задания пароля.

deluser user удалить пользователя user.

usermod -l user user1 поменять имя пользователя user на user1.
usermod -d /home/user1 -m user поменять домашний каталог для пользователя user с переносом всего содержимого.
usermos -G nossh user добавить пользователя user в группу nossh.
usermod -s /bin/nologin user поменять shell пользователя user.
usermod -a -G group username удаление пользователя из группы происходит путём переопределения групп, в которые пользователь входит.

passwd test поменять пароль пользователю test.
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

chfn user поменять пользовательские данные.
Changing the user information for user
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:

APT(Advanced Package Tool) Установщик Debian/Ubuntu.

apt-get install name установить пакет.
apt-get update получить обновлённые списки пакетов.
apt-get upgrade обновить пакеты, установленные в систему.
apt-get remove name удалить пакет c сохранением файлов конфигурации.
apt-get purge name удалить пакет с удалением файлов конфигурации.
apt-get autoclean удалить старые загруженные архивные файлы пакетов.

apt-get remove —purge mysql* Удаление пакетов с mysql в названии.

dpkg -l | grep -i mysql                 Установленные пакеты с mysql в названии.

Сетевые команды.

netstat -plutn Выводит информацию о портах  которые со статусом LISTEN.

mtr exempel.com Ping и traceroute в одном флаконе.(нужно установить)

ping exempel.com Пинг узла.

-s размер пакета.

-I интерфейс.

tcpdump позволяющая перехватывать и анализировать сетевой трафик(пакет надо установить).

-i можно указать сетевой интерфейс, с которого следует принимать данные:
tcpdump -i eth2
Чтобы узнать получаемые или отправляемые пакеты от определенного хоста, необходимо его имя или IP-адрес указать после ключевого слова host:
tcpdump host nameofserver
Следующим образом можно узнать о пакетах которыми обмениваются nameofserverA и nameofserverB:
tcpdump host nameofserverA and nameofserverB
Для отслеживания только исходящих пакетов от какого-либо узла нужно указать следующее:
tcpdump src host nameofserver
Только входящие пакеты:
tcpdump dst host nameofserver
Порт отправителя и порт получателя соответственно:
tcpdump dst port 80
tcpdump src port 22

tcpdump -l | tee out.log отобразит работу tcpdump и сохранит результат в файле out.log .

Информационные команды.

df -h показывает размер дисков.

du -hs /* отобразит размер всех директорий.

-s, —summarize выводить размер только для папки, переданной в качестве аргумента
-h, —human-readable Выводить размеры в удобном для человека виде (например, 1K 234M 2G)

 

 

Определить какие процессы занимают память.

ps axo rss,comm,pid \
| awk ‘{ proc_list[$2]++; proc_list[$2 «,» 1] += $1; } \
END { for (proc in proc_list) { printf(«%d\t%s\n», \
proc_list[proc «,» 1],proc); }}’ | sort -n | tail -n 10 | sort -rn \
| awk ‘{$1/=1024;printf «%.0fMB\t»,$1}{print $2}’