Ответ
Администрирование Linux-сервера включает в себя управление системными ресурсами, пользователями, службами, сетью и безопасностью. Ниже перечислены ключевые аспекты и соответствующие им утилиты.
1. Управление файловой системой и пользователями
Это базовые задачи по навигации, управлению правами доступа и учетными записями.
- Навигация и файлы:
ls,cd,cp,mv,rm,find - Права доступа:
chmod(изменение прав),chown(смена владельца) - Пользователи:
useradd,usermod,passwd
Пример: рекурсивно выдать права на директорию
# Дать владельцу (u) права на чтение, запись и исполнение (rwx),
# а группе (g) и остальным (o) - только на чтение и исполнение (r-x)
chmod -R u=rwx,go=r-x /var/www/my_project
2. Управление процессами и службами
Контроль за запущенными программами и системными демонами (службами).
- Процессы:
ps aux(список всех процессов),top/htop(интерактивный мониторинг),kill(завершение процесса) - Службы (systemd):
systemctl start|stop|restart|status <service_name>
Пример: проверка статуса веб-сервера Nginx
systemctl status nginx
3. Сетевая конфигурация и диагностика
Настройка сетевых интерфейсов и анализ трафика.
- Конфигурация:
ip addr(показать IP-адреса),ip route(показать таблицу маршрутизации) - Диагностика:
ping(проверка доступности хоста),ss -tulpn(просмотр открытых портов),curl(отправка HTTP-запросов)
4. Управление пакетами
Установка, обновление и удаление программного обеспечения.
- Debian/Ubuntu:
apt update,apt install <package> - CentOS/RHEL/Fedora:
dnf install <package>
5. Анализ логов
Просмотр системных журналов для отладки и мониторинга.
- systemd журналы:
journalctl -u <service_name>(логи конкретной службы),journalctl -f(просмотр в реальном времени) - Традиционные логи:
tail -f /var/log/syslog
6. Автоматизация
Использование скриптов и планировщиков для выполнения рутинных задач.
- Скрипты: Написание сценариев на
bash. - Планировщик:
cronдля запуска команд по расписанию.
Пример: задача для cron, выполняющая бэкап каждый день в 2:00 ночи
# Открыть редактор crontab командой: crontab -e
# И добавить строку:
0 2 * * * /usr/local/bin/backup_script.sh