Терминал Linux. Как сохранить в файл вывод терминала. Линукс команды терминала


Терминал линукс (часть 1).

Избранное

Итак сегодня я начинаю серию статей об терминале linux.

В этой статье мы посмотрим

  • Что такое терминал
  • Как открыть терминал
  • Включение/выключение компьютера из терминала.
  • Управление пользователями

В этих заметках я не буду подробно останавливаться на каждой команде, так как в каждой команде есть свои атрибуты и нужно будет писать целую книгу об терминале(таких есть достаточно), поэтому если Вы хотите узнать подробнее что делает каждая команда, то можно просто набрать команду и добавить атрибут  например

man "команда" "команда" -h "команда" --help

Если Вы перешли на unix систему то просто обязаны знать основные команды в терминала. Для пользователей windows это будет чуть необычно, но я постараюсь объяснить все подробно.

Что такое терминал

Терминал – графическая программа эмулирующая консоль.Такие программы позволяют не выходя из графического режима выполнять команды.Терминал по сравнению с консолью имеет дополнительный функционал (различные настройки, вкладки, можно запускать много окон, управление мышью в некоторых программах, контекстное меню, главное меню, полоса прокрутки).

Как открыть терминал

Чтобы открыть терминал в linux-подобных системах, будет просто на клавиатуре нажать сочетания клавиш “CTRL+ALT+T“, или зайти в меню и в поиске набрать “terminal“, и откроется вот такое окно.

 

Чтобы закрыть терминал можно набрать в прямо в этом окне

exit

Самая первая команда при запуске системы

При запуске системы. я всегда проверяю обновление системы, рекомендую и вам также поступать, для этого наберите в терминале

sudo apt update && sudo apt upgrade

Включение-выключение компьютера из терминала

Итак чтобы перезагрузить компьютер через терминал, достаточно набрать команду

reboot

или

shutdown -r now

Чтобы выключить компьютер набираем

shutdown -h now

А если Вы хотите выключить компьютер через некоторое время, то эта команда для вас

shutdown -h hh:mm

или

shutdown -h +m

 

Далее у нас идет управление пользователямиВключить корневую учетную запись:

sudo passwd root

Заблокировать корневую учетную запись:

sudo passwd -l root

Чтобы добавить нового пользователя:

adduser имя_пользователя

Ну и естественно удалить пользователя:

deluser имя_пользователя

Удалить пользователя вместе с его домашним каталогом:

deluser имя_пользователя -remove-home

Изменить имя пользователя и название его домашнего каталога:

usermod -l новое_имя_пользователя -d /home/новое_имя_пользователя -m старое_имя_пользователя

Изменить пароль пользователя:

passwd имя_пользователя

Восстановить пароль к учетной записи в режиме восстановления системы (нажать Esc в процессе загрузки GRUB):

passwd имя_записи

В этом так называемом уроке мы узнали как открыть терминал, как выключить компьютер и как управлять пользователями из терминала.

Похожее

Автор публикации

не в сети 6 часов

admin

Хотите писать статьи? Напишите мне в чат, и я предоставлю вам такую возможность.

Комментарии: 934Публикации: 764Регистрация: 10-06-2016

linuxthebest.net

15 забавных команд в Linux или Забавы в терминале

В Linux существуют масса прикольных утилит/программ, о существовании которых рядовой пользователь может и не подозревать, я попытаюсь раскрыть для Вас некоторые из них. Сразу уточню — приложения есть как для Red Hat (и тому подобных) так и для Debian (и тому подобных ОС), я буду рассматривать исключительно установку утилит на Debian, на Red Hat Вы так же можете их установить введя в командной строке

yum -y install название_утилиты

Итак, перейдем к списку:

1. Команда sl (stream locomotive — паровоз другими словами)

Наверняка Вы знаете о существование команды ls, на моем сайте даже есть обширная статья про использование команды ls в массе случаев. Есть так же и команда sl (уже исходя из названия, понимаем что есть некий прикол). Итак, установим:

Если сразу запустить не получилось — команду «sl», можете пройти вот по этой инструкции:

либо просто

и видим движущейся локомотив:

2. Команда telnet

Прикол далеко не в самой команде telnet, как Вы подумали :) ничего прикольного в ней нет :) итак, если у вас нет данной команды, устанавливаем

Далее

telnet towel.blinkenlights.nl

И смотрим один из эпизодов Звездных Войнов в ASCII формате:

3. Команда «fortune»

Если у Вас не плохо с английским, то советую установить

apt-get install fortune

cd /usr/games/

./fortune

Получаем — некий своего рода гороскоп, о котором нам рассказывает Terminal :)

4. Команда «rev»

Означает она reverse то есть обратных ход — мы пишем слово и команда переводит нам его в обратный формат, условно вот так:

Утилиту устанавливать не нужно, она уже есть в системе :)

5. Вычисляем факториал командой factor

Команда уже встроена в систему, поэтому только показываю как работает:

6. Выстраиваем лесенку с помощью скрипта

Наверное не совсем прикольно, но, вводим:

for i in {1..12}; do for j in $(seq 1 $i); do echo -ne $i×$j=$((i*j))\\t;done; echo;done

Результат:

7. Команда cowsay — выводим что нужно сказать корове

Устанавливается

apt-get install cowsay

cd /usr/games/

./cowsay Мне нравиться complike.ru

Тоже самое можно выводить ./comthink

Можно применить вместе с другими командами, к примеру:

Тоже самое есть для графической оболочки

При вводе команды в терминале — картинка будет красивее :)

8. Команда yes — уже встроенная в систему

Повторяет бесконечное количество раз то что написано после команды, пока не остановишь:

yes Мне нравиться complike.ru

Результат:

9. Команда toilet — выводит все что напишите в красивом ASCII

Установка:

Использование (пример):

Результат:

Если хотите красивее то можно вот этими командами:

toilet -F metal complike.ru

или

toilet -f mono12 -F metal complike.ru

Результаты:

10. Команда cmatrix (консольная матрица)

Красивые движения как в старом (вот уже) добром фильме матрица, все так же красиво и необычно

Инсталим:

apt-get install cmatrix

cmatrix

Видим:

11. Команда while

С помощью нестандартного использования можно вывести цветные часы в консоле (остановить их можно нажав ctrl+c)

Выводим:

while true; do echo "$(date '+%D %T' | toilet -f term -F border --gay)"; sleep 1; done

Результат:

12. Команда bb — хорошая демка на ASCII

Устанавливаем:

apt-get install bb

cd /usr/games/

./bb

Наслаждаемся:

13. Красивый ASCII аквариум

Потребует небольшой установки — но думаю оно того стоит :) итак, установка:

apt-get install libcurses-perl

cd /tmp

wget http://search.cpan.org/CPAN/authors/id/K/KB/KBAUCOM/Term-Animation-2.4.tar.gz

tar -zxvf Term-Animation-2.4.tar.gz

cd Term-Animation-2.4/

perl Makefile.PL &&  make &&   make test

make install

cd /tmp

wget http://www.robobunny.com/projects/asciiquarium/asciiquarium.tar.gz

tar -zxvf asciiquarium.tar.gz

cd asciiquarium_1.1/

cp asciiquarium /usr/local/bin

chmod 0755 /usr/local/bin/asciiquarium

После этого запускаем:

и видим вот такую красоту (аналог приятной заставки аквариум на Windows):

14. Прикольные маны

Устанавливаем:

apt-get install funny-man

После этого прочитайте маны по словам:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

baby

celibacy

condom

date

echo

flame

flog

gong

grope, egrope, fgrope

party

rescrog

rm

rtfm

tm

uubp

xkill

xlart

sex

strfry

и при команде

у нас появляется вот такой прикольный текст:

15. Сборище приколов в Linux по средствам работы bash

Команда:

Результат:

 

 

 

 

Команда:

[ где мои мозги?

Результат:

 

 

 

 

Команда:

Результат:

comments powered by HyperComments

complike.ru

Терминал Linux. Как сохранить в файл вывод терминала.

В данной статье пойдет речь о том, как перенаправить вывод любой команды терминала (консоли) Linux в текстовый файл.

Комментирование приветствуется.

Порой, вывод некоторых терминальных команд может быть огромным. К примеру, список программ, которые могут быть обновлены:

apt list --upgradable

Намного удобнее перенаправить вывод данной команды в текстовый файл и уже просмотреть его с помощью удобного текстового редактора.

А кто-то просто захочет вести лог выполнения каких-то команд в системе или лог ошибок. В общем, каждый найдет для себя применение этой возможности.

Прежде чем перейти к обсуждению сохранения вывода команд терминала в файл, немножко теории о стандартных потоках вывода Linux.

Стандартные потоки вывода Linux.

Подробнее о стандартных потоках можно прочитать в Википедии:

Стандартные_потоки

Если по существу, то в Linux есть 3 стандартных потока:

  • stdin - поток номер 0, стандартный поток ввода.
  • stdout - поток номер 1, стандартный поток вывода.
  • stderr - поток номер 2, стандартный поток ошибок, диагностических и отладочных сообщений.

Когда мы выполняем какую-либо команду в терминале:

Вывод всех, выполненных команд на скриншоте выше, это stdout - стандартный поток вывода.

А вот вывод стандартного потока ошибок stderr:

Как видно на скриншоте, строки с ошибками начинаются с буквы "E:" (error), а предупреждающая информация c W: (warning).

С определениями, названиями стандартных потоков разобрались. Теперь можно перейти к способам сохранения вывода терминала в файл.

Базовый способ сохранения в файл вывода терминала (консоли) Linux. 

Стандартный поток вывода перенаправляется с помощью символа ">", то есть самый простой вариант перенаправления вывода терминала в файл будет выглядеть следующем образом:

какая_либо_команда > название_файла.txt

то есть, после команды ставим > , в результате чего, вывод команды будет сохранен в файл "название_файла.txt".

Реальный пример команды:

apt list --upgradable > output.txt

После выполнения этой команды в том каталоге, в котором вы находитесь в терминале (по умолчанию это домашний каталог), создастся файл с выводом этой команды, который мы удобно сможем просмотреть c помощью любого текстового редактора:

Если указать одинарный символ ">", то файл будет постоянно перезаписываться при повторном выполнении команды.

Чтобы новая информация добавлялась в конец файла, а не перезаписывался весь файл, нужно использовать двойной символ ">>". Команда будет выглядеть следующим образом:

apt list --upgradable >> output.txt

Мы перенаправляли стандартный поток вывода в файл, но ошибки у нас отображаются в терминале, а в файл текст ошибки добавлен не будет.

Сейчас я описал самый обычный способ перенаправления стандартного потока вывода stdout в текстовый файл. Теперь разберем другие способы.

8 базовых способов сохранения вывода терминала в файл.

Для большой наглядности я нарисовал табличку:

Список способов:

1. Стандартный поток вывода будет перенаправлен в файл, в терминале виден не будет. Если файл существует, то будет перезаписан.

command > output.txt

2. Стандартный поток вывода будет перенаправлен в файл, в терминале виден не будет. Новая информация будет записана в конец существующего файла.

command >> output.txt

3. Стандартный поток ошибок будет перенаправлен в файл, в терминале виден не будет. Если файл существует, то будет перезаписан.

command 2> output.txt

4. Стандартный поток ошибок будет перенаправлен в файл, в терминале виден не будет. Новая информация будет записана в конец существующего файла.

command 2>> output.txt

5. Стандартный поток вывода и стандартный поток ошибок вместе будут перенаправлены в файл, в терминале видны не будет. Если файл существует, то будет перезаписан.

command &> output.txt

6. Стандартный поток вывода и стандартный поток ошибок вместе будут перенаправлены в файл, в терминале видны не будет. Новая информация будет записана в конец существующего файла.

command &>> output.txt

7. Стандартный поток вывода будет скопирован в файл, в терминале будет по-прежнему виден. Если файл существует, то будет перезаписан.

command | tee output.txt

8. Стандартный поток вывода будет скопирован в файл, в терминале будет по-прежнему виден.  Новая информация будет записана в конец существующего файла.

command | tee -a output.txt

Как вывести полную информацию о компьютере и сохранить эту информацию в html, pdf.

В Linux есть команда, которая выводит всю информацию о компьютере в терминал lshw (от англ. list hardware).Её нужно запускать с правами суперпользователя sudo:

sudo lshw

Но не совсем удобно читать эту информацию в терминале.

У данной команды есть параметр -html, который позволяет вывести данную информацию в html. Теперь, когда мы научились перенаправлять вывод команд терминала в файл, давайте выведем информацию о системе и компьютере в удобно читаемый html файл:

sudo lshw -html > system_info.html

В текущем каталоге создастся html файл, который можно открыть любым, установленным у вас в системе, браузером:

И теперь, если мы хотим сохранить в pdf эту информацию, то выбираем печать (CTRL-P), формат pdf и нажимаем "Печать".

www.linuxrussia.com

Команды Linux - CADELTA.RU

Современные пользователи персональных компьютеров привыкли к графическому интерфейсу. Однако иногда приходится использовать интерфейс командной строки, то есть вводить определенные команды вручную. Например, в случае отсутствия графической оболочки, при восстановлении и настройке системы и т. д. Более того, с помощью командной строки некоторые действия выполнять быстрее и удобнее, чем с помощью привычного графического интерфейса.

Командная строка — это очень мощное средство управления системой. Некоторые начинающие пользователи боятся работать в консоли, считая, что это слишком сложно и непонятно. На самом деле это не так, достаточно освоить некоторые приемы работы и несколько простых команд и с остальными командами разобраться будет значительно проще. Графический интерфейс получил широкое распространение не так уж и давно — в конце прошлого века. А до этого все пользователи компьютеров работали с командной строкой.

В любом случае, пользователям Linux стоит освоить работу в консоли, эти навыки им обязательно пригодятся в дальнейшем. В этой статье мы рассмотрим работу с консолью и терминалом, а также основные часто применяемые команды Linux, не претендуя на полноту, поскольку полное их описание с примерами может занять не один том.

Чтобы получить доступ к консоли, находясь в графическом режиме, нужно нажать комбинацию клавиш Ctrl+Alt+F1. Далее нужно будет ввести логин и пароль, как при загрузке системы. Можно открыть несколько консолей, с помощью комбинаций клавиш Ctrl+Alt+F2, Ctrl+Alt+F3 и т.д. (до F6) и запускать в них различные программы одновременно. Для возврата в графическое окружение нужно нажать Alt+F7, при этом консоли остаются открытыми и программы, запущенные в них, будут продолжают работать.

Для работы с командной строкой непосредственно в графическом режиме существуют специальные программы — эмуляторы терминалов. Есть множество подобных программ: gnome-terminal — стандартный терминал в GNOME, konsole — стандартный терминал в KDE, xterm, tilda и т. д. Для открытия стандартного терминала в Ubuntu Linux нужно нажать комбинацию клавиш Ctrl+Alt+T, либо кликнуть на иконку терминала на панели. В других системах возможно придется запускать программу терминала через меню, для удобства можно установить иконку запуска терминала на панель или рабочий стол. Чтобы получить удаленный доступ к компьютеру через терминал, можно воспользоваться программами telnet или ssh, которые будут рассмотрены ниже. А в Windows программой PuTTY, которую можно скачать здесь: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Рис. 1. Эмулятор терминала Konsole

Команды в Linux состоят из нескольких частей: собственно самой команды, ключей (опций) и параметров, которые могут быть обязательными и необязательными. Например, в команде ls -la /var/www (далее команды будем выделять жирным шрифтом): ls — это команда, la — это ключи, которые чаще всего отделяются знаком минус «-», а параметром в данном случае является каталог /var/www. Ключи бывают короткие и длинные: короткие состоят из одной буквы и отделяются одним минусом «-», длинные ключи отделяются двумя минусами «--». Короткие ключи можно объединять в один, например команды ls -l -a -t -r и ls -latr идентичны. Наиболее популярные длинные ключи: --help и --version. Набрав ключ --help после любой команды (например ls --help), мы получим краткую справку о ней. Ключ --version служит для вывода версии программы.

Обратите внимание, что команды, ключи, имена файлов в Linux зависят от регистра. То есть, LS и ls — это разные команды, если вместо ls набрать LS, то эффект будет неожиданным. Длинные команды удобно набирать, используя клавишу «Tab», которая служит для автодополнения, достаточно набрать первые буквы из названия команды и нажать эту клавишу. Если есть несколько команд, которые начинаются с введенных символов, то они отобразятся на экране, в этом случае нужно набрать еще один или несколько символов и опять нажать «Tab». Аналогично клавиша «Tab» может быть использована для быстрого набора параметров, имен длинных файлов и т.д. C помощью курсорных клавиш можно просматривать и редактировать уже введенные команды.

Также можно использовать следующие сочетания клавиш:

Ctrl+C — прервать работу программы (обратите внимание, что в графическом окружении эта же комбинация клавиш используются для копирования).

Ctrl+Shift+C — скопировать выделенную информацию в буфер, для выделения можно использовать мышь.

Ctrl+Shift+V — вставить информацию из буфера. Для вставки текста также удобно использовать среднюю кнопку мыши (колесо прокрутки), предварительно выделив текст.

Ctrl+S — приостановить вывод на терминал.

Ctrl+Q — возобновить вывод на терминал. Хотя обычно для этого можно использовать любую клавишу. Иногда помогает если терминал «завис».

Ctrl+Z — остановить работу программы. Для продолжения нужно набрать команду fg (либо bg для продолжения работы программы в фоновом режиме).

Ctrl+D — выход из терминала, закрытие консоли, разрыв соединения с удаленным компьютером.

Теперь перейдем непосредственно к рассмотрению команд Linux.

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

man команда — выводит подробную информацию о команде Linux, ключах и т.д. Например: man date.

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

date — выводит текущую дату и время.

uname -a — выводит информацию о системе.

who — выдает список пользователей, которые сейчас находятся в системе. Не стоит пугаться, если будет найдено несколько пользователей на персональном компьютере, это вовсе не означает, что его взломали хакеры. Обратите внимание на их имена. Каждый открытый терминал, включая графический, система считает отдельным пользователем.

w — аналогично who показывает пользователей в системе, но, кроме этого, отображает еще дополнительную информацию - какие команды выполняют пользователи, и насколько загружен процессор.

free — вывод информации об оперативной памяти.

top — выводит информацию о процессах, о загрузке процессора, о распределении памяти.

df -h — выводит информацию о жестких дисках.

uptime — отображает время работы системы, количество пользователей, загрузку процессора.

pwd — показывает текущий каталог.

time — измеряет время работы программы, например time ls.

echo — выводит строку текста на стандартное устройство вывода. echo Привет — выведет слово «Привет», echo * - отобразит список файлов текущей директории. echo $[2+3] — выведет сумму чисел 2 и 3.

Команды для работы с файлами

ls — выводит список файлов в текущем каталоге. Чтобы отобразить список файлов в любом каталоге, нужно набрать путь к каталогу после команды, например: ls /usr/bin. Некоторые ключи команды ls:

-a — показать скрытые файлы;

-s — указать размер файлов в блоках;

-t — сортировка по времени модификации файлов, сначала новые файлы;

-X — сортировка по расширению названия файлов, файлы без расширения выводятся вначале;

-l — расширенный формат вывода: показывает атрибуты, владельцев и группу файлов, размер, дату и время их создания;

-r — изменить порядок сортировки на обратный. Например, команда

ls -lat /etc выведет содержимое каталога /etc в расширенном виде и с сортировкой по времени создания файлов.

cp — копирование файлов. cp doc1 doc2 — создаст копию файла doc1 под именем doc2.

rm — удаление файлов. rm doc — удалит файл doc. rm * - удалит все файлы в текущем каталоге. rm *doc — удалит все файлы, которые заканчиваются на doc. Ключ -i используется для подтверждения удаления каждого файла, ключ -r для удаления каталогов и файлов внутри этих каталогов.

rmdir — удаление директории. rmdir alex — удалит каталог alex.

Нужно быть очень осторожным с командами rm и rmdir, особенно в режиме суперпользователя, поскольку можно удалить не только свои, но и системные файлы, что может привести к краху системы.

pwd — вывод текущей директории.

mkdir — создание новой директории. mkdir alex — создаст каталог alex.

mv — перемещение или переименование файлов. mv new old — переименует файл new в old.

cat — соединение файлов или вывод файлов на стандартное устройство вывода. cat doc — выведет файл doc. 

cat /proc/cpuinfo — выдаст подробную информацию о процессоре, cat /proc/version — о версии ядра Linux.

touch — создание пустого файла.

touch doc — создаст файл doc. find — поиск файлов. find / -name "doc*" - найдет все файлы, которые начинаются с doc.

ln — создание ссылки на файл. ln file1 file2 — создаст жесткую ссылку. Ключ -s используется для создания символической ссылки.

tar — программа для работы с архивами. tar -zxvf file.tar.gz — распакует архив file.tar.gz. tar -cvf my.tar myfile — заархивирует файл myfile, создав архив my.tar. 

more — вывод файлов с остановкой для просмотра, в отличие от cat, который выводит весь файл сразу. Можно прокручивать текст построчно, с помощью клавиши ввода или постранично с помощью пробела.

less — программа для просмотра файлов аналогичная more, но позволяет прокручивать текст вверх и управлять с помощью курсорных клавиш.

nano — простой полноэкранный текстовый редактор. Рекомендуется для новичков, поскольку содержит минимум функций и основные команды отображаются на экране.

vi — довольно мощный текстовый редактор, но он имеет свою нестандартную систему команд, поэтому требует время на освоение.

mc (Midnight Commander) — мощный файловый менеджер, аналог Norton Commander для DOS или FAR для Windows. Позволяет удалять, копировать, переименовывать, просматривать, редактировать файлы, менять их атрибуты и т. д. Midnight Commander обычно не входит в стандартный набор системных программ, поэтому его нужно устанавливать отдельно. Но он настоятельно рекомендуется к использованию, поскольку сильно упрощает работу с файлами.

Рис. 2. Midnight Commander в gnome-terminal

Установка и удаление программ

Для установки и удаления программ используются различные утилиты, в зависимости от версии дистрибутива Linux. В основанных на Debian дистрибутивах (Ubuntu, Linux Mint и т. д.) для этой цели используются команды apt-get или aptitude. Первый вариант упрощенный, второй имеет большую функциональность. Некоторые действия, например, установку и удаление, нужно выполнять от root, либо использовать команду sudo.

sudo apt-get update — получение нового списка пакетов.

sudo apt-get upgrade — обновить программы, перед этим нужно обновить список пакетов, выполнив предыдущую команду. Обе команды желательно выполнять периодически (часто это делается автоматически), а также перед установкой новых программ.

sudo apt-get install mc — установка программы mc.

sudo apt-get remove mc — удаление программы mc. В дистрибутивах, основанных на Red Hat, где используются RPM-пакеты, часто используют менеджер yum.

yum update — обновление системы.

yum install mc — установка программы mc.

yum remove mc — удаление программы mc. Есть и другие пакетные менеджеры и варианты установки программного обеспечения.

Сетевые команды и работа с удаленными компьютерами

ping — проверка связи с определенным адресом в сети. ping google.com — проверка доступности сайта google.com, также можно использовать IP-адрес: ping 192.168.1.5. Если ответа нет, то это не означает на 100%, что нет связи, иногда работу этой команды блокируют в сети.

traceroute — показывает маршрут прохождения трафика. Например: traceroute google.com. Позволяет определить, на каком участке сети возникают проблемы.

telnet — подключение к удаленному компьютеру. Дает возможность выполнять команды на другом компьютере. В основном используется во внутренней сети, поскольку трафик не шифруется. Пример: telnet 192.168.1.1.

ssh — подключение к удаленному компьютеру по шифрованному каналу. ssh [email protected] — подключение к серверу site.com пользователя alex. Для подключения через нестандартный порт используется ключ -p, например

ssh -p 12345 [email protected] — подключение к серверу 111.222.123.123 пользователя root через порт 12345.

ftp — подключение к удаленному компьютеру по протоколу передачи файлов. ftp site.com — подключение к серверу site.com.

sftp — команда аналогична ftp, но соединение происходит по шифрованному протоколу.

route -n — показывает таблицу маршрутизации.

ifconfig — информация о сетевых соединениях и их настройка.

hostname — отображает или изменяет сетевое имя компьютера.

whois сайт или IP-адрес — выводит информацию о домене, владельце доменного имени или IP-адреса, например whois google.com или whois 8.8.8.8.

dig — выводит информацию о DNS, например dig google.com. Можно обратиться к любому DNS-серверу, указав его следующим образом: dig @8.8.8.8 google.com. Для получения информации с DNS-сервера можно также воспользоваться программами host и nslookup, указав после них доменное имя или IP-адрес, но эти утилиты имеют урезанную функциональность, по сравнению с dig.

wget — программа для загрузки файлов, страниц, сайтов из интернета. wget http://site.com — загрузить главную страницу site.com. wget -r -l 10 -k http://site.com — загрузит сайт полностью.

lynx, links, links2 (3 отдельные команды) — текстовые браузеры, позволяют просматривать сайты прямо из консоли.

Команды администрирования

su — смена пользователя. su alex — сменит пользователя на alex. Набрав su без параметров, вы получите права суперпользователя (root), при этом символ подсказки $ сменится на #.

В этом режиме не стоит находиться постоянно, а лучше вообще его не использовать, а пользоваться командой sudo.

Для выхода из сессии и возврата к предыдущему пользователю нужно набрать exit.

sudo — позволяет выполнять другие программы с правами суперпользователя, набирается перед другой командой, например

sudo rm file — удалит файл, созданный любым пользователем.

sudo -i или sudo -s — аналоги команды su.

Использовать команду sudo нужно также очень внимательно и только в случае необходимости.

passwd — смена пароля текущего пользователя. passwd alex — смена пароля пользователя alex.

adduser или useradd — добавить нового пользователя. adduser katya — добавит пользователя katya. После набора команды нужно ввести пароль. Для выполнения команды нужно быть суперпользователем.

userdel — удалить пользователя. userdel vasya — удалит пользователя vasya.

groupadd — создание новой группы. groupadd students — создаст группу students.

groupdel — удаление группы. groupdel students — удалит группу students.

chmod — изменить права доступа файла или каталога. chmod 644 file — установит права 644 на файл. chmod +x file — даст файлу права на выполнение.

chown — изменить хозяина файла. chown alex file — в результате выполнения этой команды хозяином файла станет alex.

chgrp — изменение группы файла. chgrp students laba1 — смена группы файла laba1 на students.

Команды для работы с процессами

ps — вывести список процессов. ps axu — посмотреть все процессы. ps axu | grep win — отобразить все процессы, где встречаются символы «win».

kill — убить программу, после команды указывается номер программы (идентификатор процесса — PID), который можно узнать с помощью команды ps. Пример: kill 1234.

killall команда — завершает все процессы, запущенные с помощью указанной команды.

bg — продолжить работу программы в фоновом режиме, например после комбинации клавиш Ctrl+Z. После команды может быть указан PID:

bg 1234.fg — продолжить выполнение программы в обычном режиме, также может быть указан PID.

Прочие команды Linux и языки программирования

Некоторые команды из этого списка могут отсутствовать в стандартных дистрибутивах, их можно установить отдельно.

sed — мощная утилита для обработки текста.

awk — язык для обработки текста.

grep — утилита поиска текста с использованием регулярных выражений, часто используется в связке с другими командами. grep '^a' 'text.txt' — покажет все строки в файле text.txt, которые начинаются с буквы а.

emacs — продвинутый текстовый редактор, обладающий большим количеством функций, вплоть до встроенных игр. Для опытных пользователей.

gcc — компилятор языка C, с помощью которого можно получить исполняемые файлы программ, которые распространяются в исходных кодах. Или откомпилировать свои программы.

gcc hello.c -o privet — компиляция программы hello.c, результатом компиляции будет программа с названием privet. По умолчанию (без опции -o) выходной файл будет называться a.out. GCC — это целый набор компиляторов (GNU Compiler Collection). Кроме C есть поддержка программ на C++, Fortran, Ada, Objective-C, Java и Go.

g++ - компилятор языка C++ из GCC. perl — мощный скриптовый язык.

python — вызов интерпретатора языка Python. Это современный и мощный язык, который может быть рекомендован начинающим.

exit — завершение текущей сессии, может применяться для отключения от удаленного компьютера, закрытия терминала.

shutdown -h now — команда завершения работы системы, выключения компьютера. Аналогом является команда halt. Если вместо ключа -h использовать ключ -r, то произойдет перезагрузка системы. Можно указать время, через которое будет выполнена команда. Now означает сейчас.

shutdown -r +10 — перезагрузка компьютера через 10 минут. Ключ -с отменяет выполнение команды. Для выполнения команды нужно иметь права root.

reboot — перезагрузка компьютера, аналог shutdown -r.

cadelta.ru

Поиск команд в терминале Linux

Если известно расположение команды, для ее запуска можно ввести полный путь к команде. Например, для запуска команды date из каталога /bin можно ввести :

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

Значение этой переменной состоит из списка каталогов, которые последовательно просматриваются при поиске вводимых команд. Для получения информации о текущем значении переменной PATH введите следующую команду:

echo $РАТН /bin: /usr/bin: /usr/local/bin: /usr/bin/Xll: /usr/XHR6/bin: /home/pavel/bin

echo $РАТН

/bin: /usr/bin: /usr/local/bin: /usr/bin/Xll: /usr/XHR6/bin: /home/pavel/bin

Вывод команды соответствует принятому по умолчанию пути поиска команд для обычного пользователя Linux. Для разделения каталогов применяется двоеточие.

[ads]

Большинство пользовательских команд в составе операционной системы Linux хранятся в каталогах /bin,/usr/bin и /usr/local/bin. Хотя многие команды графического интерфейса находятся в каталоге /usr/bin, существуют специальные команды X Window, которые расположены в каталогах /usr/bin/Xll и /usr/XHR6/bin. Последним в списке показан каталог bin в домашнем каталоге пользователя.

Если необходимо добавить собственные команды или сценарии командного интерпретатора, разместите их в каталоге bin в собственном домашнем каталоге (например, /home/pavel/bin для пользователя pavel). Данный каталог автоматически добавляется в путь поиска команд Linux. Это значит, что после добавления команды в собственный каталог с правом на выполнение (дополнительная информация о правах доступа приводится в разделе «Информация о правах доступа к файлам») команду можно сразу использовать, вводя ее имя в командной строке.

В путь поиска команд в Linux для пользователя root включаются каталоги /sbin и /usr/sbin, содержащие команды администрирования.

Порядок просмотра каталогов имеет важное значение. Каталоги просматриваются слева направо. В данном случае, если команда fоо расположена одновременно в каталогах /bin и usr/bin, будет выполняться команда из каталога /bin. Для запуска другой команды foo придется или ввести полный путь к команде, или изменить значение переменной PATH. (Изменение значения переменной PATH и добавление каталогов в путь поиска команд рассматриваются нами чуть ниже.)

Не все запускаемые команды расположены в каталогах, перечисленных в переменной PATH. Некоторые команды встроены в командный интерпретатор. Кроме этого, команды можно переопределить с помощью псевдонимов, позволяющих указать параметры запускаемой команды. Также можно определить функцию, содержащую последовательность команд.

  1. Псевдонимы — имена, устанавливаемые с помощью команды alias и представляющие конкретную команду с набором параметров. (Введите alias для просмотра списка установленных псевдонимов.) Часто псевдонимы позволяют определить короткое имя для длинной сложной команды.
  2. Зарезервированные слова командного интерпретатора— ключевые слова, зарезервированные командным интерпретатором для специального применения. Многие из этих ключевых слов используются при создании функций, например do, while, case и else.
  3. Функции — наборы команд, которые выполняются вместе в пределах одного интерпретатора.
  4. Встроенные команды — команды, встроенные в командный интерпретатор. Такая команда не имеет представления в файловой системе. Некоторые распространенные команды являются встроенными, например:
  • cd (для смены текущего каталога)
  • echo (для вывода текста на экран)
  • exit (для выхода из командного интерпретатора)
  • f g (для вывода команды из фонового режима)
  • history (для просмотра списка запускавшихся ранее команд)
  • pwd (для получения текущего каталога)
  • set (для установки параметров командного интерпретатора)
  • type (для определения расположения команды).
  1. Команда в файловой системе — такая команда хранится в файловой системе. (Для поиска этих команд в Linux используется список каталогов в переменной PATH.)

(Если применяется не bash, а другой командный интерпретатор, воспользуйтесь командой which.) Например, для определения расположения интерпретатора bash введите следующую команду:

type bash bash is /bin/bash

type bash

bash is /bin/bash

Введите вместе с командой type такие ключевые слова: which, case и return. Если команда одновременно присутствует в нескольких местах, можно добавить параметр -а для просмотра списка всех экземпляров команды.Иногда после ввода команды выводится сообщение о том, что команда не найдена или отсутствуют права на ее запуск. В первом случае необходимо проверить правильность ввода команды и ее присутствие в пути, указанном в переменной path. Во втором случае команда может находиться в пути из переменной path, но для нее могут отсутствовать права на запуск.

linux-user.ru

Записки для "дырявой" памяти: Основные команды Linux

 Самый необходимый минимум команд Linux, который нужно обязательно знать для комфортной работы.Копировать не обязательно-в конце заметки будут ссылки на закачку. Дисплей и терминалыsudo /etc/init.d/gdm restart –перезапустить X и перелогиниться (GNOME)sudo /etc/init.d/kdm restart –перезапустить X и перелогиниться (KDE)(файл) /etc/X11/xorg.conf – конфигурация дисплеяsudo dexconf – сбросить настройки xorg.confCtrl+Alt+Bksp – перезапустить зависшие XCtrl+Alt+FN – переключиться в терминал tty NCtrl+Alt+F7 – переключить на экран с X

Файловые командыls – список файлов и каталоговls -al – форматированный список со скрытыми каталогами и файламиcd dir – сменить директорию на dircd – сменить на домашний каталогpwd – показать текущий каталогmkdir dir – создать каталог dirrm file – удалить filerm -r dir – удалить каталог dirrm -f file – удалить форсированно filerm -rf dir – удалить форсированно каталог dir *cp file1 file2 – скопировать file1 в file2cp -r dir1 dir2 – скопировать dir1 в dir2; создаст каталог dir2, если он не существуетmv file1 file2 – переименовать или переместить file1 в file2. если file2 существующий каталог— переместить file1 в каталог file2ln -s file link – создать символическую ссылку link к файлу filetouch file – создать filecat > file – направить стандартный ввод в filemore file – вывести содержимое filehead file – вывести первые 10 строк filetail file – вывести последние 10 строк filetail -f file – вывести содержимое file по мере роста, начинает с последних 10 строк

Управление процессамиps – вывести ваши текущие активные процессыtop – показать все запущенные процессыkill pid – убить процесс с id pidkillall proc – убить все процессы с именем proc *bg – список остановленных и фоновых задач; продолжить выполнение остановленной задачив фонеfg – выносит на передний план последние задачиfg n – вынести задачу n на передний план

Права доступа на файлыchmod octal file – сменить права file на octal, раздельно для пользователя, группы и для всехдобавлением:  ● 4 – чтение (r)  ● 2 – запись (w)  ● 1 – исполнение (x)Примеры:chmod 777 – чтение, запись, исполнение для всехchmod 755 – rwx для владельца, rx для группы и остальных.Дополнительные опции: man chmod

Праваsudo command – запустить command от имени и с правами суперпользователя (рута)sudo -s – оболочка с правами рутаsudo -s -u user – оболочка с правами usersudo -k – повторно потребовать пароль для прав рутаgksudo command – запустить программу с графическим интерфейсом от рута (GNOME)kdesudo command – запустить программу с графическим интерфейсом от рута (KDE)sudo visudo – редактировать /etc/sudoersgksudo nautilus – файловый менеджер с правами рута (GNOME)kdesudo konqueror – файловый менеджер с правами рута (KDE)passwd – сменить пароль текущего пользователя

SSHssh user@host – подключится к host как userssh -p port user@host – подключится к host на порт port как userssh-copy-id user@host – добавить ваш ключ на host для user чтобы включить логин без пароля и по ключам

Поискgrep pattern files – искать pattern в filesgrep -r pattern dir – искать рекурсивно pattern в dircommand | grep pattern – искать pattern в выводе commandlocate file – найти все файлы с именем file

Системная информацияdate – вывести текущую дату и времяcal – вывести календарь на текущий месяцuptime – показать текущий аптаймw – показать пользователей онлайнwhoami – имя, под которым вы залогиненыfinger user – показать информацию о useruname -a – показать информацию о ядреcat /proc/cpuinfo – информация ЦПУcat /proc/meminfo – информация о памятиman command – показать мануал для commanddf – показать инф. о использовании дисковdu – вывести “вес” текущего каталогаfree – использование памяти и swapwhereis app – возможное расположение программы appwhich app – какая app будет запущена по умолчанию

Системные сервисы (демоны)start service – запустить service (Upstart)stop service – остановить service (Upstart)status service – проверить запущен ли service (Upstart)/etc/init.d/service start – запустить service (SysV)/etc/init.d/service stop – остановить service (SysV)/etc/init.d/service status – проверить запущен ли service (SysV)/etc/init.d/service restart – перезапустить service (SysV)runlevel – текущий уровень выполнения [0;6]

Архивацияtar cf file.tar files – создать tar-архив с именем file.tar содержащий filestar xf file.tar – распаковать file.tartar czf file.tar.gz files – создать архив tar с сжатием Gziptar xzf file.tar.gz – распаковать tar с Gziptar cjf file.tar.bz2 – создать архив tar с сжатием Bzip2tar xjf file.tar.bz2 – распаковать tar с Bzip2gzip file – сжать file и переименовать в file.gzgzip -d file.gz – разжать file.gz в file

Сетьping host – пропинговать host и вывести результатwhois domain – получить информацию whois для domaindig domain – получить DNS информацию domaindig -x host – реверсивно искать hostwget file – скачать filewget -c file – продолжить остановленную закачкуifconfig – данные о конфигурации сетейiwconfig – данные о беспроводных сетяхsudo iwlist scan – поиск беспроводных сетейsudo /etc/init.d/networking restart – перезапуск сетевых соединений(файл) /etc/network/interfaces – конфигурация сетевых соединенийifup interface – включить сеть interfaceifdown interface – отключить сеть interface

Установка пакетовУстановка из исходников:   ./configure   make   make installdpkg -i pkg.deb – установить пакет (Debian)rpm -Uvh pkg.rpm – установить пакет (RPM)

Управление пакетамиapt-get update – проверить новые обновленияapt-get upgrade – обновить все пакетыapt-get dist-upgrade – обновиться с заменами пакетов; обновиться до нового релиза Ubuntuapt-get install pkg – установить пакет pkgapt-get purge pkg – удалить пакет pkgapt-get autoremove – удалить пакеты,которые устанавливались автоматически и больше не нужныapt-get -f install – починить сломанные пакетыdpkg --configure -a – конфигурировать пакетdpkg -i pkg.deb – установить пакет из pkg.deb(файл) /etc/apt/sources.list – список репозиториев для APT

Фаерволufw enable – включить фаерволufw disable – выключить фаерволufw default allow – разрешить по умолчанию все соединения, кроме явно запрещенныхufw default deny – запретить по умолчанию все соединения, кроме явно разрешенныхufw status – отобразить текущее состояние и правила фаерволаufw allow port – разрешить трафик на портufw deny port – заблокировать портufw deny from ip – заблокировать ip-адрес

Ядро и системаRecovery - наберите “REISUB” удерживая Alt+SysRq(PrintScrn) для перезагрузкиlsb_release -a – релиз Ubuntuuname -r – версия ядраuname -a – подробная информация о ядре

Клавиатурные сочетанияCtrl+C – завершить текущую командуCtrl+Z – остановить текущую команду, продолжть с fg на переднем плане или bg в фонеCtrl+D – разлогиниться, тоже самое, что и exitCtrl+W – удалить одно слово в текущей строкеCtrl+U – удалить строку!! - повторить последнюю командуexit – разлогиниться

Скачать "Основные команды Linux"

free384.blogspot.com

Секреты терминала Linux | |

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

 

В большинстве дистрибутивов Linux по умолчанию применяются оболочки sh или bash. Существуют и другие оболочки, однако они менее распространены, но при необходимости можно легко сменить оболочку по умолчанию, или запускать ее из командной строки по мере надобности.

    Команда Linux - это строка символов из имени команды и аргументов, разделенных пробелами. Аргументы предоставляют команде дополнительные параметры, определяющие ее поведение. Например, команда echo 12345выведет на экран строку символов 12345, введенных в качестве аргумента команды.Команды, являющиеся частью оболочки называются встроенными. Естественно, они могут отличаться для различных оболочек. Но есть и команды, не зависящие от используемой оболочки, и представляющие собой отдельные программные модули, стандартные для выбранного вами дистрибутива Linux. В качестве аргументов командам передаются ключи или опции, состоящие из тире и одного или нескольких символов. Пример такой команды: ls -lПри использовании нескольких ключей, их можно объединить. Ниже приведенные варианты команд идентичны :ls -l -dls -ld

    При работе в командной строке Linux необходимо придерживаться некоторых правил.    Во-первых, не забывайте, что строчные и заглавные буквы для Linux - это разные символы. В Windows каталог TEMP и каталог Temp - это один и тот же каталог, в Linux - это два разных. Это же касается команд, их ключей, имен пользователей ,паролей и т.п. Консольные команды ps -a и ps -Aвыдадут вам разные результаты.

    Во-вторых, практически по всем командам можно получить справку, задав в командной строке ключ --help. ps --help       выдаст вам справку по команде ps ( работа со списком процессов).

  По многим командам можно получить дополнительную справку при использовании man - встроенной справочной системы.man ps     - выдаст подробную информацию по команде ps

    В-третьих, результат некоторых команд зависит от ваших прав в системе. Для получения прав root используйте команду su. Эта команда позволяет сменить текущего пользователя. Если пользователь не задан, то подразумевается root.  Для начинающего линуксоида (и не только начинающего) большим подспорьем может стать и файловый менеджер mc , очень похожий на FAR или Norton Commander. Сейчас он включается практически во все дистрибутивы Linux, хотя по умолчанию не всегда устанавливается. Очень рекомендую установить.

Как управлять выводом на экран.

  Для просмотра текста, ушедшего за пределы видимости экрана используются комбинации клавиш SHIFT и PAGE UP или PAGE DOWN (в зависимости от направления просмотра).Для приостановки вывода на экран - CTRL-S, отмена приостановки - CTRL-Q

 Для вывода большого объема текста на экран в постраничном режиме используется команда less, в цепочке с основной командой. Объясню на примере. Пусть у нас есть текстовый файл mytxt размером на 10 экранов. Для вывода текста на экран (стандартный вывод) можно воспользоваться командой cat < имя файла>cat mytxt После выполнения этой команды вы увидите быстро промелькнувший текст и последний (десятый) экран вывода. Можно, конечно, воспользоваться комбинациями клавиш SHIFT-PAGEDOUN или SHIFT-PAGEUP для просмотра текста, но можно воспользоваться и less. cat mytxt | lessСимвол | означает объединение в цепочку выполнения команды выдачи текста cat и команды управления постраничным выводом less. В результате, после отображения на экране первой страницы текста , вывод будет приостановлен до нажатия PAGE DOWN или ENTER (построчное перемещение). Для завершения постраничного вывода нажмите клавишу Q.  В цепочки можно объединять несколько команд. Например,  вам понадобилось вывести на экран в постраничном режиме все строки, содержащие слово mail. Для поиска можно воспользоваться командой grep <строка поиска> Итоговая цепочка из трех команд:cat mytxt | grep mail | less

  Для большинства дистрибутивов Linux вместо less можно использовать more.

Иногда удобно использовать одновременно несколько терминалов, переключаясь между ними (например смотрите логи в одном окне и правите конфигурационный файл в другом). Для переключения используется комбинация клавиш CTRL - ALT - F1...F6 (от первого терминала до 6-го). Для переключения в графическую оболочку используется CTRL-ALT-F7.

Чтобы запустить еще один графический сервер на этом же компьютере, используйте команду startx 1 -- :1. Чтобы перейти во второй графический терминал, нажмите Alt+F8., а чтобы вернуться в первый - Alt+F7. Таким образом можно открывать до 64 графических терминалов. (startx 2 -- :2 и т.д).Для завершения сеанса работы с терминалом используется команда exit.

    Вы можете создать журнал своей консольной сессии, в котором будет отображено все, что вы вводили с клавиатуры, и все, что выдавалось на экран терминала. Для этого используется команда

script < имя файла журнала >

Чтобы прекратить запись в журнал введите exit.

 

Как перезагрузить или выключить компьютер.

  Одно и то же действие в Linux часто можно выполнить несколькими способами. Стандартно для перезагрузки или выключения компьютера используется shutdown. Команда имеет много опций, позволяющих выполнить перезагрузку в определенное время, быструю перезагрузку без проверки файловой системы, имитировать и отменять уже запущенный (ждущий своего времени) процесс перезагрузки. Полный список опций можно получить по shutdown --help

Для немедленной перезагрузки (restart) команда будет выглядеть так:shutdown -r now  Для выключения питания (halt):shutdown -h now

В большинстве дистрибутивов можно использовать короткие команды:reboot - перезагрузкаhalt - выключение

Можно также воспользоваться изменением уровня запуска системы командой init , позволяющей управлять запуском и завершением процессов в системе с использованием скриптов, хранящихся в /etc/inittab. Уровень 0 - выключение, уровень 6 - перезагрузка. Соответственно для выключения:init 0

для перезагрузки:init 6

Команду init можно использовать для изменеия уровней запуска системы.Уровни:1 - Однопользовательский режим. Доступ разрешен пользователю root.2 - Многопользовательский режим без поддержки сетевых функций.3 - С поддержкой сети.4 - Зарезервировано.5 - С использованием графической оболочки.

    Если вам нужно завершить графическую оболочку (например, инсталляция некоторых приложений требует ее закрытия) введите:

init 3

    Графическая оболочка закроется и система перейдет на уровень запуска 3. Для возврата на уровень 5 введите:

init 5

    Уровень запуска системы по умолчанию определяется значением initdefault из /etc/inittab. Для запуска системы с поддержкой графической оболочки она выглядит так:id:5:initdefault:Если 5 заменить на 3, то графическая оболочка при старте системы запускаться не будет. И для любителей опасных экспериментов - не стоит устанавливать уровень запуска 0 и 6 в качестве уровня по умолчанию. Думаю, понятно почему.

Управление задачами (процессами).

    Посмотреть список задач в Linux можно с помощью команды ps. Если ее запустить без всяких параметров, то она выдает список процессов, запущенных в текущем сеансе пользователя. Полный список опций можно получить стандартно - выполнив ps --help . Примеры использования:

  • Cписок всех процессов, запущенных в системе:ps -A - выдаст список процессов с идентификаторами (PID) и их именамиили:ps -ax - выдаст тот же список процессов, но с полной строкой запуска
  • список задач, порожденных пользователем user:ps -U user
  • список задач, связанных с текущим терминалом:ps T
  • список задач, связанных с терминалом N:ps t ttyN
  • Если список задач большой, а нас интересует состояние одной или нескольких задач, можно воспользоваться grep:ps -U root | grep ppp - выдать список задач, содержащих &quotppp" в имени

        Для получения сведений об использовании ресурсов компьютера можно воспользоваться командой top

    В верхней части окна выводятся суммарные данные о состоянии системы - текущее время, время с момента загрузки системы, число пользователей в системе, число процессов в разных состояниях, данные об использовании процессора и памяти. Ниже выводится таблица, характеризующая отдельные процессы. Число строк, отображаемых в этой таблице, определяется размером окна. Содержимое окна обновляется каждые 3 секунды. Нажатие клавиши h выводит справку по командам, которые позволяют изменить формат отображаемых данных и управлять некоторыми параметрами процессов в системе:

  • s или d - изменить интервалл обновления окна.
  • z - цветное/черно-белое отображение
  • n или # - количество отображаемых процессов
  • Можно отсортировать список процессов по использованию процессора (P), памяти (M), времени выполнения (T) и т.п.

        Однако, есть и более полезные команды, которые позволяют управлять процессами в интерактивном режиме:

  • k - снять (kill) задачу. По этой команде будет запрошен идентификатор процесса (PID), после ввода которого, процесс будет завершен.
  • r - изменить текущий приоритет задачи (renice). Как и при выполнении предыдущей команды, будет запрошен PID, и затем, новое значение приоритета (отображается в колонке NI). Диапазон значений приоритетов - от минус 20 (наивысший) до плюс 19. Отрицательные значения и 0 может устанавливать только пользователь root.    Для выхода из top нажмите q

    Команда kill

        Эти же действия (принудительное завершение процесса и изменение его приоритета) можно выполнить и без команды top.    Процессы в Linux имеют возможность обмениваться так называемыми "сигналами" с ядром и другими процессами. При получении сигнала процессом, управление передается подпрограмме его обработки, или ядру, если такой подпрограммы нет. В Linux имеется команда kill, которая позволяет послать заданному процессу любой сигнал. Список сигналов можно получить по команде:kill -lВ результате выполнения этой команды вы увидите список номеров и названий сигналов. Для того, чтобы послать определенный сигнал выбранному процессу, нужно ввести:kill &lt-номерсигнала> номер PID выбранного процессаНапример, нам нужно завершить работу приложения Midnight Commander (mc).

  • Определим идентификатор процесса mc:ps -A | grep mcПусть PID= 11597.
  • Посылаем сигнал SIGQUIT (номер 3):kill -3 11597После чего процесс mc обработает сигнал SIGQUIT и нормально завершится. Однако, если mc "завис", то, естественно, завершиться он не сможет, поскольку подпрограмма обработки сигнала SIGQUIT не получит управления. В таких случаях используется сигнал под номером 9 (SIGKILL), обрабатываемый ядром операционной системы, и принудительно завершающий указанный процесс:kill -9 11597Если в команде kill номер сигнала не задан, то используется SIGKILL, т.е предыдущую команду можно было ввести как kill PID:kill 11597    При завершении процесса завершаются и порожденные им процессы.

        Для завершения процесса по имени используется команда killall:killall mc - завершить процесс, в имени которого есть &quotmc"killall -u user - завершить процессы, порожденные пользователем user

    Команды nice и renice

        Для изменения приоритета процессов используются команды nice и renice. При запуске процесса, его приоритет задается значением родительского процесса, например, терминала xterm или командной оболочки shell. Команда nice позволяет запустить процесс с приоритетом, равным сумме родительского (например 8) и числа, задаваемого в качестве опции команды nice:nice -<число> команда nice -4 mc - запустит mc с приоритетом = 8+4=12

    Команда renice используется для изменения приоритета уже запущенного процесса:renice <число> -p PID renice 4 -p 11597 - установить значение приоритета для процесса mc (PID=11597) равным 4.После выполнения, renice выдаст строку результата:11597: old priority 12, new priority 4 - старый приоритет 12, новый приоритет 4Задание нулевого и отрицательного числа приоритета возможно только с правами root. 

 

rootonly.ru