Основные команды терминала Linux Ubuntu Server
В данной статье перечислены основные, для работы, команды терминала Linux Ubuntu Server. Также здесь представлены примеры этих команд с различными ключами. Статью можно условно назвать «30 полезных команд терминала Linux».
В прошлой статье «Основы Linux Server для начинающих» мы познакомились с серверной операционной системой Ubuntu Server 10.10, узнали ее особенности, а также рассмотрели некоторые из команд, которые Вам понадобятся для первоначальной работы, но как Вы понимаете для полноценного управления сервером этого конечно недостаточно. Все начинающие системные администраторы обязаны знать, какие команды и программы представлены в Ubuntu Server, и не просто знать, а уметь ими пользоваться.
Здесь мы с Вами рассмотрим основные команды и программы, которыми, если Вы будете работать с Linux, Вы обязательно будете пользоваться.
Сразу хотелось бы отметить, что практически у всех команд, программ, которые используются в Linux, есть специальные «ключи» (или их еще называют «опции») и параметры. Для чего они нужно, сейчас попробую объяснить.
Программа, которую Вы запускаете, выполняет определенную задачу, а «ключи» указывают ей как эту задачу выполнить, т.е. вносят свои коррективы, критерии, условия. Также некоторым программам, чтобы выполнить свою задачу, необходимо своего рода сырье, с которым нужно проработать, «параметры» как раз и нужны, для того чтобы давать это сырье, например, при операции копирования необходимо указать что копировать, так вот то, что Вы укажите в качестве копирования (файл, папку) и будет параметром.
Для каждой команды Вы можете сами посмотреть необходимые ключи, и что они делают с помощью встроенной документации. Для этого служит команда man, например, Вы хотите узнать, что делает команда ls, введите следующее и получите весь manual.
Команды терминала Linux
Ну а теперь перейдем непосредственно к самим командам.
1. Начнем с команды ls. Она нужна, для того чтобы Вы могли посмотреть, что у Вас находится в текущем каталоге (файлы и папки). Пример, Вы только что загрузились и перед Вами командная строка, на самом деле Вы находитесь в своем домашнем каталоге и для того чтобы посмотреть, что в нем находится, введите следующее.
Сразу советую попробовать поэкспериментировать с ключами (т.е. например, введите команду без параметров, а потом добавляйте по одному и увидите существенное отличие).
2. Следующая команда cd. Она используется для перехода в каталог, например:
Где, test — это каталог, в который Вы хотите перейти, но помните, в данном случае каталог test находится в Вашем домашнем каталоге, в других случаях Вам необходимо писать полный путь до каталога, например для перехода в каталог /etc/test введите следующее.
После того как Вы поработали в одном из каталогов, Вам скорей всего захочется перейти в домашний каталог, это делается с помощью команды cd без параметров.
3. Чтобы определить в каком каталоге Вы сейчас находитесь, используйте следующую команду без параметров и ключей.
4. Далее научимся создавать эти самые каталоги, а создаются они с помощью команды mkdir. Например, для того чтобы создать в домашнем каталоге папку test введите следующее.
Где, test — это название каталога.
5. Теперь удалим созданный каталог, используя следующую команду.
Где, test название Вашего каталога, который Вы хотите удалить. Также можно еще прописать ключ –f для форсированного удаления (т.е. без всяких подтверждений).
6. Каталоги создавать и удалять научились, теперь научимся создавать файлы, напишите следующую команду.
7. Для удаления какого-нибудь файла или каталога используйте следующую команду.
8. Теперь давайте запишем что-нибудь в этот файл, используем редактор nano, например, введите.
откроется чистый лист, напишите что-нибудь и нажмите ctrl+o (для сохранения) подтвердите сохранение, а для выхода из редактора нажмите ctrl+x
9. А для того чтобы проверить сохранилось ли то, что Вы написали в файле test, используйте команду cat, т.е.
Где, test название Вашего файла. Команда cat как раз используется для чтения стандартного ввода, т.е. может легко читать файлы (Совет! посмотрите man по этой команде, у нее много ключей, которые можно использовать в различных ситуациях).
10. Теперь допустим, Вам ненужно читать весь файл (так как он допустим большой 1000 строк и больше), Вы можете прочитать только первые 10 строк с помощью команды head, например.
у команды head есть ключи, например Вы, хотите прочитать первые 100 строк.
Где, –n100 количество строк, которые необходимо прочитать.
11. Теперь рассмотрим обратную ситуацию, Вам необходимо прочитать 10 последних строк, для этого введите следующее.
Также можете использовать ключи, например.
Или также можно написать вот так.
12. Теперь Вы, наверное, догадались, а как же нам узнать количество строк, это легко можно сделать с помощью команды.
После запуска Вам покажут 3 числа, где первое — это количество строк в файле, второе – это количество слов, а третье — это количество символов. У данной команды есть ключи:
В качестве альтернативы можете использовать команду cat с ключом –n, где на экран Вам выведут все содержимое файла с пронумерованными строками, тоже иногда требуется.
13. А сейчас давайте научимся копировать каталоги и файлы, делается как всегда очень легко.
Где, test1 это файл, который Вы хотите скопировать, а test2 файл в который Вы хотите копировать, полезна тогда, если вдруг Вам нужно создать файл практически с одним содержимым, используйте эту команду чтобы не перепечатывать заново. Каталоги копируются с использованием такого же принципа.
14. Перемещение или переименование происходит практически также, только с помощью другой команды.
Применяется как для файлов, так и для каталогов.
15. Теперь перейдем к более нужному и полезному в повседневной работе, и начнем мы со следующей команды.
Это как бы диспетчер задач в Windows, он показывает текущую информацию о Вашей системе, например: использование оперативной памяти, список запущенных процессов и многое другое.
16. А если Вам необходимо узнать только информацию об оперативной памяти Вы можете использовать следующую команду.
17. Иногда нужно узнать текущую дату и время на компьютере или изменить ее, для этого используется команда.
Для того чтобы изменить время на компьютере используйте ключ –s например, давайте поменяем текущее время на 12:30:00 для этого введите вот это.
18. Перейдем к сетевым командам и начнем со следующей команды.
Она показывает информацию о сконфигурированных сетевых устройствах.
19. Следующая команда
это таблица маршрутизации.
20. Если Вам необходимо узнать сетевое имя компьютера наберите вот это.
21. Для просмотра статистики по сетевым интерфейсам можно использовать команду.
а если использовать ее с ключами –rn, то получится, то же самое что и команда route.
Где, –l ключ, который показывает список сигналов в системе.
Самыми часто используемыми сигналами в Linux Ubuntu являются сигналы: 15, 2, 3, 9 все эти сигналы используются для завершения процесса, а почему, Вы спросите, они расположены в таком порядке? сейчас объясню, 15 сигнал самый корректный сигнал для завершения процесса, т.е. при таком сигнале система попытается сохранить все данные и т.д., а 9 самый жесткий, т.е. системе абсолютно наплевать на все, она просто и безжалостно убивает процесс. Исходя из этого, можно сделать вывод о том, что сигналы расположены именно в порядке корректности завершения процесса. Для того чтобы завершить процесс необходимо указать его имя или pid. Например, завершим процесс test, у него pid 30, с помощью сигнала 9.
23. Поговорим о жестких дисках. Для того чтобы получить информацию о состоянии жестких дисков, т.е. размер и так далее используйте команду df, например.
Где, –h используется для удобства, т.е. информация показывается в мегабайтах.
24. Для того чтобы узнать, сколько весит отдельная папка, все файлы в ней по отдельности, используйте следующую команду.
25. Также для работы с жесткими дисками используется команда fdisk, например, Вам необходимо узнать информацию обо всех разделах на жестком диске, для этого используйте следующее.
где, — l ключ, который показывает информацию обо всех разделах.
Для того чтобы создавать разделы на жестком диске введите вот это.
где, /dev/sda – путь к жесткому диску.
Этой командой Вы войдете в программу, в которой и будете создавать разделы.
26. Но для начала Вам необходимо смонтировать этот жесткий диск, делается это следующим образом.
27. Как не сложно догадаться размонтировать можно с помощью команды umount.
28. Вот мы смонтировали диск, теперь хотим создать файловую систему, делается это так.
29. Теперь поговорим о ядре, для того чтобы узнать версию ядра введите следующее.
А для полной информации о ядре используйте ключ –a.
30. Для того чтобы узнать список загруженных в ядро всех модулей используйте команду.
На заметку! Если Вы хотите научиться пользоваться Linux на домашнем компьютере без использования командной строки, то рекомендую почитать мою книгу – « Linux для обычных пользователей »
Вот мы с Вами и рассмотрели 30 полезных команд Ubuntu Server. Надеюсь, материал был Вам полезен, пока!
105 команд для работы с сервером Linux по SSH
SSH — это протокол для установки связи между PC и сервером. Команды SSH, или как их еще называют «команды для PuTTY», — это инструкции для управления различными функциями сервера. С технической точки зрения, это примерно то же самое, что управлять компьютером на базе Linux через терминал. Принципиальное отличие лишь в том, что для управления сервером сначала нужно установить с ним дистанционное соединение, а уже потом переходить к работе. На локальной «машине» этот этап можно пропустить. Но речь не о ней, и мы снова возвращаемся к SSH.
Еще раз отмечу, что речь идет о подключении к серверу на базе Linux, и все описываемые ниже утилиты работают именно на нем.
Подключение к серверу через SSH
Мы уже выяснили, что представляет собой SSH и команды для него. Теперь установим соединение с сервером.
Естественно, перед началом надо арендовать виртуальный хостинг или VDS у одного из доступных провайдеров. У Timeweb, к примеру.
Если у вас macOS или Linux
Все. Соединение установлено, можно переходить к работе непосредственно с сервером.
Если у вас Windows
Управление протоколом SSH
У команды для подключения к удаленному PC по SSH есть две важных опции:
Работа с командной строкой, горячие клавиши и дополнительные символы
Базовые методы управления текстом в терминале.
clear — удаляет из текущий сессии терминала все ранее выведенные в него данные, содержимое открытых документов и историю использованных команд. Используется, когда нужно четко лицезреть вывод конкретной операции.
history — показывает ранее использованные приложения и инструменты. Без дополнительных аргументов отображает 10 элементов. Но их количество можно изменить вручную, добавив к слову history любое число. history 13, к примеру.
whatis — дает однострочную справку к любой из установленных программ. Принцип работы следующий: вводим слово whatis, а за ним следом название приложения, о котором хотим узнать. Например, чтобы узнать о том, что такое nano, введем в терминал: whatis nano.
man название пакета — открывает документацию к любой из установленных программ. В ней можно посмотреть, какие функции есть у приложения, как им пользоваться, какие могут возникнуть проблемы.
Дополнительные символы
Не совсем команды, но тоже текстовые элементы, причем полезные.
; — разделитель, необходимый, чтобы активировать сразу несколько команд подряд. Это выглядит так: cd
/Documents; mkdir Novaya_papka; rmdir Staraya-papka. Команды будут выполняться друг за другом независимо от результата выполнения каждой из них.
&& — то же самое, что и ;, но с важным нюансом. Команды, соединенные с помощью &&, будут выполняться друг за другом, только если предыдущая завершилась успешно. Синтаксис аналогичный:
| — запускает сразу две команды. Это может быть полезно, когда нужно запросить информацию из какого-нибудь приложения, а потом найти в полученных данных определенную строку, код, слово или иной элемент текста.
— сокращение от /home/имя учетной записи/. Часто фигурирует в инструкциях.
Горячие клавиши
Парочка полезных сочетаний клавиш.
Стрелка вверх — показывает предыдущую команду.
Ctrl+C — прерывает запущенный процесс.
Ctrl+A — перемещает курсор в начало строки.
Ctrl+E — перемещает курсор в конец строки.
Сетевые функции и параметры сервера
Утилиты и инструменты для вебмастеров и администраторов.
apachectl startssl — запускает сервер Apache (если вы его используете, конечно).
apachectl stop — выключает Apache.
apachectl restart — перезапускает Apache.
/usr/local/etc/rc.d/mysql-server restart — активирует скрипт перезапуска системы MySQL.
50 основных команд Linux для новичков
Терминал и текстовые команды — главный способ управления операционной системой Linux. Особенно, если речь идет о сервере – на него редко ставят графический интерфейс, и вся работа выполняется исключительно через командную строку. Поэтому любому администратору важно знать хотя бы с десяток ключевых команд для терминала Линукс, нужных для навигации в системе и базового управления файлами. В этом материале мы их как раз разберем.
Базовые команды для работы с терминалом
То, что поможет при работе с консолью в целом.
Команды для управления правами на файлы и директории
Все, что нужно для разрешения проблем, связанных с правами в Linux.
Команды для управления пользователями
Linux — многопользовательская система. Ей одновременно могут управлять несколько людей. Поэтому здесь достаточно сложная система добавления и редактирования учетных записей.
Установка, удаление и обновление пакетов
Для установки программ в Linux используются менеджеры пакетов. Они разнятся от дистрибутива к дистрибутиву, поэтому команды для управления ими тоже отличаются. Рассмотрим наиболее популярные.
Debian/Ubuntu
Red Hat Linux/CentOS
Команды для навигации и базовой работы с файлами
Самый крупный список в статье. Содержит в себе практически все мелкие утилиты и инструменты для взаимодействия с файлами и папками. Причем речь идет не только об их изменении, но и о получении информации о них.
Вот, что написано в тестовом документе
Что в терминал выводит cat
И что выводит grep
Команды для отображения базовой информации и управления системой
Утилиты, делящиеся разного рода справочной информацией с администратором компьютера.
На этом все. Это список команд, которыми я хотел бы поделиться с новичками. Я разобрал основное, что будет важно в самом начале работы. Ну а вы всегда можете воспользоваться документацией, открывающейся через man, и подробнее ознакомиться с любой из команд или утилит.
Основные linux-команды для новичка
Linux — это операционная система. Как винда (windows), только более защищенная. В винде легко подхватить вирус, в линуксе это практически невозможно. А еще линукс бесплатный, и ты сам себе хозяин: никаких тебе неотключаемых автообновлений системы!
Правда, разобраться в нем немного посложнее… Потому что большинство операций выполняется в командной строке. И если вы видите в вакансии «знание linux» — от вас ожидают как раз умение выполнять простейшие операции — перейти в другую директорию, скопировать файл, создать папочку… В этой статье я расскажу про типовые операции, которые стоит уметь делать новичку. Ну и плюс пара полезняшек для тестировщиков.
Я дам кратенькое описание основных команд с примерами (примеры я все проверяла на cent os, red hat based системе) + ссылки на статьи, где можно почитать подробнее. Если же хочется копнуть еще глубже, то см раздел «Книги и видео по теме». А еще комментарии к статье, там много полезного написали)
Содержание
Где я? Как понять, где находишься
Очень полезная команда, когда у вас нет ничего, кроме командной строки под рукой. Расшифровывается как Print Working Directory. Запомните ее, пригодится.
Как понять, что находится в папке
Команда ls позволяет просмотреть содержимое каталога:
Хотя лучше использовать команду сразу с флагом «l»:
Такая команда выведет более читабельный список, где можно будет сразу увидеть дату создания файла, его размер, автора и выданные файлу права.
У команды есть и другие флаги, но чаще всего вы будете использовать именно «ls – l».
См также:
Команда ls Linux — подробнее о команде и всех ее флагах
Команда ls – просмотр каталога — о команде для новичков (без перечисления всех флагов)
Как перейти в другую директорию
С помощью команды cd:
Путь может быть абсолютным или относительным.
По абсолютному пути
Либо у вас где-то записан путь, «куда идти», либо вы подсмотрели его в графическом интерфейсе (например, в WinSCP).
Вставляем путь в командную строку после «cd»
Ну вот, мы переместились из домашней директории (обозначается как
По относительному пути
Относительный путь — относительно вашей текущей директории, где вы сейчас находитесь. Если я уже нахожусь в /home/student, а мне надо в /home/student/log, команда будет такой:
Если мне надо из /home/student/photo в /home/student/photo/city/msk/2017/cat_1, команда будет такой:
Я не пишу /home/student/photo, так как я уже там.
В линуксе можно задавать путь относительно домашней папки текущего пользователя. Домашняя директория обозначается
/. Дальше вы уже можете указывать подпапки:
Эта команда будет работать отовсюду. И переместит нас в /home/user/log.
Вот пример, где я вошла под пользователем students. Исходно была в директории /var, а попала в /home/students/log:
С автодополнением
Если вы начнете набирать название папки и нажмете Tab, система сама его подставит. Если просто нажмете Tab, ничего не вводя, система начнет перебирать возможные варианты:
— (cd tab) Может, ты имел в виду папку 1?
— (tab) Нет? Может, папку 2?
— (tab) Снова нет? Может, папку 3?
— (tab) Снова нет? Может, файл 1 (она перебирает имена всех файлов и директорий, которые есть в той, где вы сейчас находитесь)?
— (tab) У меня кончились варианты, поехали сначала. Папка 1?
cd lon(Tab) → cd long-long-long-long-name-folder — начали вводить название папки и система сама подставила имя (из тех, что есть в директории, где мы находимся).
cd (Tab)(Tab)(Tab) — система перебирает все файлы / папки в текущей директории.
Это очень удобно, когда перемещаешься в командной строке. Не надо вспоминать точное название папки, но можно вспомнить первую букву-две, это сократит количество вариантов.
Подняться наверх
Подняться на уровень выше:
Если нужно поднять на два уровня выше, то
И так до бесконечности =) Можно использовать файл, лежащий на уровне выше или просто сменить директорию.
Как создать директорию
Используйте команду mkdir:
Можно и в другом месте создать папку:
Когда это нужно? Например, если вам надо сделать бекап логов. Создаете папку и сохраняете туда нужные логи. Или если вы читаете инструкцию по установке ПО и видите там «создать папку». Через командную строку это делается именно так.
Как создать файл
Такая команда создаст пустой файл с названием «app.log». А потом уже можно открыть файл в редакторе и редактировать.
Как отредактировать файл
Вот честное слово, лучше делать это через графический интерфейс!
Но если такой возможности нет, чтож… Если использовать программы, которые есть везде, то у вас два варианта:
Для перемещения по файлу используйте кнопки со стрелками. После того, как закончите редактировать файл, нажмите:
А вот с vim с этим сложнее. В него легко зайти:
Войти вошли, а как выйти то, аааа? Тут начинается легкая паника, потому что ни одна из стандартных комбинаций не срабатывает: Esc, ctrl + x, ctrl + q… Если под рукой есть второй ноутбук или хотя бы телефон / планшет с интернетом, можно прогуглить «как выйти из vim», а если у вас только одно окно с терминалом, которое вы заблокировали редактором?
Делюсь секретом, для выхода надо набрать:
Исходно, когда мы открываем файл через vim, то видим его содержимое, а внизу информацию о файле:
Когда нажимаем двоеточие, оно печатается внизу:
Если не печатается, не паникуем! Тогда попробуйте нажать Esc (вернуться в нормальный режим), потом Enter (подтвердить команду), а потом снова печатайте. Фух, помогло, мы вышли оттуда.
На самом деле сейчас всё не так страшно. Даже если вас заслали работать в банк, где нет доступа в интернет, а вы вошли в vi и не знаете как выйти, всегда можно погулить выход с телефона. Слава мобильному интернету! Ну а если вы знаете логин-пароль от сервера, то можно просто закрыть терминал и открыть его снова.
Если нужно выйти, сохранив изменения, используйте команду
Ну а про возможности редактирования см статьи ниже =)
Как перенести / скопировать файл
Допустим, у нас в директории /opt/app/log находится app.log, который мы хотим сохранить в другом месте. Как перенести лог в нужное место, если нет графического интерфейса, только командная строка?
Скопировать файл
Если мы находимся в директории /opt/app/log:
В данном примере мы использовали относительный путь для «что копировать» — мы уже находимся рядом с логом, поэтому просто берем его. А для «куда копировать» используем абсолютный путь — копируем в /home/olga.
Можно сразу переименовать файл:
В этом случае мы взяли app.log и поместили его в папку /home/olga, переименовав при этом в app_test_2020_03_08.log. А то мало ли, сколько логов у вас в этом папке уже лежит, чтобы различать их, можно давать файлу более говорящее имя.
Если в «куда копировать» файл с таким именем уже есть, система не будет ничего спрашивать, просто перезапишет его. Для примера положим в папку log внутри домашней директории файл «app.log», который там уже есть:
Никаких ошибок, система просто выполнила команду.
Скопировать директорию
Команда остается та же, «cp», только используется ключ R — «копировать папку рекурсивно»:
Так в директории /home/olga появится папка «log».
Переместить файл
Если надо переместить файл, а не скопировать его, то вместо cp (copy) используем mv (move).
Можно использовать относительные и абсолютные пути:
Можно сразу переименовать файл:
Переместить директорию
Аналогично перемещению файла, команда mv
Как удалить файл
С помощью команды rm (remove):
Если нужно удалить все файлы в текущей директории (скажем, вычищаем старые логи перед переустановкой приложения), используйте «*»:
Если нужно удалить папку, надо добавить флаг -r (recursive):
Если вы пытаетесь удалить файлы, которые уже используются в программе или доступны только для чтения, система будет переспрашивать:
А теперь представьте, что вы чистите много файлов. И на каждый система переспрашивает, и надо постоянно отвечать «да, да, да. » (y – enter, y – enter, y – enter)… Чтобы удалить все без вопросов, используйте флаг -f (force):
Но учтите, что это довольно опасная команда! Вот так надоест подстверждать удаление и введешь «-rf», а директорию неправильно укажешь… Ну и все, прости-прощай нужные файлы. Аккуратнее с этой командой, особенно если у вас есть root-полномочия!
Опция -v показывает имена удаляемых файлов:
Тут вы хотя бы можете осознать, что натворили )))
Как изменить владельца файла
Если у вас есть root-доступ, то вы наверняка будете выполнять все действия под ним. Ну или многие… И тогда любой созданный файл, любая папка будут принадлежать root-пользователю.
Это плохо, потому что никто другой с ними работать уже не сможет. Но можно создать файл под root-ом, а потом изменить его владельца с помощью команды chown.
Допустим, что я поднимаю сервис testbase. И он должен иметь доступ к директории user и файлу test.txt в другой директории. Так как никому другому эти файлики не нужны, а создала я их под рутом, то просто меняю владельца:
В итоге был владелец root, а стал testbase. То, что надо!
Как установить приложение
Если вы привыкли к винде, то для вас установка приложения — это скачать некий setup файлик, запустить и до упора тыкать «далее-далее-далее». В линуксе все немного по-другому. Тут приложения ставятся как пакеты. И для каждой системы есть свой менеджер пакетов:
Давайте посмотрим на примере, как это работает. В командной строке очень удобно работать с Midnight Commander (mc) — это как FAR на windows. К сожалению, программа далеко не всегда есть в «чистом» дистрибутиве.
И вот вы подняли виртуалку на centos 7, хотите вызвать Midnight Commander, но облом-с.
Ничего страшного, установите это приложение через yum:
Он там будет что-то делать, качать, а потом уточнит, согласны ли вы поставить программу с учетом ее размеров. Если да, печатаем «y»:
И система заканчивает установку.
Вот и все! Никаких тебе унылых «далее-далее-далее», сказал «установи», программа установилась! Теперь, если напечатать «mc» в командной строке, запустится Midnight Commander:
Как запустить приложение
Чтобы запустить скрипт, нужно указать полный путь к нему:
Это важно! Даже если вы находитесь в той папке, где и скрипт, он не будет найден, если просто указать название sh-скрипта. Надо написать так:
Поиск идет только в каталогах, записанных в переменную PATH. Так что если скрипт используется часто, добавляйте путь туда и вызывайте просто по названию:
Если же приложение запускается как сервис, то все еще проще:
Чтобы сервис test запускался автоматически при рестарте системы, используйте команду:
Она добавит службу в автозапуск.
Как понять, где установлено приложение
Вот, например, для интеграции Jenkins и newman в Jenkins надо прописать полный путь к ньюману в параметре PATH. Но как это сделать, если newman ставился автоматически через команду install? И вы уже забыли, какой путь установки он вывел? Или вообще не вы ставили?
Чтобы узнать, куда приложение установилось, используйте whereis (без пробела):
Как создать архив
Стандартная утилита, которая будет работать даже на «голой» системе — tar. Правда, для ее использования надо запомнить флаги. Для создания архива стандартная комбинация cvzf:
В данном примере мы упаковали директорию /home/test, внутри которой было две картинки — 502.jpg и 504.jpg.
Для распаковки меняем флаг «c» на «x» и убираем «z»:
Хотя система пишет, что распаковала «/home/test», на самом деле папка «test» появляется там, где мы сейчас находимся.
Давайте разберемся, что все эти флаги означают:
Если очень хочется использовать rar, то придется изгаляться. Через yum установка не прокатит:
Говорит, нет такого пакета:
Придется выполнить целую пачку команд! Сначала скачиваем, разархивируем и компилируем:
Как посмотреть использованные ранее команды
Вот, допустим, вы выполняли какие-то сложные действия. Или даже не вы, а разработчик или админ! У вас что-то сломалось, пришел коллега, вжух-вжух ручками, magic — работает. А что он делал? Интересно же!
Или, может, вы писали длинную команду, а теперь ее надо повторить. Снова набирать ручками? Неохота! Тем более что есть помощники:
Если надо «отмотать» недалеко, проще через стрелочку пролистать команды. Один раз нажали — система показала последнюю команду. Еще раз нажали — предпоследнюю. И так до 1000 раз (потому что именно столько хранится в истории).
Большой бонус в том, что линукс хранит историю даже при перезапуске консоли. Это вам не как в винде — скопировал текст, скопировал другой, а первый уже потерялся. А при перезагрузке системы вообще все потерялось.
Если тыкать в стрелочку не хочется, или команды была давно, можно напечатать «history» и внимательно изучить команды.
См также:
История команд Linux — больше о возможностях history
Как посмотреть свободное место
Сколько места свободно на дисках
Сколько весит директория
Как узнать IP компьютера
Если у вас настроены DNS-имена, вы подключаетесь к linux-машине именно по ним. Ведь так проще запомнить — это testbase, это bugred… Но иногда нужен именно IP. Например, если подключение по DNS работает только внутри рабочей сети, а коллега хочет подключиться из дома, вот и уточняет айпишник.
Чтобы узнать IP машины, используйте команду:
Также можно использовать ifconfig:
Как узнать версию OS
Сидите вы у Заказчика на линуксовой машине. Пытаетесь что-то установить — не работает. Лезете гуглить, а способы установки разные для разных операционных систем. Но как понять, какая установлена на данной машине?
На этой виртуалке стоит CentOs 7.
Если нужна версия ядра:
Как узнать, как работает команда
Если вы не знаете, как работает команда, всегда можно спросить о ней саму систему, используя встроенную команду man:
Закрыть мануал можно с помощью клавиши q. Для того, кто первый раз в линуксовой консоли, это совсем не очевидно, а подсказки есть не везде.
Команда удобна тем, что не надо даже уходить из командной строки, сразу получаешь всю информацию. К тому же это всегда актуальная информация. А что вы там нагуглите — неизвестно =))
Хотя лично мне проще какую-то команду прогуглить, ведь так я получу русское описание + сначала самые главные флаги (а их может быть много). Но я сама новичок в линуксе, это подход новичка. А лучше сразу учиться прокачивать навык поиска по man-у. Он вам очень пригодится для более сложных задач!
Если man у программы нет, используйте флаг -h (—help):
Как создать много тестовых папок и файлов
Допустим, у нас есть некая папка test. Создадим в ней сотню директорий и кучу файликов в каждой:
Вот и все, дальше можно играться с ними!
Ага, в домашней директории. Создам себе песочницу:
Вот в ней и буду творить!
А потом можно проверить, что получилось:
Как-то так! Имхо, полезные команды.
Я нашла их в книге «Командная строка Linux. Полное руководство», они используются для того, чтобы создать песочницу для прощупывания команды find. Я, как и автор, восхищаюсь мощью командной строки в данном случае. Всего 2 строчки, а сколько боли бы принесло сделать похожую структуру через графический интерфейс!
И, главное, тестировщику полезно — может пригодиться для тестов.
Как протестировать IOPS на Linux
Это очень полезно делать, если машину вам дает заказчик. Там точно SSD-диски? И они дают хороший iops? Если вы разрабатываете серверное приложение, и от вас требуют выдерживать нагрузку, нужно быть уверенными в том, что диски вам выдали по ТЗ.
Наше приложение активно использует диск. Поэтому, если заказчик хочет видеть хорошие результаты по нагрузке, мы хотим видеть хорошие результаты по производительности самих дисков.
Но верить админам другой стороны на слово нельзя. Если приложение работает медленно, они, разумеется, будут говорить, что у них то все хорошо, это «они» виноваты. Поэтому надо тестировать диски самим.
Я расскажу о том, как мы тестировали диски. Как проверили, сколько IOPS они выдают.
1) Скачиваем последнюю версию, распаковываем, переходим в каталог. В командах ниже нужно заменить «fio-3.19» на актуальную версию из списка
2) Должны стоять пакеты для сборки
Какие должны быть результаты:
Если должно быть 50 тысяч, а диск выдает сильно меньше, то:
— он не SSD;
— есть сетевые задержки;
— неправильно примонтирован;
— с ними что-то еще плохое случилось и стоит поднять алярм.
И это все?
Еще полезно изучить команду find и регулярные выражения. Тестировщику как минимум надо уметь «грепать логи» — использовать grep. Но это уже остается на самостоятельный гуглеж.
База, которая всегда нужна — pwd, cp, mv, mkdir, touch. Остальное можно легко гуглить, как только возникает необходимость.
Вот вам еще пара ссылочек от меня:
Книги и видео по теме
Где тренироваться
Можно поднять виртуалку. Правда, тут сначала придется разбираться, как поднимать виртуалку )))
А можно купить облачную машину. Когда мне надо было поиграться с линуксом, я пошла на SimpleCloud (он мне в гугле одним из первых выпал и у него дружелюбный интерфейс. Но можно выбрать любой аналог) и купила самую дешманскую машину — за 150 руб в месяц. Месяца вам за глаза, чтобы «пощупать-потыркать», и этой машины с минимумом памяти тоже.
У меня был когда-то план самой платить эти 150р за то, чтобы дать машину в общий доступ. Но увы. Как я не пыталась ее огородить (закрывала команды типа ssh, ping и прочая), у меня не получилось. Всегда есть люди, которых хлебом не корми, дай испортить чужое. Выложил в общий доступ пароли? На тебе ддос-атаку с твоего сервера. Ну и сервер блокируют. После N-ой блокировки я плюнула на это дело. Кто хочет научиться, найдет 150р.
Чтобы подключиться к машине, используйте инструменты: