- Home »

25+ ключевых команд Linux, которые должен знать каждый разработчик
Если ты когда-нибудь запускал сервер на Linux, настраивал хостинг или просто хотел понять, что происходит под капотом твоего любимого VPS, то ты точно сталкивался с командной строкой. И вот тут начинается магия: десятки, сотни команд, которые могут показаться диким лесом. Но на самом деле, если разобраться с 25+ ключевыми командами Linux, ты сможешь не только выжить, но и автоматизировать, ускорить и обезопасить свою работу. Эта статья — твой чит-код: объясню, зачем знать эти команды, как они работают, как быстро их освоить и где они реально спасают жизнь. Без воды, только практика, кейсы, лайфхаки и немного гиковского юмора.
Зачем вообще нужны эти команды?
Linux — это не только ядро, но и целая экосистема инструментов, которые позволяют управлять файлами, процессами, сетью, безопасностью и автоматизацией. Если ты хочешь быстро развернуть сервер, настроить бэкапы, мониторинг или просто не попасть впросак при очередном сбое — эти команды твои лучшие друзья. Они экономят время, нервы и деньги (особенно если ты платишь за VPS по часам — вот тут можно выбрать подходящий).
Как это работает?
Всё просто: ты вводишь команду — Linux делает магию. Но под капотом каждая команда — это отдельная программа, которая взаимодействует с ядром, файловой системой, сетью и другими сервисами. Большинство команд можно комбинировать, автоматизировать через скрипты, запускать по расписанию (cron), а ещё — настраивать права, фильтровать вывод, искать ошибки и даже чинить то, что сломал сам (или твой коллега).
Как быстро и просто всё настроить?
- Открой терминал (ssh, local, web-консоль — неважно).
- Скопируй команды из этой статьи, попробуй их на тестовом сервере.
- Экспериментируй: меняй параметры, читай man-страницы (
man команда
). - Сохраняй полезные команды в свой
cheatsheet
или скрипты. - Не бойся ошибаться — большинство команд безопасны, если не запускать их с
sudo rm -rf /
(да, это мем, но не повторяй).
Топ-25+ ключевых команд Linux для разработчика и админа
Вот список команд, которые реально нужны. Для каждой — краткое описание, примеры, лайфхаки и подводные камни.
1. pwd # Показывает текущий каталог
2. ls # Список файлов и папок
3. cd # Переход между каталогами
4. mkdir # Создать папку
5. touch # Создать пустой файл
6. cp # Копировать файлы и папки
7. mv # Переместить или переименовать
8. rm # Удалить файл или папку
9. cat # Просмотр содержимого файла
10. less # Постраничный просмотр
11. tail # Последние строки файла (логов)
12. head # Первые строки файла
13. grep # Поиск по содержимому
14. find # Поиск файлов по критериям
15. du # Размер папок и файлов
16. df # Свободное место на диске
17. ps # Список процессов
18. top/htop # Мониторинг ресурсов
19. kill # Завершить процесс
20. ssh # Подключение к удалённому серверу
21. scp/rsync # Копирование файлов по сети
22. chmod # Права доступа
23. chown # Смена владельца
24. tar # Архивация и распаковка
25. wget/curl # Загрузка файлов по сети
26. nano/vim # Редакторы файлов
27. crontab # Планировщик задач
28. systemctl/service # Управление сервисами
29. uname # Информация о системе
30. history # История команд
Подробные разборы и примеры
Команда | Что делает | Пример использования | Лайфхаки и подводные камни |
---|---|---|---|
ls -lah |
Показывает список файлов с подробностями | ls -lah /var/log |
Используй ls --color=auto для цветного вывода. Не забывай про ls -R для рекурсии. |
cd ~ |
Переход в домашний каталог | cd /etc/nginx |
Используй cd - для возврата в предыдущую папку. |
cp -r |
Копирует папки рекурсивно | cp -r src/ backup/ |
Осторожно с перезаписью: cp -i спросит подтверждение. |
rm -rf |
Удаляет файлы и папки безвозвратно | rm -rf /tmp/test/ |
НЕ запускай rm -rf / — это уничтожит всё. Используй rm -i для подтверждения. |
grep -r "error" /var/log |
Ищет ошибки в логах | grep -i "fail" /var/log/auth.log |
Комбинируй с tail -f для live-мониторинга. |
find / -name "*.conf" |
Ищет все конфиги | find /etc -type f -mtime -1 |
Может быть медленным на больших дисках. Используй locate для быстрого поиска (предварительно обнови базу updatedb ). |
du -sh * |
Показывает размер всех папок | du -sh /var/* |
Идеально для поиска, что жрёт место. |
df -h |
Свободное место на дисках | df -hT |
Проверь, не забит ли /var/log или /tmp — это частая причина падения сервисов. |
ps aux | grep nginx |
Ищет процессы nginx | ps aux | grep sshd |
Используй pgrep для поиска по имени процесса. |
top / htop |
Мониторинг ресурсов | htop |
htop удобнее, но может не быть по умолчанию (установи через apt install htop ). |
kill -9 PID |
Жёстко убивает процесс | kill -9 1234 |
Сначала попробуй kill PID (мягко), -9 — только если не помогает. |
ssh user@host |
Подключение к серверу | ssh [email protected] |
Используй -i ключ для авторизации по ключу. Не забывай про ssh-copy-id для копирования ключей. |
scp file user@host:/path |
Копирование файлов по ssh | scp backup.tar.gz root@host:/backup/ |
Для больших объёмов — лучше rsync (поддерживает докачку и синхронизацию). |
chmod 755 file |
Права доступа | chmod +x script.sh |
Не давай 777 на всё подряд — это дыра в безопасности. |
chown user:group file |
Смена владельца | chown www-data:www-data /var/www/html -R |
Используй -R для рекурсии по папкам. |
tar -czvf backup.tar.gz /dir |
Архивация | tar -xzvf backup.tar.gz |
Не забывай про -p для сохранения прав. |
wget / curl |
Загрузка файлов | wget https://site.com/file |
curl мощнее для API-запросов, wget — для скачивания файлов. |
nano / vim |
Редакторы файлов | nano /etc/nginx/nginx.conf |
nano проще для новичков, vim — мощнее, но требует привыкания. |
crontab -e |
Планировщик задач | 0 3 * * * /usr/bin/backup.sh |
Проверь, что скрипт исполняемый и есть права. |
systemctl restart nginx |
Управление сервисами | systemctl status nginx |
Для старых систем — service nginx restart . |
uname -a |
Информация о системе | uname -r |
Показывает ядро, архитектуру, релиз. |
history |
История команд | history | grep ssh |
Используй !номер для повторного запуска. |
Положительные и отрицательные кейсы
-
Положительный: Использование
rsync
для бэкапов — экономит трафик и время, поддерживает инкрементальные копии.
Рекомендация: всегда тестируй восстановление бэкапа! -
Отрицательный: Случайно запущенный
rm -rf *
не в той папке — потеря данных.
Рекомендация: всегда проверяй, где ты находишься (pwd
), и делай бэкапы. -
Положительный:
grep
+tail -f
для live-мониторинга логов — быстро находишь ошибки и реагируешь. -
Отрицательный: Забытый
chmod 777
на веб-папке — уязвимость для взлома.
Рекомендация: используй минимально необходимые права.
Сравнение с альтернативными решениями
Задача | Стандартная команда | Альтернатива | Плюсы/Минусы |
---|---|---|---|
Мониторинг ресурсов | top |
htop |
htop — удобнее интерфейс, поддержка мыши, фильтры |
Поиск файлов | find |
locate |
locate — быстрее, но требует обновления базы |
Копирование по сети | scp |
rsync |
rsync — поддержка докачки, синхронизация, экономия трафика |
Редактирование файлов | nano |
vim , emacs |
nano проще, vim мощнее, emacs — для гиков |
Интересные факты и нестандартные способы использования
-
Комбинируй команды через пайпы:
ps aux | grep apache | awk '{print $2}' | xargs kill -9
— убивает все процессы apache. - Автоматизация: Скрипты на bash с этими командами позволяют автоматизировать бэкапы, деплой, мониторинг, алерты.
-
Безопасность: Используй
history -c
для очистки истории после выполнения чувствительных команд. -
Массовое переименование:
rename 's/.txt/.bak/' *.txt
— переименует все .txt в .bak. -
Планирование задач:
crontab -l
— быстро посмотреть все задачи по расписанию. -
Сжатие на лету:
tar czf - /dir | ssh user@host "cat > backup.tar.gz"
— архивирует и сразу отправляет на другой сервер.
Новые возможности для автоматизации и скриптов
- С этими командами можно писать скрипты для ежедневных задач: бэкапы, очистка логов, мониторинг, алерты на email.
- Комбинируй с
cron
для запуска по расписанию — и забудь о рутине. - Используй
systemctl
для автоматического рестарта сервисов при сбоях. - Скрипты на bash с этими командами — основа для CI/CD, деплоя, миграций.
Где искать официальную документацию?
- GNU Coreutils — подробная документация по большинству команд.
- man-страницы онлайн — всегда актуальные описания.
- ArchWiki: Command-line shell — кладезь практических советов.
Выводы и рекомендации
Освоив эти 25+ команд, ты получаешь не просто набор инструментов — ты становишься настоящим повелителем Linux. Это база для любой автоматизации, настройки серверов, поиска и устранения проблем. Не бойся экспериментировать, читай man
, комбинируй команды, пиши свои скрипты. Если нужен VPS для тестов или продакшена — вот тут можно арендовать, а если нужен выделенный сервер — тут.
Помни: чем лучше ты знаешь базовые команды, тем быстрее и надёжнее твои проекты. Удачи в автоматизации и пусть твои сервера всегда будут зелёными!
В этой статье собрана информация и материалы из различных интернет-источников. Мы признаем и ценим работу всех оригинальных авторов, издателей и веб-сайтов. Несмотря на то, что были приложены все усилия для надлежащего указания исходного материала, любая непреднамеренная оплошность или упущение не являются нарушением авторских прав. Все упомянутые товарные знаки, логотипы и изображения являются собственностью соответствующих владельцев. Если вы считаете, что какой-либо контент, использованный в этой статье, нарушает ваши авторские права, немедленно свяжитесь с нами для рассмотрения и принятия оперативных мер.
Данная статья предназначена исключительно для ознакомительных и образовательных целей и не ущемляет права правообладателей. Если какой-либо материал, защищенный авторским правом, был использован без должного упоминания или с нарушением законов об авторском праве, это непреднамеренно, и мы исправим это незамедлительно после уведомления. Обратите внимание, что переиздание, распространение или воспроизведение части или всего содержимого в любой форме запрещено без письменного разрешения автора и владельца веб-сайта. Для получения разрешений или дополнительных запросов, пожалуйста, свяжитесь с нами.