Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Следующая версия Следующая версия справа и слева | ||
wiki:командная_строка [2016/03/06 13:13] [Монтирование файловых систем] |
wiki:командная_строка [2018/08/05 11:04] [Терминал] |
||
---|---|---|---|
Строка 41: | Строка 41: | ||
**Терминал** - графическая программа эмулирующая консоль. \\ | **Терминал** - графическая программа эмулирующая консоль. \\ | ||
Такие программы позволяют не выходя из графического режима выполнять команды. \\ | Такие программы позволяют не выходя из графического режима выполнять команды. \\ | ||
- | Терминал по сравнению с консолью имеет дополнительный функционал (различные настройки, вкладки, можно запускать много окон, управление мышью в некоторых программах, контекстное меню, главное меню, полоса прокрутки). \\ | + | Терминал по сравнению с консолью имеет дополнительный функционал (управление мышью, контекстное меню, полоса прокрутки, вкладки, запуск нескольких окон, главное меню, графические настройки). \\ |
Строка 59: | Строка 59: | ||
//Главное меню → Приложения → Система → Терминал// | //Главное меню → Приложения → Система → Терминал// | ||
+ | **В LXDE (Lubuntu)**: \\ | ||
+ | //Главное меню → Системные → LXTerminal// | ||
После запуска терминала мы видим строку с приглашением к вводу команд, например: \\ | После запуска терминала мы видим строку с приглашением к вводу команд, например: \\ | ||
Строка 76: | Строка 78: | ||
**Копирование команд** | **Копирование команд** | ||
- | Часто вам придётся следовать каким-либо инструкциям, которые требуют копирования команд в терминал. Наверное, вы удивитесь, когда обнаружите, что текст, скопированный вами с интернет-страницы при помощи комбинации клавиш <key>Ctrl+C</key>, не вставляется в терминал при нажатии <key>Ctrl+V</key>. И что, неужели придётся перепечатывать все эти команды и имена файлов вручную? Нет, расслабьтесь! Вставить текст в терминал можно тремя способами: <key>Ctrl+Shift+V</key>, нажатием средней кнопки мыши или правой кнопки мыши и выбором строки "Вставить". | + | Часто вам придётся следовать каким-либо инструкциям, которые требуют копирования команд в терминал. Наверное, вы удивитесь, когда обнаружите, что текст, скопированный вами с интернет-страницы при помощи комбинации клавиш <key>Ctrl+С</key>, не вставляется в терминал при нажатии <key>Ctrl+V</key>. И что, неужели придётся перепечатывать все эти команды и имена файлов вручную? Нет, расслабьтесь! Вставить текст в терминал можно тремя способами: <key>Ctrl+Shift+V</key>, нажатием средней кнопки мыши или правой кнопки мыши и выбором строки "Вставить". |
**Экономия набора** | **Экономия набора** | ||
Строка 138: | Строка 140: | ||
|**cd** |перейти в домашнюю директорию | | |**cd** |перейти в домашнюю директорию | | ||
|**cd ~user** |перейти в домашнюю директорию пользователя user | | |**cd ~user** |перейти в домашнюю директорию пользователя user | | ||
- | |**cd** |перейти в директорию, в которой находились до перехода в текущую директорию | | + | |**cd -** |перейти в директорию, в которой находились до перехода в текущую директорию | |
|**pwd** |показать текущюю директорию | | |**pwd** |показать текущюю директорию | | ||
|**mkdir dir** |создать каталог dir | | |**mkdir dir** |создать каталог dir | | ||
Строка 197: | Строка 199: | ||
|**unzip file1.zip** |разжать и распаковать zip-архив | | |**unzip file1.zip** |разжать и распаковать zip-архив | | ||
- | ===== DEB пакеты ===== | + | ===== Работа с локальными deb-пакетами (dpkg) ===== |
+ | |||
+ | deb — расширение имён файлов «бинарных» пакетов для распространения и установки программного обеспечения в ОС проекта Debian, и других, использующих систему управления пакетами dpkg. Deb — это часть слова Debian, в свою очередь, образованного от слов Debra — имени подруги (впоследствии — жены, ныне — бывшей) основателя Дебиана Яна Мердока и Ian от его собственного имени. | ||
|**dpkg -i package.deb** |установить / обновить пакет | | |**dpkg -i package.deb** |установить / обновить пакет | | ||
Строка 208: | Строка 212: | ||
|**dpkg -S /bin/ping** |найти пакет, в который входит указанный файл | | |**dpkg -S /bin/ping** |найти пакет, в который входит указанный файл | | ||
- | ===== APT ===== | + | ===== Использование пакетного менеджера Apt ===== |
- | APT - средство управление пакетами | + | |
+ | |||
+ | apt (advanced packaging tool) — программа для установки, обновления и удаления программных пакетов в операционных системах Debian и основанных на них (Ubuntu, Linux Mint и т. п.), иногда также используется в дистрибутивах, основанных на Mandrake, например Mandriva, ALTLinux и PCLinuxOS. Способна автоматически устанавливать и настраивать программы для UNIX-подобных операционных систем как из предварительно откомпилированных пакетов, так и из исходных кодов. | ||
|**apt-get install package_name** |установить / обновить пакет | | |**apt-get install package_name** |установить / обновить пакет | | ||
|**apt-cdrom install package_name** |установить / обновить пакет с cdrom'а | | |**apt-cdrom install package_name** |установить / обновить пакет с cdrom'а | | ||
Строка 231: | Строка 238: | ||
|**cat file_originale | [operation: sed, grep, awk, grep и т.п.] > result.txt** |общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в новый | | |**cat file_originale | [operation: sed, grep, awk, grep и т.п.] > result.txt** |общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в новый | | ||
- | |**cat file_originale | [operazione: sed, grep, awk, grepи т.п.] >> result.txt** |общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в существующий файл. Если файл не существует, он будет создан | | + | |**cat file_originale | [operazione: sed, grep, awk, grep и т.п.] >> result.txt** |общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в существующий файл. Если файл не существует, он будет создан | |
|**grep Aug /var/log/messages из файла '/var/log/messages'** |отобрать и вывести на стандартное устройство вывода строки, содержащие "Aug" | | |**grep Aug /var/log/messages из файла '/var/log/messages'** |отобрать и вывести на стандартное устройство вывода строки, содержащие "Aug" | | ||
|**grep ^Aug /var/log/messages из файла '/var/log/messages'** |отобрать и вывести на стандартное устройство вывода строки, начинающиеся на "Aug" | | |**grep ^Aug /var/log/messages из файла '/var/log/messages'** |отобрать и вывести на стандартное устройство вывода строки, начинающиеся на "Aug" | | ||
Строка 277: | Строка 284: | ||
===== Монтирование файловых систем ===== | ===== Монтирование файловых систем ===== | ||
+ | |||
+ | Монтирование файловой системы — процесс, подготавливающий раздел диска к использованию операционной системой. | ||
+ | |||
+ | Операция монтирования состоит из нескольких этапов: | ||
+ | |||
+ | - определение типа монтируемой системы | ||
+ | - проверка целостности монтируемой системы | ||
+ | - считывание системных структур данных и инициализация соответствующего модуля файлового менеджера (драйвера файловой системы) | ||
+ | - установка флага, сообщающего об окончании монтирования. При корректном размонтировании этот флаг сбрасывается. Если при загрузке система определяет, что флаг не сброшен, значит работа была завершена некорректно, и возможно ФС нуждается в починке | ||
+ | - включение новой файловой системы в общее пространство имен | ||
+ | |||
|**mount /dev/hda2 /mnt/hda2** |монтирует раздел 'hda2' в точку монтирования '/mnt/hda2'. Убедитесь в наличии директории-точки монтирования '/mnt/hda2' | | |**mount /dev/hda2 /mnt/hda2** |монтирует раздел 'hda2' в точку монтирования '/mnt/hda2'. Убедитесь в наличии директории-точки монтирования '/mnt/hda2' | | ||
Строка 287: | Строка 305: | ||
|**mount -o loop file.iso /mnt/cdrom** |смонтировать ISO-образ | | |**mount -o loop file.iso /mnt/cdrom** |смонтировать ISO-образ | | ||
|**mount -t vfat /dev/hda5 /mnt/hda5** |монтировать файловую систему Windows FAT32 | | |**mount -t vfat /dev/hda5 /mnt/hda5** |монтировать файловую систему Windows FAT32 | | ||
- | |**mount -t smbfs -o username=user,password=pass //winclient/share /mnt/share** |монтировать сетевую файловую систему Windows (SMB/CIFS) | | + | |
- | |**mount -o bind /home/user/prg /var/ftp/user** |"монтирует" директорию в директорию (binding). Доступна с версии ядра 2.4.0. Полезна, например, для предоставления содержимого пользовательской директории через ftp при работе ftp-сервера в "песочнице" (chroot), когда симлинки сделать невозможно. Выполнение данной команды сделает копию содержимого /home/user/prg в /var/ftp/user | | + | |
===== Форматирование файловых систем ===== | ===== Форматирование файловых систем ===== | ||
+ | |||
+ | Формати́рование — программный процесс разметки области хранения данных электронных носителей информации, расположенной на магнитной поверхности (жёсткие диски, дискеты), оптических носителях (CD/DVD/Blu-ray-диски), твердотельных накопителях (флэш-память — flash module, SSD) и др. Существуют разные способы этого процесса. | ||
+ | |||
+ | Само форматирование заключается в создании (формировании) структур доступа к данным, например, структур файловой системы. При этом возможность прямого доступа к находящейся (находившейся до форматирования) на носителе информации теряется, часть её безвозвратно уничтожается. Некоторые программные утилиты дают возможность восстановить некоторую часть (обычно — большую) информации с отформатированных носителей. В процессе форматирования также может проверяться и исправляться целостность носителя. | ||
|**mkfs /dev/hda1** |создать linux-файловую систему на разделе hda1 | | |**mkfs /dev/hda1** |создать linux-файловую систему на разделе hda1 | | ||
Строка 299: | Строка 320: | ||
|**mkswap /dev/hda3** |создание swap-пространства на разделе hda3 | | |**mkswap /dev/hda3** |создание swap-пространства на разделе hda3 | | ||
+ | |||
+ | ===== Создание резервных копий (backup) ===== | ||
+ | |||
+ | Резервное копирование (англ. backup copy) — процесс создания копии данных на носителе (жёстком диске, дискете и т. д.), предназначенном для восстановления данных в оригинальном или новом месте их расположения в случае их повреждения или разрушения. | ||
+ | |||
+ | |**dump -0aj -f /tmp/home0.bak /home** |создать полную резервную копию директории /home в файл /tmp/home0.bak | | ||
+ | |**dump -1aj -f /tmp/home0.bak /home** |создать инкрементальную резервную копию директории /home в файл /tmp/home0.bak | | ||
+ | |**restore -if /tmp/home0.bak** |восстановить из резервной копии /tmp/home0.bak | | ||
+ | |**rsync -rogpav --delete /home /tmp** |синхронизировать /tmp с /home | | ||
+ | |**rsync -rogpav -e ssh --delete /home ip_address:/tmp** |синхронизировать через SSH-туннель | | ||
+ | |**rsync -az -e ssh --delete ip_addr:/home/public /home/local** |синхронизировать локальную директорию с удалённой директорией через ssh-туннель со сжатием | | ||
+ | |**rsync -az -e ssh --delete /home/local ip_addr:/home/public** |синхронизировать удалённую директорию с локальной директорией через ssh-туннель со сжатием | | ||
+ | |**dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz'** |сделать "слепок" локального диска в файл на удалённом компьютере через ssh-туннель | | ||
+ | |**tar -Puf backup.tar /home/user** |создать инкрементальную резервную копию директории '/home/user' в файл backup.tar с сохранением полномочий | | ||
+ | |**( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p'** |копирование содержимого /tmp/local на удалённый компьютер через ssh-туннель в /home/share/ | | ||
+ | |**( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p'** |копирование содержимого /home на удалённый компьютер через ssh-туннель в /home/backup-home | | ||
+ | |**tar cf - . | (cd /tmp/backup ; tar xf - )** |копирование одной директории в другую с сохранением полномочий и линков | | ||
+ | |**find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents** |поиск в /home/user1 всех файлов, имена которых оканчиваются на '.txt', и копирование их в другую директорию | | ||
+ | |**find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2** |поиск в /var/log всех файлов, имена которых оканчиваются на '.log', и создание bzip-архива из них | | ||
+ | |**dd if=/dev/hda of=/dev/fd0 bs=512 count=1** |создать копию MBR (Master Boot Record) с /dev/hda на флоппи-диск | | ||
+ | |**dd if=/dev/fd0 of=/dev/hda bs=512 count=1** |восстановить MBR с флоппи-диска на /dev/hda | | ||
+ | |||
+ | ===== Дисковое пространство ===== | ||
+ | |||
+ | |**df -h** |отображает информацию о смонтированных разделах с отображением общего, доступного и используемого пространства (Прим.переводчика. ключ -h работает не во всех *nix системах) | | ||
+ | |**ls -lSr |more** |выдаёт список файлов и директорий рекурсивно с сортировкой по возрастанию размера и позволяет осуществлять постраничный просмотр | | ||
+ | |**du -sh dir1** |подсчитывает и выводит размер, занимаемый директорией 'dir1' (Прим.переводчика. ключ -h работает не во всех *nix системах) | | ||
+ | |**du -sk * | sort -rn** |отображает размер и имена файлов и директорий, с соритровкой по размеру | | ||
+ | |**rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n** |показывает размер используемого дискового пространства, занимаемое файлами rpm-пакета, с сортировкой по размеру (fedora, redhat и т.п.) | | ||
+ | |**dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n** |показывает размер используемого дискового пространства, занимаемое файлами deb-пакета, с сортировкой по размеру (ubuntu, debian т.п.) | | ||
+ | |||
+ | ===== CDROM ===== | ||
+ | |||
+ | |**mkisofs /dev/cdrom > cd.iso** |создать iso образ диска | | ||
+ | |**mkisofs /dev/cdrom | gzip > cd_iso.gz** |создать сжатый iso образ диска | | ||
+ | |**mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd** |создать iso образ папки | | ||
+ | |**cdrecord -v dev=/dev/cdrom cd.iso** |записать iso образ | | ||
+ | |**gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom** |записать сжатый iso образ | | ||
+ | |**mount -o loop cd.iso /mnt/iso** |примонтировать iso образ | | ||
+ | |**cd-paranoia -B** |считать аудио треки с диска в wav файлы | | ||
+ | |**cd-paranoia -- "-3"** |считать первые три аудио трека с диска в wav файлы | | ||
+ | |**cdrecord --scanbus** |идентифицировать канал scsi | | ||
+ | |||
+ | ===== Пользователи и группы ===== | ||
+ | |||
+ | |**groupadd group_name** |создать новую группу с именем group_name | | ||
+ | |**groupdel group_name** |удалить группу group_name | | ||
+ | |**groupmod -n new_group_name old_group_name** |переименовать группу old_group_name в new_group_name | | ||
+ | |**useradd -c "Nome Cognome" -g admin -d /home/user1 -s /bin/bash user1** |создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell'а /bin/bash, включить его в группу admin и добавить комментарий Nome Cognome | | ||
+ | |**useradd user1** |создать пользователя user1 | | ||
+ | |**userdel -r user1** |удалить пользователя user1 и его домашний каталог | | ||
+ | |**usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1** |изменить атрибуты пользователя | | ||
+ | |**passwd** |сменить пароль | | ||
+ | |**passwd user1** |сменить пароль пользователя user1 (только root) | | ||
+ | |**chage -E 2005-12-31 user1** |установить дату окончания действия учётной записи пользователя user1 | | ||
+ | |**pwck** |проверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow | | ||
+ | |**grpck** |проверяет корректность системных файлов учётных записей. Проверяется файл/etc/group | | ||
+ | |**newgrp [-] group_name** |изменяет первичную группу текущего пользователя. Если указать "-", ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd | | ||
+ | |||
+ | ===== Выставление/изменение полномочий на файлы ===== | ||
+ | |||
+ | chmod (от англ. change mode) — программа для изменения прав доступа к файлам и директориям. Название происходит от программы ОС Unix chmod, которая, собственно, изменяет права доступа к файлам, директориям и символическим ссылкам. | ||
+ | |||
+ | |**ls -lh** |просмотр полномочий на файлы и директории в текущей директории | | ||
+ | |**ls /tmp | pr -T5 -W$COLUMNS** |вывести содержимое директории /tmp и разделить вывод на пять колонок | | ||
+ | |**chmod ugo+rwx directory1** |добавить полномочия на директорию directory1 ugo(User Group Other)+rwx(Read Write eXecute) - всем полные права. Аналогичное можно сделать таким образом chmod 777 directory1 | | ||
+ | |**chmod go-rwx directory1** |отобрать у группы и всех остальных все полномочия на директорию directory1 | | ||
+ | |**chown user1 file1** |назначить владельцем файла file1 пользователя user1 | | ||
+ | |**chown -R user1 directory1** |назначить рекурсивно владельцем директории directory1 пользователя user1 | | ||
+ | |**chgrp group1 file1** |сменить группу-владельца файла file1 на group1 | | ||
+ | |**chown user1:group1 file1** |сменить владельца и группу владельца файла file1 | | ||
+ | |**find / -perm -u+s** |найти, начиная от корня, все файлы с выставленным SUID | | ||
+ | Популярные значения | ||
+ | |**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)** |Каждый пользователь может читать, редактировать и запускать на выполнение | | ||
+ | |**1555 (-r-xr-xr-t)** |Каждый пользователь имеет право читать и запускать на выполнение; удалить файл может только владелец этого файла | | ||
+ | |**2555 (-r-xr-sr-x)** |Каждый пользователь имеет право читать и запускать на выполнение с правами группы(user group) владельца файла | | ||
+ | |**4555 (-r-sr-xr-x)** |Каждый пользователь имеет право читать и запускать на выполнение с правами владельца файла | | ||
+ | |||
+ | |||
+ | ===== Команды Secure Shell (ssh) ===== | ||
+ | |||
+ | SSH (англ. Secure Shell — «безопасная оболочка») — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов). Схож по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования. SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных систем. | ||
+ | |||
+ | SSH позволяет безопасно передавать в незащищённой среде практически любой другой сетевой протокол. Таким образом, можно не только удалённо работать на компьютере через командную оболочку, но и передавать по шифрованному каналу звуковой поток или видео (например, с веб-камеры)[2]. Также SSH может использовать сжатие передаваемых данных для последующего их шифрования, что удобно, например, для удалённого запуска клиентов X Window System. | ||
+ | |||
+ | Большинство хостинг-провайдеров за определённую плату предоставляют клиентам доступ к их домашнему каталогу по SSH. Это может быть удобно как для работы в командной строке, так и для удалённого запуска программ (в том числе графических приложений). | ||
+ | |||
+ | |**ssh user@host** |подключится к host как user | | ||
+ | |**ssh -p port user@host** |подключится к host на порт port как user | | ||
+ | |**ssh-copy-id user@host** |добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам | | ||
+ | |||
+ | ===== Управление процессами ===== | ||
+ | |||
+ | Процесс — программа, которая выполняется в текущий момент. Стандарт ISO 9000:2000 определяет процесс как совокупность взаимосвязанных и взаимодействующих действий, преобразующих входящие данные в исходящие. | ||
+ | Компьютерная программа сама по себе — это только пассивная совокупность инструкций, в то время как процесс — это непосредственное выполнение этих инструкций. | ||
+ | Также, процессом называют выполняющуюся программу и все её элементы: адресное пространство, глобальные переменные, регистры, стек, открытые файлы и т. д. | ||
+ | |||
+ | |**top** |показать все запущенные процессы | | ||
+ | |**ps** |вывести ваши текущие активные процессы | | ||
+ | |**ps -eafw** |отобразить запущенные процессы, используемые ими ресурсы и другую полезную информацию (единожды) | | ||
+ | |**ps -e -o pid,args --forest** |вывести PID'ы и процессы в виде дерева | | ||
+ | |**pstree** |отобразить дерево процессов | | ||
+ | |**kill -9 98989** |"убить" процесс с PID 98989 "на смерть" (без соблюдения целостности данных) | | ||
+ | |**kill -TERM 98989** |Корректно завершить процесс с PID 98989 | | ||
+ | |**kill -1 98989** |заставить процесс с PID 98989 перепрочитать файл конфигурации | | ||
+ | |**lsof -p 98989** |отобразить список файлов, открытых процессом с PID 98989 | | ||
+ | |**lsof /home/user1** |отобразить список открытых файлов из директории /home/user1 | | ||
+ | |**strace -c ls >/dev/null** |вывести список системных вызовов, созданных и полученных процессом ls | | ||
+ | |**strace -f -e open ls >/dev/null** |вывести вызовы бибилотек | | ||
+ | |**watch -n1 'cat /proc/interrupts'** |отображать прерывания в режиме реального времени | | ||
+ | |**last reboot** |отобразить историю перезагрузок системы | | ||
+ | |**last user1** |отобразить историю регистрации пользователя user1 в системе и время его нахождения в ней | | ||
+ | |**lsmod** |вывести загруженные модули ядра | | ||
+ | |**free -m** |показать состояние оперативной памяти в мегабайтах | | ||
+ | |**smartctl -A /dev/hda** |контроль состояния жёсткого диска /dev/hda через SMART | | ||
+ | |**smartctl -i /dev/hda** |проверить доступность SMART на жёстком диске /dev/hda | | ||
+ | |**tail /var/log/dmesg** |вывести десять последних записей из журнала загрузки ядра | | ||
+ | |**tail /var/log/messages** |вывести десять последних записей из системного журнала | | ||
+ | |||
+ | ===== Сеть (LAN и WiFi) ===== | ||
+ | |||
+ | |**ifconfig eth0** |показать конфигурацию сетевого интерфейса eth0 | | ||
+ | |**ifup eth0** |активировать (поднять) интерфейс eth0 | | ||
+ | |**ifdown eth0** |деактивировать (опустить) интерфейс eth0 | | ||
+ | |**ifconfig eth0 192.168.1.1 netmask 255.255.255.0** |выставить интерфейсу eth0 ip-адрес и маску подсети | | ||
+ | |**ifconfig eth0 promisc** |перевести интерфейс eth0 в promiscuous-режим для "отлова" пакетов (sniffing) | | ||
+ | |**ifconfig eth0 -promisc** |отключить promiscuous-режим на интерфейсе eth0 | | ||
+ | |**dhclient eth0** |активировать интерфейс eth0 в dhcp-режиме | | ||
+ | |**route -n** |вывести локальную таблицу маршрутизации | | ||
+ | |**route add -net 0/0 gw IP_Gateway** |задать ip-адрес шлюза по умолчанию (default gateway) | | ||
+ | |**route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1** |добавить статический маршрут в сеть 192.168.0.0/16 через шлюз с ip-адресом 192.168.1.1 | | ||
+ | |**route del 0/0 gw IP_gateway** |удалить ip-адрес шлюза по умолчанию (default gateway) | | ||
+ | |**echo "1" > /proc/sys/net/ipv4/ip_forward** |разрешить пересылку пакетов (forwarding) | | ||
+ | |**hostname** |отобразить имя компьютера | | ||
+ | |**host www.linuxguide.it** |разрешить имя www.linuxguide.it хоста в ip-адрес и наоборот ***host 62.149.140.85*** | | ||
+ | |**ip link show*** |отобразить состояние всех интерфейсов | | ||
+ | |**mii-tool eth0** |отобразить статус и тип соединения для интерфейса eth0 | | ||
+ | |**ethtool eth0** |отображает статистику интерфеса eth0 с выводом такой информации, как поддерживаемые и текущие режимы соединения | | ||
+ | |**netstat -tupn** |отображает все установленные сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID'ы и имена процессов, обеспечивающих эти соединения | | ||
+ | |**netstat -tupln** |отображает все сетевые соединения по протоколам TCP и UDP без разрешения имён в ip-адреса и PID'ы и имена процессов, слушающих порты | | ||
+ | |**tcpdump tcp port 80** |отобразить весь трафик на TCP-порт 80 (обычно - HTTP) | | ||
+ | |**iwlist scan** |просканировать эфир на предмет, доступности беспроводных точек доступа | | ||
+ | |**iwconfig eth1** |показать конфигурацию беспроводного сетевого интерфейса eth1 | | ||
+ | |||
+ | ===== Microsoft Windows networks(SAMBA) ===== | ||
+ | |||
+ | |**nbtscan ip_addr разрешить netbios** |имя nbtscan не во всех системах ставится по-умолчанию, возможно, придётся доустанавливать вручную. nmblookup включен в пакет samba | | ||
+ | |**smbclient -L ip_addr/hostname** |отобразить ресурсы, предоставленные в общий доступ на windows-машине | | ||
+ | |**smbget -Rr smb://ip_addr/share** |подобно wget может получить файлы с windows-машин через smb-протокол | | ||
+ | |**mount -t smbfs -o username=user,password=pass //winclient/share /mnt/share** |смонтировать smb-ресурс, предоставленный на windows-машине, в локальную файловую систему | | ||
+ | |||
+ | ===== IPTABLES (firewall) ===== | ||
+ | iptables — утилита командной строки, является стандартным интерфейсом управления работой межсетевого экрана (брандмауэра) netfilter для ядер Linux версий 2.4, 2.6, 3.x, 4.x . Для использования утилиты iptables требуются привилегии суперпользователя (root). | ||
+ | |**iptables -t filter -nL** |отобразить все цепочки правил | | ||
+ | |**iptables -t nat -L** |отобразить все цепочки правил в NAT-таблице | | ||
+ | |**iptables -t filter -F** |очистить все цепочки правил в filter-таблице | | ||
+ | |**iptables -t nat -F** |очистить все цепочки правил в NAT-таблице | | ||
+ | |**iptables -t filter -X** |удалить все пользовательские цепочки правил в filter-таблице | | ||
+ | |**iptables -t filter -A INPUT -p tcp --dport telnet -j ACCEPT** |позволить входящее подключение telnet'ом | | ||
+ | |**iptables -t filter -A OUTPUT -p tcp --dport http -j DROP** |блокировать исходящие HTTP-соединения | | ||
+ | |**iptables -t filter -A FORWARD -p tcp --dport pop3 -j ACCEPT** |позволить "прокидывать" (forward) POP3-соединения | | ||
+ | |**iptables -t filter -A INPUT -j LOG --log-prefix "DROP INPUT"** |включить журналирование ядром пакетов, проходящих через цепочку INPUT, и добавлением к сообщению префикса "DROP INPUT" | | ||
+ | |**iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE** |включить NAT (Network Address Translate) исходящих пакетов на интерфейс eth0. Допустимо при использовании с динамически выделяемыми ip-адресами | | ||
+ | |**iptables -t nat -A PREROUTING -d 192.168.0.1 -p tcp -m tcp --dport 22 -j DNAT --to-destination 10.0.0.2:22** |перенаправление пакетов, адресованных одному хосту, на другой хост | | ||
+ | |||
+ | ===== Системная информация ===== | ||
+ | |||
+ | |**arch** |отобразить архитектуру компьютера | | ||
+ | |**uname -r** |отобразить используемую версию ядра | | ||
+ | |**dmidecode -q** |показать аппаратные системные компоненты - (SMBIOS / DMI) | | ||
+ | |**hdparm -i /dev/hda** |вывести характеристики жесткого диска | | ||
+ | |**hdparm -tT /dev/sda** |протестировать производительность чтения данных с жесткого диска | | ||
+ | |**cat /proc/cpuinfo** |отобразить информацию о процессоре | | ||
+ | |**cat /proc/interrupts** |показать прерывания | | ||
+ | |**cat /proc/meminfo** |проверить использование памяти | | ||
+ | |**cat /proc/swaps** |показать файл(ы) подкачки | | ||
+ | |**cat /proc/version** |вывести версию ядра | | ||
+ | |**cat /proc/net/dev** |показать сетевые интерфейсы и статистику по ним | | ||
+ | |**cat /proc/mounts** |отобразить смонтированные файловые системы | | ||
+ | |**lspci -tv** |показать в виде дерева PCI устройства | | ||
+ | |**lsusb -tv** |показать в виде дерева USB устройства | | ||
+ | |**date** |вывести системную дату | | ||
+ | |**cal 2007** |вывести таблицу-календарь 2007-го года | | ||
+ | |**date 041217002007.00** |установить системные дату и время ММДДЧЧммГГГГ.СС (МесяцДеньЧасМинутыГод.Секунды) | | ||
+ | |**clock -w** |сохранить системное время в BIOS | | ||
+ | |**uptime** |показать текущий аптайм | | ||
+ | |**w** |показать пользователей онлайн | | ||
+ | |**whoami** |имя, под которым вы залогинены | | ||
+ | |**finger user** |показать информацию о user | | ||
+ | |**uname -a** |показать информацию о ядре | | ||
+ | |**cat /proc/cpuinfo** |информация ЦПУ | | ||
+ | |**cat /proc/meminfo** |информация о памяти | | ||
+ | |**man command** |показать мануал для command | | ||
+ | |**df** |показать инф. о использовании дисков | | ||
+ | |**du** |вывести “вес” текущего каталога | | ||
+ | |**free** |использование памяти и swap | | ||
+ | |**whereis app** |возможное расположение программы app | | ||
+ | |**which app** |какая app будет запущена по умолчанию | | ||
+ | |||
+ | ===== Остановка системы ===== | ||
+ | |||
+ | |**shutdown -h now** |Остановить систему | | ||
+ | |**shutdown -h hours:minutes &** |запланировать остановку системы на указанное время | | ||
+ | |**shutdown -c** |отменить запланированную по расписанию остановку системы | | ||
+ | |**shutdown -r now** |перегрузить систему | | ||
+ | |**logout** |выйти из системы | | ||
+ | |||
+ | ===== Другие полезные команды ===== | ||
+ | |||
+ | |**apropos ...keyword** |выводит список комманд, которые так или иначе относятся к ключевым словам. Полезно, когда вы знаете что делает программа, но не помните команду | | ||
+ | |**man ping** |вызов руководства по работе с программой, в данном случае, - ping | | ||
+ | |**whatis ...keyword** |отображает описание действий указанной программы | | ||
+ | |**mkbootdisk --device /dev/fd0 `uname -r`** |создаёт загрузочный флоппи-диск | | ||
+ | |**gpg -c file1** |шифрует файл file1 с помощью GNU Privacy Guard | | ||
+ | |**gpg file1.gpg** |дешифрует файл file1 с помощью GNU Privacy Guard | | ||
+ | |**wget -r www.example.com** |загружает рекурсивно содержимое сайта www.example.com | | ||
+ | |**wget -c www.example.com/file.iso** |загрузить файл www.example.com/file.iso с возможностью остановки и продолжения | | ||
+ | |**echo 'wget -c www.example.com/files.iso' | at 09:00** |начать закачку в указанное время | | ||
+ | |**ldd /usr/bin/ssh** |вывести список библиотек, необходимых для работы ssh | | ||
+ | |**alias hh='history'** |назначить алиас hh команде history | | ||
+ | |**find . -maxdepth 1 -name *.jpg -print -exec convert** |Изменение размеров всех изображений в папке, передача утилите "convert" из ImageMagick для создания уменьшенных копий изображений (предварительный просмотр) | | ||
+ | |**swapon /dev/hda3** |активировать swap-пространство, расположенное на разделе hda3 | | ||
+ | |**swapon /dev/hda2 /dev/hdb3** |активировать swap-пространства, расположенные на разделах hda2 и hdb3 | | ||
====== Просмотр справки и руководства по программе ====== | ====== Просмотр справки и руководства по программе ====== |