42 команды linux которые вы должны знать

Работа с историей команд

history
— вывод истории команд (хранится в файле )

!!

— повтор предыдущей команды

sudo !!
— повтор предыдущей команды с правами root.

!число

— повтор команды под определенным номером. Номер можно узнать командой .

!1005
— повтор команды под номером 1005.

!строка

— повтор последней команды, которая начинается с слов указанных в строке.

!he
 => help script

!r
 => rm -rf .* (будьте осторожны применяя эту команду!)

!?строка

— повтор последней команды, которая содержит слова указанные в строке.

!?dir
 => mkdir books

!?dir
 => rmdir songs (будьте осторожны применяя эту команду!)

script

— запись сессии терминала в файл. Для остановки записи введите —

script 

script session_record.txt
— запись сессии терминала в файл session_record.txt.

script -c «mkdir pictures» session_record.txt
— запись одной команды в файл.

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

whoami — имя, под которым вы залогиненыgroupadd group_name — создать новую группу с именем group_namegroupdel group_name — удалить группу group_namegroupmod -n new_group_name old_group_name — переименовать группу old_group_name в new_group_nameuseradd -c «Nome Cognome» -g admin -d /home/user1 -s /bin/bash user1 — создать пользователя user1, назначить ему в качестве домашнего каталога /home/user1, в качестве shell’а /bin/bash, включить его в группу admin и добавить комментарий Nome Cognomeuseradd user1 — создать пользователя user1userdel -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 — установить дату окончания действия учётной записи пользователя user1pwck — проверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadowgrpck — проверяет корректность системных файлов учётных записей. Проверяется файл/etc/groupnewgrp group_name — изменяет первичную группу текущего пользователя. Если указать «-«, ситуация будет идентичной той, в которой пользователь вышил из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd

Управление процессами

ps

— выводит информацию о выполняемых в данный момент процессах.

ps 

ps -fp 1256 1886 1887
— полная информация о процессах с id 1256, 1886, 1887.

ps aux
— выводит полный список запущенных процессов в системе.

ps -ejH
— вывести дерево процессов.

ps axjf
— вывести расширенное дерево процессов.

ps -p 15 -o comm=
— вывести имя процесса по id.

ps -C sshd -o pid=
— вывести id процесса по его имени.

ps axo pid,pcpu,comm
— вывести информацию о процессах в пользовательском формате.

pstree

— вывод дерева процессов.

pstree 

pstree -p
— вывод дерева процессов совместно с их идентификаторами PID.

top
— выводит информацию в реальном времени о запущенных процессах в системе.

jobs
— вывод запущенных задач, остановленных или выполняемых в фоновом режиме.

bg

— перевод задачи (остановленной) на выполнение в фоновом режиме.

bg 

bg
— перевод последней (остановленной) задачи в фоновый режим

bg %2
— перевод задачи %2 в фоновый режим.

fg

— вывод задач (остановленных) из фонового режима работы на передний план.

fg 

fg
— перевод последней фоновой (остановленной) задачи на передний план.

fg %3
— перевод задачи 3 на передний план.

процесс &

— запуск процесса в фоновом режиме.

firefox &
— запуск браузера Mozilla Firefox в фоновом режиме.

kill

— принудительное завершение работы процессов.

kill 

kill 6478
— послать сигнал Terminate (завершить) процессу с идентификатором PID=6478.

kill %2
— послать сигнал Terminate (завершить) задаче под номером 2 в списке jobs.

kill -2 45211
— послать сигнал Interrupt (прервать) процессу с идентификатором PID=45211. Аналог работы Ctrl + C.

kill -19 6478
— послать сигнал Stop (приостановить). Грубо говоря, процесс ставится на паузу.

kill -18 6478
— послать сигнал Continue (продолжить). Грубо говоря, снять процесс с паузы.

kill -28 6478
— послать сигнал Window Changed (сменен размер окна).

kill -20 6478
— послать сигнал Stop (остановить). Аналог работы Ctrl + Z.

kill -l
— получить полный список доступных сигналов.

killall

— принудительное завершение работы для нескольких одноименных процессов.

killall 

killall -9 top
— принудительное завершение работы для всех процессов с именем top.

Получение информации о системе

df

— отчет об использовании пространства дисковых накопителей.

df 

df -h
— вывод отчета в удобном виде.

du

— отображение дискового пространства, занятого файлами и каталогами.

du 

du -ah /home/janedoe
— отображение размера файлов и каталогов.

du -sh /home/janedoe
— отображение общего размера всех файлов и каталогов.

du -h -d0 *.txt /home/janedoe
— отображение размера только текстовых файлов без заглядывания в подкаталоги (-d0).

du —time -h /home/janedoe
— дополнить вывод временем последнего изменения файла.

free

— отображение занятого пространства оперативной памяти.

free 

free -mt
— занятая оперативная память в мегабайтах со строкой Total.

free -th -s1
— отображение результата каждую секунду.

watch free
— отображение занятой оперативной памяти в реальном времени.

hostname
— имя текущего хоста.

iostat

— статистика использования CPU и операций ввода/вывода.

iostat 

iostat -m
— выводить статистику в мегабайтах.

iostat -N
— вывод имен устройств в статистике.

iostat -p sda
— вывод статистики для группы блочных устройств.

iostat -x
— вывод расширенной статистики.

screenfetch
— информация о системе (не везде предустановлена).

uptime
— время прошедшее после запуска системы.

uname

— информация об ОС.

uname 

uname -a
— полная информация об ОС.

vmstat

— информация об использовании виртуальной памяти.

vmstat 

vmstat 2
— обновление данных каждые 2 секунды.

vmstat -d
— статистика использования дисков.

unzip

unzip archive.zip — распакует архив archive.zip в текущую директорию

Работа с файлами

cp — копирование файлов и директорий.

mv — перенос файлов и директорий.

rm — удаление файлов и директорий.

chmod — изменение прав доступа на файл или директорию. Права можно задавать как цифрами в двоичной или десятичной системе счисления, так и в понятном для человека.


Три вариант записи прав пользователя

chown — изменение владельца файла или директории.

Правка файлов

nano — простой текстовый редактор. Идёт по умолчанию в куче дистрибутивов. В большинстве случаев его хватает для правки конфигов.

vim — «православный» текстовый редактор. Сложный для восприятия новичками. Но если если изучить, вы будете неудержимы и вас будут уважать все линкусоиды.

Автоматизация

bash — популярная командная оболочка. Можно писать последовательные команды для выполнения. Часто повторяемые рутинные операции хорошо писать в баш скрипты. Пусть за вас потеет машина. Основные возможности описаны на bash.im.

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

Управление файлами

Создание файлов

> имя_файла
— создание нового файла. Также очистка файла если он уже существует.

ln

— создание жесткой или символической ссылки для файла.

ln 

ln file1.txt file2.txt
— создание жесткой ссылки file1 на индексный дескриптор file2. Проще говоря, еще одно имя для одного и того же файла.

ln -s file1.txt file2.txt
—  создание символической (мягкой) ссылки (file1 будет ярлыком для file2).

mkfifo

— создание именного канала, к которому могут обратится два различных процесса. Именованные каналы FIFO позволяют обмениваться данными с абсолютно чужим процессом.

mkfifo 

mkfifo pipe; ls > pipe; cat < pipe
— создаем канал pipe, передаем результат команды в канал, выводим то, что передали в канал. Чтобы увидеть результат — «ls > pipe» и «cat < pipe» должны выполняться в разных окнах терминала.

mknod

— создание файла символьного/блочного устройства или именованного канала FIFO.

mknod

mknod /dev/ttyS0 c 4 64

touch

— изменение времени редактирования файла (часто используется для создания файлов).

touch 

touch -c report.txt
— изменить время изменения файла на текущее или создать файл если его не существует.

touch index.html about.html
— создание двух html файлов (если их не существует).

touch -ad «Jun 19 1994 12:30:21» report.txt
— изменить время последнего доступа к файлу report.txt.

Перенос, копирование и удаление файлов

mv

— переименование файлов. Перенос файлов в другие каталоги.

mv  [файл/каталог] [файл/каталог]

mv oldname.txt newname.txt
— переименование файла в текущем каталоге.

mv essay.txt ~/docs/univer
— перенос файла в другой каталог.

mv -n cat.png ~/pictures/cats
— если файл с именем cat.png уже существует в каталоге ~/pictures/cats, то не перезаписывать его новым файлом.

mv essay.doc /univer/essay_done.doc
— переименование файла с перемещением.

mv *.jpg ~/pictures/photos
— перенести все изображения формата jpg, имена которых начинаются с цифры в каталог ~/pictures/photos.

cp

— копирование файла (с переименованием).

cp  [файл/каталог] [файл/каталог]

cp index.html /var/www/site.ru/www/
— скопировать файл в другой каталог.

cp cat.jpg ~/pictures/kitty.jpg
— копирование файла с его переименованием.

rename

— переименование файлов с использованием масок.

rename  

rename .htm .html *.htm
— изменить расширение .htm на .html для всех файлов с расширением .htm.

rename accepted declined *
— если файл содержит строку accepted, то заменить ее на declined для всех файлов.

rm

— удаление файлов и каталогов.

rm  [файл/каталог]

rm -d ~/pictures/cats
— удаление пустой директории (аналог ).

rm cat.jpg dog.png
— удаление нескольких файлов.

rm -r ~/music/kpop
— удаление непустого каталога вместе с файлами (рекурсивное удаление).

rm -rf *
— удалить все файлы и каталоги в текущей директории.

crm -rf ~/pictures/*.png
— удалить все png файлы без подтверждения удаления.

rm — Frank Sinatra — Let it snow.mp3
— удаление файла с многословным именем, а также файлов с именем, которое имеет знак «-» (имя указывать после ).

scp

— копирование файлов через зашифрованное сетевое соединение между двумя хостами. 

scp 

scp report.txt jane@192.168.0.250:report.txt
— копирование файла на удаленный хост в домашнюю директорию пользователя jane (потребуется ввести пароль для пользователя jane).

scp jane@192.168.0.250:/home/jane/* .
— скопировать все файлы в текущий каталог из домашней директории пользователя jane на удаленном хосте (потребуется ввести пароль для пользователя jane).

scp -r jane@meliorem.ru:/home/jane/music ~/janes_music
— рекурсивное копирование всех файлов и подкаталогов из домашней директории пользователя jane на удаленном хосте (потребуется ввести пароль для пользователя jane).

scp jane@firshost.ru:pricelist.txt john@secondhost.ru:/home/john/docs
— копирование файла с удаленного хоста пользователя jane на удаленный хост пользователя john.

Сеть

ifconfig — показать информацию о сетиiwconfig — показать информацию о беспроводной сетиsudo iwlist scan — поиск беспроводных сетейsudo /etc/init.d/networking restart — перезапустить сеть/etc/network/interfaces — файл для ручной настройки сетиifup interface — включить интерфейсifdown interface — отключить интерфейс

ping host — пропинговать host и вывести результат

whois domain — получить информацию whois для domainwget file — скачать fileifconfig eth0″ — показать конфигурацию сетевого интерфейса eth0ifup eth0″ — активировать интерфейс eth0ifdown eth0″ — деактивировать интерфейс eth0ifconfig eth0 192.168.1.1 netmask 255.255.255.0″ — выставить интерфейсу eth0 ip-адрес и маску подсетиifconfig eth0 promisc» — перевести интерфейс eth0 в promiscuous-режим для «отлова» пакетов (sniffing)ifconfig eth0 -promisc» — отключить promiscuous-режим на интерфейсе eth0dhclient 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.1route del 0/0 gw IP_gateway» — удалить ip-адрес шлюза по умолчанию (default gateway)echo «1» > /proc/sys/net/ipv4/ip_forward» — разрешить пересылку пакетов (forwarding)hostname» — отобразить имя компьютераip link show» — отобразить состояние всех интерфейсовmii-tool eth0″ — отобразить статус и тип соединения для интерфейса eth0ethtool 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″ — показать конфигурацию беспроводного сетевого интерфейса eth1cat /proc/net/dev — показать сетевые интерфейсы и статистику по нимdig domain – получить DNS информацию domain

Команды Linux для управления сетью

Эти коды помогают настраивать Интернет и корректировать сетевые параметры в зависимости от пользовательских предпочтений.

Сетевые команды с примерами:

  • «nethogs» отображает данные по расходу интернет-трафика;
  • «ip» позволяет настроить сетевые параметры, демонстрирует наличие свободных портов. При включении дополнительных опций («show»/»help«) группирует в виде списка, формирует справку, подробный анализ;
  • «ping» производит диагностику сетевых подключений и их качества. Делает отчёт по работе роутеров, модемов и т. д.;
  • «tracerout» показывает скорость передачи данных и их подробный маршрут.

Диагностика сетевых подключений с помощью терминала

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

17 команд терминала, о которых должен знать каждый пользователь Ubuntu:

17 команд для новичков в Ubuntu#1. ls: перечислить содержание директории

Если вы хотите увидеть скрытые директории и файлы (в том числе начинающиеся с точки), флаг -a.

Посмотрите руководство для большей информации (man ls).

#2. cd: изменить директорию

Запомните,
. означает текущую директорию
.. означает «родительскую» директорию
~ означает домашнюю директорию пользователя

#3. pwd: вывести адрес текущей рабочей директории

#4. mkdir: создать папку

#5. rm: удалить файл/директорию

Замечание: эта команда удаляет папку (директорию) только если она пустая, если вы не определите флаг -f для полного удаления. Но будьте осторожны с аргументами -r и -f. (-rf очень опасен)

#6. sudo: выполнить как суперпользователь, для получения его привилегий
Например,

Затем введите пароль от вашего аккаунта, и вы сможете выполнять какие-либо административные задачи, как root. Так что, если вы получаете какие-либо ошибки доступа при использовании какой-нибудь команды, поставьте перед ней sudo — это может помочь.

#7. mv: переименовать или переместить файл/директорию

команда выше переместит файл file1 из текущей директории в назначенную папку

Это переименует файл new_logo.jpg.

#8. cat: Просмотреть содержание файла

#9. man: подробное руководство по утилитам/командам/программам

Например, если вы хотите узнать больше о команде rm, то выполните команду:

#10. cp: скопировать файлы/папки

Команда выше скопирует файл movie_name.mp4 в определённую директорию

#11. wget: загружайте файлы
GNU Wget полезен в загрузке файлов из интернета через командную строку:

#12. gksudo: выполняйте графические приложения с привилегиями администратора root

Команда выше откроет nautilus с root-привилегимями. Это как sudo, но в графическом режиме.

#13. shutdown: чтобы выключить ваш компьютер из терминала

где время может быть 0, если вы хотите выключить компьютер сейчас, или вы можете определить точное время — 10:30.

#14. restart: перезагрузка компьютера

Для управления пакетами в Ubuntu есть особые команды. Они требуют root-привилегий, так что просто добавьте sudo перед ними (команда спросит ваш пароль и начнёт работать!). Кстати, если хотите установить microsoft excel office, советую пройти по вышеуказанной ссылке.

#15. apt-get: консольная утилита для управления пакетами
Есть различные опции, такие как:
install – чтобы установить пакет
Например, чтобы установить PyRoom (текстовый редактор без отвлекающих элементов)

remove – чтобы удалить пакет

update – чтобы обновить список пакетов и их версии

upgrade — чтобы обновить все пакеты в вашей системе

#16. add-apt-repository – чтобы добавить PPA-репозиторий
Например, чтобы добавить PPA-репозиторий для программы Eidete (программа для скринкастинга)

После добавления PPA требуется команда apt-get update

#17. apt-cache: чтобы просмотреть детали пакета из кеша
search: поиск определённых пакетов через apt-cache
Например:

Работа с утилитами *ctl

systemctl

— управляет работой системных сервисов и утилит.

systemctl   

systemctl -l status nginx
— проверка состояния сервиса.

systemctl start ngnix
— запуск работы сервиса.

systemctl stop nginx
— остановка работы сервиса.

systemctl enable nginx
— включение сервиса при старте системы.

systemctl disable nginx
— выключение сервиса при старте системы.

systemctl reload nginx
— обновление конфигурационного файла сервиса.

systemctl restart nginx
— перезапуск сервиса.

systemctl is-enabled
— проверка включения сервиса при старте системы.

systemctl list-unit-services
— вывод списка всех сервисов.

systemctl show nginx
— вывод свойств сервиса.

systemctl cat nginx
— вывод списка зависимых и исходных файлов сервиса.

loginctl

— менеджер учетных записей.

loginctl   

loginctl list-users
— вывод авторизованных пользователей.

loginctl user-status root
— вывод авторизованных пользователей.

loginctl show-user root
— вывод свойств пользователя.

loginctl terminate-user root
— удаление всех сессий пользователя.

journalctl

— вывод журналов (логов) сервисов.

journalctl 

journalctl —disk-usage
— вывод количества занятой памяти под логи.

journalctl —unit=nginx
— вывод логов сервиса.

journalctl —output=verbose —unit=nginx
— вывод всех полей в логе сервиса.

journalctl —output=cat —unit=nginx
— вывод только сообщений из лога сервиса.

Как открыть командную строку в Linux

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

Как получить доступ к командной строке в Ubuntu? Нет ничто проще. Чтобы открыть эмулятор терминала в Ubuntu, выберите на панели пункт «Приложения->Стандартные->Терминал». Опустится эмулятор терминала — Gnome terminal. Также эмулятор терминала Gnome terminal в Ubuntu возможно запустить из окна запуска приложений. Для этого нажмите Alt+F2 и введите в открывшемся окне заглавие программы — «gnome-terminal». Чтобы получить доступ к настоящей текстовой консоли, возможно воспользоваться комбинациями клавиш Ctrl+Alt+F1… Ctrl+Alt+F6. Ctrl+Alt+F7 — переход обратно в графичный режим.

Командная строка, оболочка, консоль — эти термины используются для обозначения взаимодействия человека-оператора с операторной системой с применением стандартных устройств ввода-вывода, обеспечивающих ввод команд и получение итогов их выполнения. В операционных системах семейства Linux подобное взаимодействие обеспечивается специальным программным провиантом — оболочкой ( shell ) . Наиболее распространенной из них, является оболочка проекта GNU bash ( Bourne Again SHell ). Bash строится на оболочке Bourne ( sh ) созданной Стефеном Борном и включает в себя свойства множества иных оболочек — C ( csh ) , Korn ( ksh ), tc ( tcsh ) . Bash была написана Брайаном Фоксом (Brian Fox ) и в истиннее время поддерживается Четом Рейми ( Chet Ramey ).

Команды Linux окружения пользователя

Операционная система Linux позволяет обновить свой рабочий интерфейс и включить в него необходимые инструменты. Они облегчают работу за компьютером благодаря гибкой настройке и удобному расположению. Самые популярные:

  • «date» — команда, которая выводит текущую дату. Есть возможность опциональной настройки формата времени (12/24 ч.);
  • «alias» сокращает наименование указанной команды, даёт возможность пользователю установить её синоним;
  • «uname» демонстрирует информацию об операционной системе, её имени, профиле;
  • «sudo» — запуск приложений и программ от любого из зарегистрированных пользователей;
  • «sudo su» включает режим суперпользователя;
  • «sleep» переводит систему в спящий режим;
  • «shutdown» настраивает время включения компьютера. По умолчанию немедленно запускает систему;
  • «reboot» помогает перезагрузить операционную систему. Благодаря опциональной настройке позволяет задать необходимое время для планируемой перезагрузки.

Как управлять процессами Linux с помощью команд

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

Информация о запущенном процессе

Терминал Linux позволяет разгрузить операционную систему и оперативную память компьютера с помощью ряда специальных команд:

  • «ps» показывает свойства указанного процесса, а также подробную информацию о нём;
  • «pgrep» демонстрирует ID введённого процесса;
  • «kill» — принудительное завершение процесса;
  • «xkill» завершает работу процесса путём клика на рабочее окно;
  • «killall» — принудительное завершение всех запущенных процессов;
  • «htop» демонстрирует активные процессы, выполняет роль консольного менеджера;
  • «time» показывает информацию о времени запуска того или иного процесса.

Использование терминала расширяет пользовательские функции в отношении запущенных программ.

К сведению! Несмотря на то, что операционная система Linux считается одной из самых защищённых от вирусов и вредоносного ПО, со временем даже она может давать сбои.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector