Команды для управления процессами. Терминальные команды в Linux

Yakuake — терминал, выпадающий в верхней части экрана. Поддерживает вкладки и разделение окна на несколько терминалов.

  • Cool Retro Term — терминал для Linux в старом ламповом стиле. Имеет несколько тем оформления. Позволяет настраивать внешний вид.

  • QTerminal — легковесный терминал с возможностью открытия нескольких терминалов в одном окне. Поддерживается режим выпадающего окна.

  • Betty

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

  • Final Term — современный эмулятор терминала для Linux, обладающий интерактивными функциями и возможностями, которых нет у других подобных программ. Программа обладает удобным автодополнением команд, распознает файлы, адреса и другие элементы, поддерживает сворачивание команд, настраиваемые горячие клавиши, темы оформления и многое другое.

  • Gnome Terminal — стандартный терминал среды рабочего стола Gnome . Работает стабильно, обладает необходимыми возможностями и настройками для повседневной работы. Поддерживает цветовые схемы, цветной вывод текста, вкладки и так далее.

  • Terra Terminal Emulator — терминал для Linux, который выпадает (появляется) в верхней части экрана по нажатию горячей клавиши (по умолчанию F12). Можно создавать несколько вкладок и в каждой вкладке по несколько терминалов. Само окно терминала прозрачное.

  • ASCIIQuarium — небольшая консольная программа (Perl-скрипт), отображающая собственную ASCII-анимацию виртуального водоёма с его обитателями.

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

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

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

    Применение терминала началось очень давно. Еще до того как была создана DOS и не существовало никакого графического интерфейса. В далеких восьмидесятых годах операционная система Unix только начинала развиваться. Пользователям нужно каким-то образом взаимодействовать с системой и самый простой способ - это использование команд. Вы вводите команду, система вам возвращает ответ.

    С тех пор, такой способ ввода использовался во многих системах, в том числе DOS и OS/2 от Apple, пока не был придуман графический интерфейс. Затем текстовый режим терминала был успешно вытеснен, но его до сих пор продолжают использовать там, где это нужно.

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

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

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

    TTY - это файл устройства, который создается ядром и предоставляет доступ к терминалу для программ. Это могут быть файлы /dev/tty для постоянных текстовых терминалов и /dev/pts/* для эмуляторов терминалов. Вы можете выполнить команду или отправить сообщение просто записав данные в этот файл, и также получить результат, прочитав данные из этого файла.

    Эмулятор терминала - это графическая программа, которая предоставляет вам доступ к tty или pts терминалу. Например, Gnome Terminal, Konsole, Terminix, Xterm и многие другие.

    Командная оболочка - устройство tty занимается только передачей и приемом данных, но все эти данные должен еще кто-то обрабатывать, выполнять команды, интерпретировать их синтаксис. Командных оболочек достаточно много, это bash, sh, zsh, ksh и другие, но чаще всего применяется Bash.

    Ну и командная строка - это то место куда вы будете вводить свои команды, приглашение терминала для ввода.

    Теперь, когда мы разобрались что такое терминал Linux и знаем все основные принципы, перейдем к практике работы с ним.

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

    Есть несколько способов получить доступ к терминалу. Ваша система инициализации по умолчанию создает 12 виртуальных терминалов. В одном из них - обычно седьмом, запущена ваша графическая оболочка, но все другие могут быть свободно использованы. Для переключения между терминалами можно использовать сочетания Ctrl+Alt+F1-F12. Для авторизации нужно будет ввести логин и пароль.

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

    Второй способ позволяет открыть виртуальный терминал прямо в графическом интерфейсе с помощью эмулятора терминала. Эмулятор терминала linux работает с файлами в каталоге /dev/pts/* и еще называется псевдотерминалом, потому что не использует tty.

    В Ubuntu вы можете запустить терминал linux нажав сочетание клавиш Ctrl+Alt+T :

    Также его можно найти в меню приложений Dash:

    Как видите, открыть командную строку в linux очень просто.

    Выполнение команд в терминале

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

    Вы можете набрать что-либо и убедиться, что это работает:

    Чтобы выполнить команду достаточно написать ее и нажать Enter.

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

    Точно такая же схема работает для путей к файлам и параметров команд:

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

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

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

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

    $ команда опции параметр1 параметр2...

    Опции часто необязательны и уточняют тот или иной аспект работы программы. Они записываются в форме черточка и символ или двойная черточка и слово. Например -o или --output. Приведем пример для команды ls. Без опций и параметров:

    С параметром, указывающим какую папку посмотреть:

    С опцией -l, вывести в виде списка:

    В с опцией и параметром:

    Можно комбинировать две опции:

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

    Выводы

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

    Об авторе

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

    Ubuntu – это современная полнофункциональная операционная система основанная на базе ядра Linux. Слово Ubuntu расшифровывается с южноафриканского языка как “человечность”.

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

    Отличительной особенностью операционных систем на базе Linux является то, что они ориентированы на использование консоли. Большинство повседневных действий удобнее выполнять с помощью команд терминала Ubuntu. Если, например, в Windows для того, чтобы установить программу вы скачиваете ее с Интернета, а также самостоятельно устанавливаете все необходимые библиотеки, то в Ubuntu в этом нет необходимости. В Ubuntu установочные файлы содержат только само ПО, оставляя вопрос предоставления необходимых библиотек на совесть системы. При установке приложения через консоль автоматически устанавливаются дополнительные пакеты, необходимые для работы данного приложения.

    Для того, чтобы попасть в терминал Ubuntu наживаем сочетание клавиш Ctrl + Alt + T

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

    1. Управление файлами и каталогами
    2. Поиск файлов
    3. Работа с файлами
    4. Управление процессами
    5. Архивирование и сжатие файлов
    6. Управление пользователями
    7. Управление системой
    8. Работа с датой и временем
    9. Получение справки

    Команды для управления файлами и каталогами

    Синтаксис Назначение Опции Описание
    cd [каталог] Изменяет текущий каталог Нет Команда cd без имени каталога изменяет текущий каталог на домашний каталог
    пользователя. В противном случае cd изменяет каталог на указанный в команде. Команда cd является встроенной командой командного процессора Bash.
    chgrp [–cfvR] группа файлы Изменяет группового владельца одного или нескольких файлов. –c выводит только файлы с измененным групповым владельцем.

    –v подробно сообщает об изменениях группового владельца.
    –R рекурсивно изменяет группового владельца файлов во всех подкаталогах.
    Для изменения группового владельца одного или более файлов введите chgrp с именем
    группы, а за ним – имена файлов (группового владельца можно также изменить и с помощью
    команды chown).
    chmod [–cfvR] права_доступа файлы Изменяет права доступа одного или нескольких файлов. –c выводит только файлы с измененными правами доступа.
    –f подавляет вывод сообщений об ошибках.
    –v выдает подробную информацию об изменениях прав доступа.
    –R рекурсивно изменяет права доступа файлов во всех подкаталогах
    Для эффективного применения chmod необходимо знать, как задавать права доступа. Один из
    способов предполагает конкатенацию по одной букве из каждой из следующих таблиц
    в порядке их следования (Кто/Действие/Доступ):
    Кто Действие Доступ
    u пользователь + добавить r чтение
    g группа – удалить w запись
    o другие = назначить x выполнить
    a все s установить ID пользователя
    chown имя_пользователя:имя_группы файлы Изменяет владельца или группового владельца файла. –c выводит только файлы с измененными владельцами.
    –f подавляет вывод сообщений об ошибках.
    –v выдает подробную информацию об изменениях владельцев.
    –R рекурсивно изменяет владельцев файлов во всех подкаталогах.
    Чтобы сделать пользователя владельцем одного или более файлов, введите команду chown с
    именем пользователя, а за ним – именами файлов. Для изменения группового владельца,
    добавьте к имени пользователя после точки новое имя группы.
    cp [опции] исходный_файл файл_назначения
    cp [опции] исходные_файлы каталог_назначения
    Копирует файлы и каталоги. –a сохраняет все атрибуты файла.
    –b создает перед копированием резервную копию файла.
    –d копирует ссылку, но не файл, на который указывает эта ссылка.
    –i запрашивает подтверждение перед перезаписью файлов.
    –l создает жесткие ссылки вместо копирования файлов.
    –p сохраняет владельцев, права доступа и метку времени файла.
    –R рекурсивно копирует файлы во всех подкаталогах.
    Команда ср копирует один файл в другой. Можно также копировать несколько файлов из
    одного каталога в другой.
    ln [опции] существующий_файл новое_имя Устанавливает жесткие или символические ссылки (псевдонимы) для файлов и каталогов –b выполняет резервное копирование файлов перед их удалением.
    –d создает жесткую ссылку на каталог (это может сделать только root).
    –f удаляет существующий файл с именем новое_имя.
    –help выводит справку по команде.
    –s создает символическую ссылку.
    –v формирует подробную выходную информацию
    Команда ln назначает новое имя существующему файлу. С помощью опции –s можно
    создать символические ссылки, известные во всех файловых системах. Для символической
    ссылки можно просмотреть связанную с ней информацию с помощью команды ls –l. В
    противном случае ls –l выводит два отдельных файла – для файла и его жесткой ссылки.
    ls [опции] [имя_каталога] Выводит оглавление каталога –a выводит все файлы, в том числе и с именами, начинающимися с точки (.).
    –b выводит непечатные символы в именах файлов в восьмеричном коде.
    –c сортирует файлы по времени их создания.
    –d выводит каталоги так же, как и обычные файлы (а не выводит их оглавление).
    –f выводит оглавление каталога без сортировки (именно так, как оно хранится на диске).
    –i выводит информацию об индексных дескрипторах inode.
    –l выводит список файлов в длинном формате с подробной информацией.
    Команда ls выводит оглавление указанного каталога. Если имя каталога опущено, ls
    выводит оглавление текущего каталога. По умолчанию ls не отображает файлы, имена
    которых начинаются с точки (.); чтобы увидеть все файлы, наберите ls –a. Подробную
    информацию о файлах (включая размер, владельца и группового владельца и права на чтение
    – запись – выполнение) можно получить с помощью команды ls –l.
    mkdir [опции] имя_каталога Создает каталог. –m доступ назначает новому каталогу указанные права доступа.
    –p создает родительские каталоги, если они не существуют.
    Команда mkdir создает указанный каталог.
    mv [опции] источник назначение Переименовывает файлы и каталоги или перемещает их из одного каталога в другой. –b создает резервные копии файлов, которые перемещаются или переименовываются.
    –f удаляет существующие файлы, не запрашивая подтверждение.
    –i запрашивает подтверждение перед перезаписью существующих файлов.
    –v выводит имя файла перед его перемещением
    Команда mv либо переименовывает файл, либо перемещает его в другой каталог. Команда
    работает как с обычными файлами, так и с каталогами.
    pwd Выводит текущий рабочий каталог. Нет Команда pwd выводит текущий рабочий каталог. Она является встроенной командой
    командного процессора Bash.
    rm [опции] файлы Удаляет один или более файлов –f удаляет файлы без запроса подтверждения.
    –i запрашивает подтверждение перед удалением файлов.
    –r рекурсивно удаляет файлы во всех подкаталогах, содержащихся в каталоге.
    –v выводит имена файлов перед их удалением.
    Команда rm удаляет указанные файлы. Для удаления файла вы должны иметь право на запись
    в каталог, содержащий этот файл.
    rmdir [опции] каталог Удаляет указанный каталог (при условии, что он пуст). –p удаляет все становящиеся пустыми родительские каталоги Команда rmdir удаляет пустые каталоги. Если каталог не пуст, необходимо удалить все
    файлы вместе с каталогом с помощью команды rm –r.
    touch [опции] файлы Изменяет метку времени файла –с предписывает touch не создавать файл, если он не существует.
    –d время использует указанное время.
    –r файл использует отметку времени указанного файла.
    –t ММДДччмм[[ВВ]ГГ][.сс] использует указанную дату и время.
    Команда touch позволяет изменить дату и время последней модификации
    файла (эта информация хранится вместе с файлом). При вводе touch без опций в качестве
    метки времени файла используются текущие дата и время. Если указанный файл не
    существует, touch создает новый файл размером 0 байт.

    Команды для поиска файлов

    Синтаксис Назначение Опции Описание
    find [путь] [опции] Выводит список файлов, удовлетворяющих заданному набору критериев.–depth обрабатывает сначала текущий каталог, затем его подкаталоги. –maxdepth n ограничивает поиск n уровнями вложенности каталогов.
    –follow обрабатывает каталоги, указанные символическими ссылками.
    –name шаблон находит файлы с именами, соответствующими шаблону.
    –ctime n сравнивает файлы, модифицированные точно n дней назад.
    11
    –user имя находит файлы, владельцем которых является указанный пользователь.
    –group имя находит файлы, владельцем которых является указанная группа.
    –path шаблон находит файлы, с путями, соответствующими шаблону
    Команда find удобна для поиска всех файлов, удовлетворяющих заданному набору
    критериев. Если ввести find без аргументов, будет выведен список всех файлов во всех
    подкаталогах текущего каталога. Для отображения всех файлов с именами,
    заканчивающимися на.gz, введите find . –name “.gz”
    locate шаблон Выводит все файлы из периодически обновляемой базы данных, которые соответствуют
    заданному шаблону.
    Нет Команда locate производит поиск в базе данных файлов тех имен, которые удовлетворяют
    указанному шаблону. Ваша Linux–система настроена на периодическое обновление базы
    данных файлов. Если вы не уверены, где находится файл, просто введите locate, а за ним
    часть имени файла.
    whereis [опции] команда Производит поиск исходного текста, двоичного файла и man-страницы для команды –b производит поиск только двоичных файлов.
    –m производит поиск только man-страниц.
    –s производит поиск только исходных текстов.
    Команда whereis производит поиск в обычных каталогах (где находятся двоичные файлы,
    man-страницы и исходные файлы) двоичных файлов, man-страниц и исходных файлов для
    заданной команды.
    which команда Производит поиск заданной команды в каталогах, перечисленных в переменной среды PATH. Нет Команда which производит поиск в каталогах, перечисленных в переменной среды PATH,
    файла, который запускается в результате ввода указанной команды. Это удобный способ
    проверки, что именно выполняется при вводе конкретной команды.

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

    Синтаксис Назначение Опции Описание
    cat [–benstvA] файлы Копирование содержимого файла на стандартное устройство вывода (экран). –b нумерует непустые строки.
    –e отображает каждый символ конца строки (в виде $) и все неотображаемые символы.
    –n нумерует все выводимые строки, начиная с 1.
    –s заменяет несколько пустых строк на одну пустую строку.
    6
    –t отображает символы табуляции в виде ^I.
    –v показывает неотображаемые символы.
    –A отображает все символы (в том числе неотображаемые).
    Обычно команда cat применяется для вывода содержимого файла или для конкатенации
    нескольких файлов в один. Например, cat filel file2 f ile3 > all объединяет три
    файла в один файл с именем all.
    file [опции] файлы Выводит тип данных файла на основе правил, определенных в файле /usr/lib/magic
    (известного под названием магического файла (magicfile)).
    –c выводит в сформатированном виде указанный магический файл (или файл по умолчанию)
    и завершает работу.
    –m файл1 [: файл2: … ] указывает другие магические файлы.
    –z просматривает сжатые файлы.
    Для определения типа данных в указанных файлах команда file использует правила,
    заданные в файле /usr/lib/magic. Например, с помощью команды file вы можете
    проверить тип каждого файла в каталоге /usr/lib следующим образом:
    file * | more
    grep [опции] шаблон файлы Осуществляет поиск в одном или более файлах строк, соответствующих регулярному
    выражению (шаблону поиска).
    –N (где N– число) выводит N строк вблизи строки, содержащей образец.
    –c выводит количество строк, содержащих образец поиска.
    –f файл читает опции из указанного файла.
    –i игнорирует регистр букв.
    –l выводит имена файлов, содержащих образец.
    –n выводит номера строк рядом со строками, содержащими образец.
    –q возвращает код состояния, но ничего не выводит.
    –v выводит строки, не содержащие образец.
    –w сравнивает только целые слова.
    Команда grep осуществляет поиск шаблона в указанных файлах. Обычно команда grep
    используется для поиска заданной последовательности символов в одном или нескольких
    текстовых файлах.
    less [опции] имена_файлов Поэкранно отображает текстовые файлы (с возможностью листания назад). –? выводит список команд, которые можно использовать в less.
    –p текст выводит первую строку, в которой найден текст.
    –s сжимает несколько пустых строк в одну пустую строку.
    Команда less поэкранно отображает указанные файлы. В отличие от more, файл можно
    листать назад с использованием клавиш b, или . Для просмотра команд
    управления less при просмотре файла с помощью less нажмите.
    more [опции] имена_файлов Выполняет поэкранный просмотр текстовых файлов. +N (где N – число) выводит файл, начиная с указанного номера строки.
    + /шаблон начинает с отображения двух строк перед шаблоном.
    –s выводит вместо нескольких пустых строк одну пустую строку.
    Команда more выполняет поэкранное отображение указанных файлов. Для просмотра
    команд, которые можно использовать в more, нажмите во время просмотра файла. Для
    более удобного просмотра файла применяйте команду less.
    wc [опции] [файлы] Выводит количество байт, слов и строк, находящихся в файле –c выводит только количество байт.
    –w выводит только количество слов.
    –l выводит только количество строк.
    Команда wc выводит количество байт, слов и строк, находящихся в файле. Если входной
    файл не указан, wc читает данные из стандартного устройства ввода.

    Команды для управления процессами

    Синтаксис Назначение Опции Описание
    kill [опции] id_процесса Посылает сигнал процессу. –Nсигнала (где Nсигнала – номер или имя) посылает указанный сигнал.
    –l выводит номера и имена сигналов.
    Команда kill посылает сигнал процессу. Сигналом по умолчанию для kill является сигнал
    TERM Обычно этот сигнал предназначен для завершения процесса. Например, kill –9
    123 завершает выполнение процесса с идентификатором 123. Для просмотра
    идентификаторов процессов воспользуйтесь командой ps. Для просмотра списка имен и
    номеров сигналов введите kill –l.
    ps [опции] Отображает состояние процессов (программ), выполняющихся в системе. Обратите внимание, что в отличие от других команд опции команды ps не имеют префикса
    “–”.
    a отображает процессы других пользователей.
    f отображает дерево процессов.
    j выводит выходные данные, используя формат заданий.
    l выводит данные в длинном формате, с детальной информацией о каждом процессе.
    m выводит информацию об использовании памяти каждым процессом.
    u выводит имя пользователя и время запуска.
    x выводит процессы, не связанные ни с каким терминалом.
    Команда ps отображает состояние процессов, выполняющихся в системе. Команда ps без
    параметров формирует список процессов, запущенных вами. Для просмотра списка всех
    процессов, выполняемых в системе, введите ps ax (или ps aux, если вам нужна подробная
    информация по каждому процессу).
    top [q] Выводит список выполняющихся в данный момент процессов, упорядоченных по доле
    использования процессорного времени.
    q предписывает выполнение top с максимально возможным приоритетом (для этого вы
    должны быть привилегированным пользователем).
    d интервал указывает интервал в секундах между обновлениями информации.
    Команда top формирует полноэкранный отчет о выполняемых процессах с учетом их доли
    использования процессорного времени. По умолчанию top обновляет информацию каждые 5
    секунд. Для прекращения выполнения top нажмите или .

    Команды для архивирования и сжатия файлов

    Синтаксис Назначение Опции Описание
    tar [опции] файлы_или_каталоги Создает архив файлов или извлекает файлы из архива. –c создает новый архив.
    –d сравнивает файлы из архива с файлами из текущего каталога.
    –r добавляет файлы в архив.
    –t выводит оглавление архива.
    –x извлекает файлы из архива.
    –C каталог извлекает файлы в указанный каталог.
    –f файл читает архив не с ленты, а из указанного файла.
    –L n определяет емкость ленты равной n килобайт.
    –N дата архивирует только файлы новее указанной даты.
    –T файл архивирует или извлекает файлы с именами, указанными в файле файл.
    –v выводит подробные сообщения.
    –z сжимает или распаковывает архив с помощью gzip.
    –j сжимает или распаковывает архив с помощью bzip2.
    Команда tar создает архив файлов или извлекает файлы из существующего архива
    gunzip [опции] файлы Распаковывает zip-файлы. См. опции для gzip. Команда gunzip распаковывает сжатые файлы (имеющие расширение.gz или.Z). После
    распаковки gunzip заменяет сжатые файлы их распакованными версиями и удаляет из имен
    файлов расширение.gz или.Z. Команда gunzip эквивалентна команде gzip с опцией –d.
    gzip [опции] файлы Сжимает один или более файлов. –c выводит выходной файл на стандартное устройство вывода и сохраняет исходный файл.
    –d распаковывает файл (то же самое, что и gunzip).
    –h выводит справку по команде.
    –l выводит содержание сжатого файла.
    –n не сохраняет исходное имя и метку времени.
    –r рекурсивно сжимает файлы во всех подкаталогах.
    –v формирует подробные выходные данные.
    –V выводит номер версии.
    Команда gzip сжимает файлы с помощью алгоритма сжатия Лемпеля–Зива (Lempel–Ziv)
    LZ77. После сжатия файла gzip заменяет исходный файл его сжатой версией и добавляет к
    имени файла.gz.

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

    Синтаксис Назначение Опции Описание
    sudo useradd [имя пользователя] Добавление пользователя в систему -b Базовый каталог. Это каталог, в котором будет создана домашняя папка пользователя. По умолчанию /home
    -d Название домашнего каталога. По умолчанию название совпадает с именем создаваемого пользователя.
    -e Дата, после которой пользователь будет отключен. Задается в формате ГГГГ-ММ-ДД. По умолчанию отключено.
    -f Количество дней, которые должны пройти после устаревания пароля до блокировки пользователя, если пароль не будет изменен (период неактивности). Если значение равно 0, то запись блокируется сразу после устаревания пароля, при -1 – не блокируется. По умолчанию -1.
    Эта команда создаст в системе нового пользователя. Чтобы изменить настройки создаваемого пользователя, вы можете указанные опции
    sudo passwd [имя пользователя] Изменение пароля -d Удалить пароль пользователю. После этого пароль будет пустым, и пользователь сможет входить в систему без предъявления пароля.
    -e Сделать пароль устаревшим. Это заставит пользователя изменить пароль при следующем входе в систему.
    -i Заблокировать учетную запись пользователя по прошествии указанного количества дней после устаревания пароля.
    -n Минимальное количество дней между сменами пароля.
    -x Максимальное количество дней, после которого необходимо обязательно сменить пароль.
    -l Заблокировать учетную запись пользователя.
    -u Разблокировать учетную запись пользователя.
    Изменить пароль пользователю можно при помощи утилиты passwd.
    sudo groupadd [название группы] Создание группы пользователей -g Установить собственный GID.
    -p Пароль группы.
    -r Создать системную группу.
    Программа groupadd создаёт новую группу согласно указанным значениям командной строки и системным значениям по умолчанию.

    Подписывайтесь на нашу

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

        Свойства оболочки Bash делают ее наиболее универсальным и удобным средством взаимодействия с ОС Linux:

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

    - Bash поддерживает режим истории команд, позволяя отображать и изменять ранее введенные команды. Оболочка bash также имеет несколько переменных, значения которых влияют на сохранение и повторный вызов ранее введенных команд.

    - Bash обеспечивает завершение частично введенных слов для имен переменных, пользователей, хостов, команд и файлов.

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

    - Bash позволяет использовать функции и псевдонимы, выполнять арифметические операции и вводить арифметические выражения в качестве команд.

    - Bash позволяет создавать целые наборы последовательно выполняемых команд (сценарии или скрипты) с использованием гибкого и функционального языка программирования данной оболочки.

    - Bash имеет гибкие настройки, обеспечивающие изменение внешнего вида командной строки.

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

        Команда оболочки Linux - это строка символов из имени команды и аргументов, разделенных пробелами. Аргументы предоставляют команде дополнительные параметры, определяющие ее поведение. Например, команда
    echo 12345
    выведет на экран строку символов 12345, введенных в качестве аргумента команды.

    Команды, являющиеся частью оболочки называются встроенными . Естественно, они могут отличаться для различных оболочек. Кроме того, в качестве команд используются имена исполняемых файлов. В качестве аргументов, командам передаются ключи или опции , состоящие из тире и одного или нескольких символов. Пример такой команды:

    Ls -l

    ls - команда для отображения информации о файлах.. При вводе без аргументов, эта команда просто отобразит список файлов в текущем каталоге. При вводе с параметром -l - список в длинном формате - с отображением атрибутов, владельцев, даты и времени.

    При использовании нескольких ключей, их можно объединить. Ниже приведенные варианты команд идентичны:

    Как получить подсказку по использованию команды Linux

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

    Ls --help - отобразить справку для команды ls . В большинстве случаев, для получения справочной информации, допускается использование ключа -h

    Ls -h В операционных системах семейства Linux, более подробную справочную информацию можно получить из комплекта документации, известного как man-страницы , поскольку он доступен по команде man . Этот комплект включает в себя 8 разделов, содержащих справочную информацию, которую можно вывести на экран с использованием команды man

    Перечень разделов man-страниц :

    1 - Команды уровня пользователя.

    2 - Системные вызовы. Документация о библиотечных системных вызовах, как open, read, exec и т. п. Данный раздел обычно используется программистами.

    3 - Библиотеки. Этот раздел также предназначен для программистов и содержит справочную информацию о библиотеках прикладных программ (abs, rint и т.п.)

    4 и 5 - Форматы системных и пользовательских файлов. Содержит документацию о различных форматах файлов, как например, файл passwd

    6 - Игры. Описание игр, поставляемых с установленной системой.

    7 - Драйверы. Документация к драйверам, как например ip или ipv6

    8 - Поддержка системы. Документация с информацией о командах для системного администрирования (init, fdisk, ifconfig и т.п.).

    Примеры:

    Man 1 ls - отобразить справку для команды ls из первого раздела документации (в нем хранится информация о командах уровня пользователя).

    На практике, если требуется справка именно о команде, номер раздела опускают. В таком случае, поиск будет выполнен по всем разделам, начиная с первого до совпадения с аргументом, заданным в команде man :

    Man ls - отобразить справку для команды ls из первого раздела документации, где она будет найдена.

    Иногда отсутствие номера раздела в команде man даже предпочтительнее. Например, справка по команде

    Man 1 init - отобразить справку для команды init из первого раздела документации, завершится сообщением об отсутствии справочной информации, потому, что данная команда относится к командам поддержки системы и информация о ней содержится в 8-м разделе.

    Для поиска справочной документации во всех разделах, используется опция -a :

    Man -a passwd - отобразить справку для аргумента passwd из всех разделов, где она будет найдена: В результате, отобразится справка по команде passwd из первого раздела и описание формата файла паролей passwd из пятого.

    В качестве аргумента для строки поиска в команде man можно использовать шаблон:

    Man -a ip* - отобразить справку для всех параметров, начинающихся с ip из всех разделов справочной документации.

    При просмотре справочной документации, отображаемой по команде man используются клавиши:

    стрелка вверх/вниз - переход на строку вверх/вниз.

    PgUp/PgDown - переход на страницу вверх/вниз.

    Enter - переход на строку вниз.

    Пробел - переход на страницу вниз

    Q - выход из справки.

    Также, удобным средством поиска справочной информации являются утилиты apropos и whatis , позволяющие выполнить поиск по ключевому слову в базе данных документации. Первая из них выводит те строки, которые содержат строку поиска в в именах справочных страниц и кратких описаниях, а вторая – показывает однострочные описания справочных страниц, которые имеются в начале каждой страницы. С параметрами по умолчанию команды выдадут различающуюся информацию. Например, команда whatis tar , выдаст информацию имеющую отношение к утилите архивирования tar , а команда apropos tar - выдаст информацию и об утилите tar , и, кроме этого, справочные данные, где строка “tar” является частью слова, например “star t”. Использование утилиты apropos на первый взгляд кажется не очень эффективным, однако, это не так. Например, команда apropos net позволит быстро получить краткую справку по сетевым утилитам, присутствующим в данной системе. В данных командах можно использовать параметр -s указывающий номер раздела справочной системы, в котором будет выполняться поиск:

    apropos –s 1 net - выполнить поиск только в первом разделе man.

    При поиске обе утилиты используют индексные базы данных, которые обновляются с помощью программы mandb (или традиционной текстовой базы данных, создаваемой программой makewhatis ), поэтому поиск выполняется очень быстро. Дополнительные параметры командной строки, используемые apropos и whatis можно получить с помощью команды man .

        Работа в командной строке Linux имеет некоторые принципиальные отличия по сравнению с работой в среде Windows.

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

        Во-вторых, справка по команде с параметром --help и справка из man-страницы различаются. Последняя, как правило, более подробная, с примерами и ссылкой на связанные разделы документации.

    В-третьих, доступный список команд и результат их выполнения зависит от ваших прав в системе. Как правило, потенциально опасные для целостности системы команды, и команды, влияющие на работу других пользователей, не доступны обычному пользователю. Полными правами по отношению к системе имеет только один пользователь (суперпользователь)- root . Обычно, учетная запись данного пользователя используется только для изменения настроек системы, и в большинстве дистрибутивов Linux, после установки системы, нет возможности работать под root ‘ом в графической среде, в сеансах удаленного подключения, или даже при локальном входе в систему, как это сделано в Ubuntu . Такой подход позволяет предотвратить разрушение системы при ошибках пользователя, и вполне оправдан, однако существуют случаи, когда без прав root не обойтись. Для получения прав пользователя root (суперпользователя, superuser) , которому доступны все возможные команды, используйте команду su . Она позволяет сменить текущего пользователя. Если пользователь не задан, то подразумевается root. .

    Для выполнения отдельно взятой команды от имени суперпользователя root или другого пользователя используется команда sudo :

    sudo ifconfig - выполнить команду ifconfig от имени суперпользователя root

    sudo su - Комбинация sudo и su - выполнить команду su от имени суперпользователя root. Данный вариант команды позволяет пользователю перейти в учетную запись root без сохранения текущей пользовательской среды (знак "-").

    Обычно, использование команды sudo предпочтительнее, чем использование su и, при дополнительных настройках системы, позволяет легко отдавать отдельным пользователям только строго необходимые привилегии. Основная часть настроек sudo хранится в файле /etc/sudoers и задает правила, определяющие, какие пользователи, каких компьютеров, какие команды могут выполнять с вводом или без ввода пароля. Администратор системы может даже на какое-то время передать полномочия суперпользователя root любому пользователю, не передавая ему пароль от учетной записи root .

        Начинающих пользователей Linux обычно пугает работа в командной оболочке из-за необходимости набирать слишком длинные строки команд, имен каталогов или файлов. Однако, очень часто в таком наборе нет необходимости. При работе в среде командной оболочки очень удобно использовать режим подстановки имен с помощью клавиши Tab . Например, для получения списка файлов каталога /home/everyone пользователю необходимо набрать команду

    ls /home/everyone

    Однако, оболочка позволяет обойтись без полного набора пути. Если после набора ls /h нажать клавишу Tab , то в командной строке будет подставлена недостающая часть имени каталога - ome , и в строке ввода отобразится

    ls /home/

    Аналогично, не нужно набирать полностью оставшуюся часть пути, а только e и Tab . Если существуют частично совпадающие имена файлов или каталогов, то подстановка выполняется только для общей части имени. Если в каталоге /home имеются подкаталоги everyone1 и everyone2 то после нажатия клавиши Tab выполнится подстановка общей части everyone и на экране отобразится список из возможных вариантов ввода - everyone1 и everyone2 . Остается только ввести недостающую часть имени (1 или 2). Тот же прием используется и при наборе команд. Например, если набрать в качестве команды символ e и нажать Tab то отобразится список всех доступных команд, начинающихся с буквы e , если затем набрать символ c и снова нажать Tab , то будет выставлена подстановка имени до echo , или если есть другие варианты - подстановка общей части и возможные варианты имени.

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

      Для просмотра текста, ушедшего за пределы видимости экрана используются комбинации клавиш 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 имя файла журнала

    Например:

    script /home/user/mysession.log

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

    Для просмотра истории ранее введенных команд используются стрелки Вверх/Вниз. При вводе набранной или вызванной из истории команды положение курсора относительно строки ввода значения не имеет.

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

    Для просмотра информации в конечной части файлов (например, журналов) используется команда tail :

    tail /var/log/mrssages - отобразить последние 10 строк (значение по умолчанию) из файла журнала /var/log/messages.

    tail –n 100 /var/log/mrssages - отобразить последние 100 строк из файла журнала /var/log/messages.


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

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

    Полный список опций можно получить по shutdown --help

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

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

    Можно также воспользоваться изменением уровня запуска системы командой 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, то графическая оболочка при старте системы запускаться не будет.

    Все выше сказанное относится к системам инициализации SysV (SystemV), которая много лет использовалась во всех дистрибутивах Linux для загрузки рабочей среды с помощью скриптов init . Однако, начиная с 2012г, наметился постепенный переход на systemd новую систему инициализации, изначально разработанную для дистрибутива Fedora, начиная с Fedora 148 . Попросту говоря, systemd - это демон инициализации других демонов в Linux, пришедший на замену используемому ранее скрипту инициализации (/sbin/init). Главная его особенность - распараллеливание запуска служб в процессе загрузки системы, что позволяет существенно ускорить запуск операционной системы. Реализация systemd значительно отличается не только логикой, но и принципами управления процессом запуска, набором программных модулей и конфигурационных файлов. Файла /etc/initd больше нет, и для определения уровня запуска в systemd используются символические ссылки, например:

    Для состояния init 3
    ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

    Для состояния init 5
    ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

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


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

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

    Ps --help

    Примеры использования:

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

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

    В верхней части окна выводятся суммарные данные о состоянии системы - текущее время, время с момента загрузки системы, число пользователей в системе, число процессов в разных состояниях, данные об использовании процессора и памяти.

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

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

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

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


    Команда kill

        Эти же действия (принудительное завершение процесса и изменение его приоритета) можно выполнить и без команды top.

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

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

    Если в команде kill номер сигнала не задан, то используется значение SIGKILL, т.е предыдущую команду можно было ввести как kill PID:
    kill 11597

        При завершении процесса завершаются и порожденные им процессы.

        Для завершения процесса по его имени используется команда killall:
    killall mc - завершить процесс, в имени которого есть "mc"
    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.

    Перечень наиболее часто используемых команд:

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

    pwd – отобразить путь текущего каталога
    cd – перейти в указанный каталог
    ls – отобразить список файлов каталога, с ключом -l показывает дополнительные сведения о файлах.
    cp – копирование файлов/папок
    mv – перемещение файлов/папок
    mkdir – создать папку
    rm – удалить файлы/папки, с ключом -r удаляет и все вложенные папки, с ключом -f - удаляет открытые файлы или каталоги
    rmdir – удаление пустой папки
    chmod – изменить права доступа к файлу
    chown - сменить владельца файла или каталога
    find - найти файл. Задается исходный путь для поиска и шаблон поиска, find / -name .X* - искать от корневого каталога файлы, содержащие в имени символы .X
    which - отобразить полный путь исполняемого файла, доступного в данной оболочке, например which ifconfig
    touch - изменить временные отметки файла. Удобно использовать для создания пустых файлов – touch myfile создаст пустой файл myfile .

    Системные команды

    Эти команды обычно используется от имени суперпользователя (с командой sudo).

    – выключение компьютера
    reset – очищает окно терминала
    passwd – сменить свой пароль, а суперпользователю - поменять пароль любого пользователя
    users - отобразить список пользователей, вошедших в систему.
    yum - установка, удаление или обновление программного обеспечения в дистрибутивах Fedora, RedHat и т.п.
    dpkg - установка, удаление или обновление программного обеспечения в дистрибутивах Debian, Ubuntu и т.п.
    apt-get - установка, удаление или обновление программного обеспечения в дистрибутивах на основе Debian (Ubuntu, Mint и т.п.)

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

    ps – отобразить список текущих активных процессов
    lsof - отобразить список открытых файлов процесса или пользователя
    strace - отобразить список системных вызовов
    last - отобразить историю перезагрузок и регистраций пользователей в системе
    kill – послать сигнал процессу, обычно используется для принудительного завершения работы процесса.
    killall – завершение работы всех процессов, имена которых заданы параметром командной строки
    top – отображение списка текущих процессов и интерактивное управление ими.

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

    ifconfig – конфигурация сетевых интерфейсов
    route - таблица маршрутизации
    ifup / ifdown - включить /выключить сетевой интерфейс
    ip - просмотр или изменение параметров конфигурации протокола IP
    netstat - отобразить состояние сетевых соединений
    arp, ping, nslookup, traceroute - наиболее часто используемые команды сетевой диагностики.

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

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

    Тем не менее, знание основных команд терминала необходимо любому, кто имеет дело с ОС.

    Синтаксис команд терминала Linux и команды помощи

    В самом общем виде синтаксис команды терминала Linux можно записать как:

    Команда [опции] [файлы/папки]
    где в качестве опций (часто называют ключами) указываются параметры, влияющие на выполнение команды, а файлы и папки являются объектами, на которые направлено действие команды.

    Т.к. для разных команд один и тот же ключ может означать разные действия, описать все ключи не представляется возможным. Для получения информации о команде можно воспользоваться ключом --help, который является универсальным для большинства команд.

    Для получения расширенной справки о команде можно воспользоваться командой man или info.

    С помощью опции –version можно узнать номер версии команды. Примеры получения справки для основной команды терминала Linux - ls:

    Ls --help ls --verison man ls infols
    Таким образом, можно легко получить необходимую информацию о синтаксисе, ключах и действиях команды.

    Обычные пользователи имеют ограниченные возможности при выполнении команд терминала Linux.

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

    Чтобы получить права суперпользователя не выходя из системы надо выполнить команду терминала su и ввести пароль root.

    Стоит отменить, что все пользователи, знающие root-пароль, по сути, обладают всеми правами в системе. Если существует необходимость дать пользователям возможность выполнять операции от имени суперпользователя и при этом ограничить свободу действий, можно воспользоваться командой sudo, предварительно настроив список разрешенных операций и доступных файлов, для каждого пользователя.

    Точную информацию о работе sudo лучше всего просмотреть смотреть в каждом отдельном дистрибутиве, вызвав ее справку.

    При выполнении sudo пользователю нужно ввести свой пароль. Настройки возможностей, доступных пользователям по команде sudo хранятся в /etc/sudoers (подробнее man/etc/sudoers).

    Работа с файлами и доступ - основные команды терминала
    Команды терминала Linux используемые наиболее часто :
    • pwd– вывод текущей рабочей папки;
    • ls– вывод список файлов и папок;
    • cd– выбор рабочей папки;
    • locate– поиск файлов;
    • chmod– настройка прав доступа;
    • rpm–qa– показывает установленные пакеты в rpm-linux;
    • dpkg -l |more – показывает установленные пакеты в deb-linux;
    • rpm–i(rpm -e) – установка (удаление) rpm-пакета;
    • apt-get install (apt-get remove) – установка (удаление) deb-пакета;
    • mount (umount) – монтирование (размонтирование) носителей информации;
    • fdisk –l – просмотр списка всех подключенных носителей;
    • mkfs– форматирование дисков и разделов.
    Команды терминала Linux для настройки сети и управление процессами
    Знание следующих основных команд даст первоначальное представление о настройке сети в ОС Linux, управлении процессами и другом с помощь команд терминала:
    • ifconfig– отображение настроек сетевых интерфейсов, настройка параметров сети (IP, маска и т.д.), запуск сети;
    • ping– проверка доступности узлов сети;
    • route– просмотр и настройка таблицы маршрутизации;
    • nameserver– настройка DNS-серверов;
    • psaxjf– показать запущенные процессы;
    • pgrep -l– показать IDпроцесса;
    • kill– команда терминала Linux чтобы завершить процесс;
    • clear– очистка окна терминала;
    • export– назначение принтера по умолчанию;
    • lpr– вывод на печать.
    Команды терминала можно объединять в контейнеры, записывать в файлы и при необходимости запускать их на выполнение.

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

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