Телеграм-канал основателя Checkroi — Вани Буявца

Посмотреть →
Агрегатор онлайн-курсов Checkroi.ru Блог Статьи о программировании Шпаргалка из 27 главных команд Линукса, необходимых каждому системному администратору

Шпаргалка из 27 главных команд Линукса, необходимых каждому системному администратору

от Илья Насонов
Опубликовано: Страница обновлена: 1005 просмотров Время прочтения: 19 минут

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

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

Как устроена операционная система Linux  

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

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

Структура системы. Система состоит из каталогов и файлов и имеет иерархическую структуру. Есть главный каталог — корневой, от него ветвятся все остальные каталоги и подкаталоги, каждый имеет своё назначение. Так, в /etc — находятся настройки системы, в /bin и /usr — файлы установленных программ, а в /dev подключаются внешние устройства: мышь, колонки, микрофон, флешка, портативный жёсткий диск и др.

Простая схема файловой системы LinuxПростая схема файловой системы Linux

Установка программ. Чтобы установить программу, пользователи Windows скачивают установочный файл из браузера. На Linux тоже есть свои магазины приложений, но доступны они только в новых версиях систем и предлагают ограниченное количество программ. Традиционно установочные файлы программ для Linux скачиваются из специального пакетного менеджера, встроенного в систему. Это похоже на то, как мы ищем и устанавливаем приложения на мобильный через Google Play Market или App Store. 

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

Расширяемость команд. У команд есть дополнительные параметры — опции, которые расширяют возможности базовой команды. Ниже я покажу это на примерах конкретных команд. 

Это основные факты об устройстве Linux, которые позволят сориентироваться в каталогах и файлах, заложат фундамент понимания системы и помогут начать пользоваться новой операционкой без страха «сложностей». А теперь перейдём к освоению базовых команд терминала.

Телеграм-канал Вани Буявца

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

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

man, manual — руководство пользователя. Команда открывает страницу с технической документацией по командам, встроенным функциям и программам

Запросим руководство по команде man.

Запрашиваем у системы мануал по команде manЗапрашиваем у системы мануал по команде man

Выводится список со всеми характеристиками команды: названием, синтаксисом, описанием, доступными опциями и др.

Так выглядит мануал по команде manТак выглядит мануал по команде man

help — команда, работающая по схожему принципу, что и предыдущая, но более практичная — она выводит сокращённую информацию о командах и выражениях без подробных теоретических выкладок: только описание, варианты применения и дополнительные опции

Справка help по команде caller Справка help по команде caller 

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

Узнаём, как расшифровываются команды pwd и IsУзнаём, как расшифровываются команды pwd и Is

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

Давайте найдём, где живёт командная строка, её системные файлы настройки и справочная информация о ней.

Ищем путь к файлам вручную, если не установлен рабочий столИщем путь к файлам вручную, если не установлен рабочий стол

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

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

Обычный пользователь может хранить данные только в своей папке, которая находится по адресу /home/имя_пользователя. Есть команды, отдать которые системе обычный пользователь не сможет — ему просто не хватит прав. Чтобы делать больше и по всей системе, нужны права администратора или суперпользователя.

sudo — делает вас суперпользователем с правами администратора. Но имейте в виду, что в отличие от Windows Linux не запрашивает подтверждение действия, а сразу выполняет его. Поэтому не рекомендую использовать права администратора, пока не разберётесь в системе получше,  чтобы случайно не отдать системе команду, которая её сломает

Система напоминает, что воспользовавшись sudo, мы становимся суперпользователями и берём на себя ответственность за данную нам властьСистема напоминает, что воспользовавшись sudo, мы становимся суперпользователями и берём на себя ответственность за данную нам власть

useraddрегистрирует нового пользователя

Создаём пользователя с именем studentСоздаём пользователя с именем student

userdel удаляет учётную запись и файлы пользователя

Удаляем пользователя с именем studentУдаляем пользователя с именем student

passwd изменяет пароли учётных записей. Обычный пользователь может изменить пароль только своей учётной записи, суперпользователь может изменить пароль любой учётной записи

Меняем пароль для пользователя IlyaМеняем пароль для пользователя Ilya

Теперь попробуем сориентироваться в Linux без рабочего стола.

Команды Linux для навигации по файловой системе

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

pwd — базовая команда для навигации по системе Linux. Показывает каталог, в котором вы находитесь в настоящее время 

Команда показывает, что сейчас мы находимся папке ilya, которая, в свою очередь, находится в каталоге homeКоманда показывает, что сейчас мы находимся папке ilya, которая, в свою очередь, находится в каталоге home

ls — демонстрирует файлы и папки текущего каталога 

Список папок, которые находятся в каталоге ilyaСписок папок, которые находятся в каталоге ilya   

Опция -l (list) расширяет базовые возможности команды ls и дополняет список файлов и папок каталога подробной информацией. 

Видим справа налево: дату и время создания, размер файла, имя пользователя, категорию прав (2) и тип файлового объекта (набор букв)Видим справа налево: дату и время создания, размер файла, имя пользователя, категорию прав (2) и тип файлового объекта (набор букв)     

cd — основная команда для перемещения по каталогам 

Простая схема перемещения по каталогамПростая схема перемещения по каталогам

Чтобы переместиться в папку на уровень выше, нужно добавить «..»:

Переместились из папки Документы обратно в основной каталогПереместились из папки Документы обратно в основной каталог

tab — крайне полезная для новичков команда-автозаполнение, которая срабатывает при двойном нажатии клавиши Tab

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

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

Или может предложить окончание команды, если мы сомневаемся в правильном её написании:

Команда показывает команды, которые начинаются на manКоманда показывает команды, которые начинаются на man

Теперь у нас есть глаза, время обзавестись руками.

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

Давайте разберёмся, как создавать и удалять каталоги и управлять файлами в них.

mkdir — создаёт папку 

Создадим папку student в текущем каталоге:

Создали папку student и через команду ls проверили содержимое каталогаСоздали папку student и через команду ls проверили содержимое каталога

А теперь создадим 5 одинаковых папок в одном каталоге. Для этого используем формулу mkdir имя_папки{количество папок, отсчёт с нуля}

Создали 5 папок с именем NewFolder одновременно и через команду ls проверили содержимое каталогаСоздали 5 папок с именем NewFolder одновременно и через команду ls проверили содержимое каталога

rmdir, rm — обе команды удаляют выбранный каталог или файл, но делают это по-разному 

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

rm уничтожает каталог целиком со всем содержимым. 

Удалили папку student и через команду ls проверили содержимое каталога. То же самое сделали для 5 папок одновременноУдалили папку student и через команду ls проверили содержимое каталога. То же самое сделали для 5 папок одновременно

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

Формула touch /путь_к_папке/имя_файла.расширение файла.

Создадим текстовый файл в папке «Документы»:

Создали файл с расширением txt в папке «Документы»Создали файл с расширением txt в папке «Документы»

cp — копирует файлы

Формула cp имя_файла путь_к_папке_куда_копируем

Скопировали файл из папки Документы в основной каталог Скопировали файл из папки Документы в основной каталог 

mv — перемещает файлы

Формула mv имя_ файла путь_куда_перемещаем

Переместили файл из основного каталога в папку «Общедоступные»Переместили файл из основного каталога в папку «Общедоступные»

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

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

В Linux нет встроенного диспетчера задач, как в Windows. Чтобы завершить какой-то процесс, нужно его сначала вычислить, затем идентифицировать и только потом «убить».

ps выводит список всех запущенных процессов

Два активных процесса bash и psДва активных процесса bash и ps

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

top — также показывает активные процессы, но в отличие от предыдущей команды, обновляет список каждые 2 секунды. Обновляемый список позволяет понять, какой из процессов активен постоянно 

Отследить процесс можно по номеру в колонке PID, а кем был запущен этот процесс, системой или пользователем — узнать в колонке USER Отследить процесс можно по номеру в колонке PID, а кем был запущен этот процесс, системой или пользователем — узнать в колонке USER 

kill, killall и xkill — убийцы процессов

Почему так много — давайте разбираться.

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

Завершаем процесс с идентификатором 2034Завершаем процесс с идентификатором 2034

killall завершает все процессы с одинаковым именем.

Завершили бы все процессы с именем opera. Если бы они были запущеныЗавершили бы все процессы с именем opera. Если бы они были запущены

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

Вместо курсора появляется крестик. Наводим его на окно «Домашняя папка» и завершаем процессВместо курсора появляется крестик. Наводим его на окно «Домашняя папка» и завершаем процесс

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

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

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

cal встроенный календарь

Календарь встроенныйКалендарь встроенный

fortune — моя любимая команда. Теперь, когда я пользователь Linux, мне больше не нужны паблики с цитатами

Linux ерунды не посоветуетLinux ерунды не посоветует

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

Мой список последних использованных командМой список последних использованных команд

yes — просто введите в терминал команду и любой текст и нажмите Enter. Что произойдёт дальше — увидите сами. Наслаждайтесь.

До покупки слона осталось 3...2...1До покупки слона осталось 3…2…1

banner — введите команду и любое слово или фразу на латинице и система нарисует цифровое полотно

Все любят CheсkroiВсе любят Cheсkroi

 rev — команда-перевёртыш. Оборачивает любую фразу

Введённые в терминал фразы будут переворачиваться, пока не нажмёте CTRL+C Введённые в терминал фразы будут переворачиваться, пока не нажмёте CTRL+C 

cowsay — работает в большинстве версий Linux. Введите после неё любую фразу и она появится из уст милой коровы

Уникальное явление онлайн-природы: цифровая корова здоровается с диджитал-корги РоемУникальное явление онлайн-природы: цифровая корова здоровается с диджитал-корги Роем

Если вы не очень ладите с коровами, можете выбрать своё тотемное животное из предустановленных самостоятельно. Чтобы посмотреть весь список доступных зверей, наберите сowsay -l

У Linux есть свой приличный зоопаркУ Linux есть свой приличный зоопарк

Кролик рад, что вы дочитали статью до конца, и благодарит вас

Кролик рад, что вы дочитали статью до конца, и благодарит вас

Подведём итог

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

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

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

Курсы от GeekBrains и «Нетологии» разработаны совместно с экспертами «Яндекса», Mail.ru и других крупных компаний со сложной IT-инфраструктурой. Они подойдут тем, кто хочет управлять корпоративными системами. 

Курс «Системный администратор» от GeekBrains

Записаться на курс «Системный администратор» от GeekBrains

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

Длительность: 7 месяцев
Стоимость: 79 600 ₽ 

На сайт курса

Профессия «Системный администратор» от Нетологии 

Записаться на курс «Системный администратор» от Нетологии

Вы научитесь самостоятельно развёртывать IT-инфраструктуру предприятия: устанавливать физические и виртуальные машины, управлять облачными приложениями, настраивать и диагностировать сети и обеспечивать надёжное хранение и передачу данных. Вы узнаете, как автоматизировать управление системой и разберётесь в основах DevOps-практики. Вы добавите в портфолио дипломный проект, а школа поможет подтянуть английский и трудоустроиться.

Длительность: 14 месяцев
Стоимость: 78 000 ₽

На сайт курса

Курсы от SkillFactory и OTUS заточены под тех, кто хочет работать в IT-компании, поддерживать инфраструктуру разработки и работу облачных сервисов и в будущем нацелен вырасти до DevOps-инженера.

Курс «Системный администратор» от SkillFactory 

«Системный администратор» от SkillFactory

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

Длительность: 9 месяцев
Стоимость: 81 600 ₽

На сайт курса

Специализация «Администратор Linux» от OTUS 

Записаться на курс Специализация «Администратор Linux» от OTUS

Вы научитесь управлять Linux на профессиональном уровне: контролировать системные процессы, настраивать веб-сервера, создавать базы данных и мониторить сети. Вы дополнительно освоите программирование на Java и сервисы для работы в команде разработчиков — Git и Docker. Вы попрактикуетесь на виртуальных стендах, соберёте портфолио и получите диплом и помощь с трудоустройством.

Длительность: 12 месяцев
Стоимость: 109 000 ₽

На сайт курса
Телеграм-канал Вани Буявца, только внизу
0 Коментариев
2

Почитаем еще?

Оставьте комментарий

Мы иногда используем cookie-файлы, чтобы получше узнать вас и персонализировать контент :) Замечательно!