Основные команды Ubuntu
Короткая шпаргалка по базовым командам, которые чаще всего нужны на сервере Ubuntu.
Обновление системы
sudo apt update && sudo apt upgrade -y
Обновить список пакетов без установки обновлений:
sudo apt update
Установить доступные обновления:
sudo apt upgrade -y
Перезагрузить сервер:
sudo reboot
Выключить сервер:
sudo shutdown now
Пакеты
Найти пакет:
apt search nginx
Показать информацию о пакете:
apt show nginx
Установить пакет:
sudo apt install nginx -y
Удалить пакет:
sudo apt remove nginx -y
Удалить пакет вместе с конфигами:
sudo apt purge nginx -y
Удалить больше не нужные зависимости:
sudo apt autoremove -y
Сервисы systemd
Проверить статус сервиса:
sudo systemctl status nginx
Запустить сервис:
sudo systemctl start nginx
Остановить сервис:
sudo systemctl stop nginx
Перезапустить сервис:
sudo systemctl restart nginx
Перечитать конфиг без полного рестарта, если сервис это поддерживает:
sudo systemctl reload nginx
Включить автозапуск:
sudo systemctl enable nginx
Отключить автозапуск:
sudo systemctl disable nginx
Показать упавшие сервисы:
systemctl --failed
Логи
Смотреть логи сервиса:
sudo journalctl -u nginx
Смотреть последние 100 строк логов:
sudo journalctl -u nginx -n 100
Смотреть логи в реальном времени:
sudo journalctl -u nginx -f
Смотреть системный лог:
sudo journalctl -xe
Посмотреть последние строки файла:
tail -n 100 /var/log/syslog
Следить за файлом лога:
tail -f /var/log/syslog
Диск и место
Показать свободное место:
df -h
Показать размер папки:
du -sh /var/www
Показать размеры вложенных папок:
du -h --max-depth=1 /var | sort -h
Найти самые большие файлы в папке:
sudo find /var -type f -size +100M -exec ls -lh {} \;
Показать диски и разделы:
lsblk
Файлы и папки
Показать файлы в папке:
ls -la
Перейти в папку:
cd /var/www
Создать папку:
mkdir -p /var/www/site
Скопировать файл:
cp source.txt target.txt
Скопировать папку:
cp -r source-dir target-dir
Переместить или переименовать:
mv old-name new-name
Удалить файл:
rm file.txt
Удалить папку:
rm -rf old-dir
Открыть файл в nano:
nano /etc/hosts
Права
Поменять владельца файла или папки:
sudo chown -R www-data:www-data /var/www/site
Поменять права на папки:
sudo find /var/www/site -type d -exec chmod 755 {} \;
Поменять права на файлы:
sudo find /var/www/site -type f -exec chmod 644 {} \;
Сделать скрипт исполняемым:
chmod +x script.sh
Пользователи
Показать текущего пользователя:
whoami
Добавить пользователя:
sudo adduser username
Добавить пользователя в группу sudo:
sudo usermod -aG sudo username
Сменить пароль пользователя:
sudo passwd username
Переключиться на другого пользователя:
su - username
Процессы
Показать процессы:
ps aux
Найти процесс по имени:
ps aux | grep nginx
Интерактивный просмотр нагрузки:
top
Если установлен htop:
htop
Завершить процесс по PID:
kill 12345
Принудительно завершить процесс:
kill -9 12345
Сеть
Показать IP-адреса:
ip addr
Показать маршруты:
ip route
Проверить доступность хоста:
ping -c 4 google.com
Проверить DNS:
dig example.com
Если dig не установлен:
sudo apt install dnsutils -y
Показать открытые порты:
sudo ss -tulpn
Проверить HTTP-запрос:
curl -I https://example.com
UFW firewall
Проверить статус:
sudo ufw status verbose
Разрешить SSH:
sudo ufw allow OpenSSH
Разрешить HTTP и HTTPS:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
Включить firewall:
sudo ufw enable
Отключить firewall:
sudo ufw disable
Удалить правило:
sudo ufw delete allow 80/tcp
Архивы
Создать tar.gz архив:
tar -czf backup.tar.gz /var/www/site
Распаковать tar.gz архив:
tar -xzf backup.tar.gz
Создать zip архив:
zip -r backup.zip /var/www/site
Распаковать zip архив:
unzip backup.zip
SSH и копирование файлов
Подключиться по SSH:
ssh user@server-ip
Подключиться по SSH на нестандартный порт:
ssh -p 2222 user@server-ip
Скопировать файл на сервер:
scp file.txt user@server-ip:/home/user/
Скопировать файл с сервера:
scp user@server-ip:/home/user/file.txt .
Скопировать папку через rsync:
rsync -avz ./site/ user@server-ip:/var/www/site/