1. Управление пользователями
Создание пользователя и добавление в sudo
adduser username
usermod -aG sudo username
Просмотр информации о пользователе
id username
groups username
2. Переменные окружения
# Установка переменной
export PHP_VER=8.3
# Просмотр переменной
echo $PHP_VER
# Удаление переменной
unset PHP_VER
3. Информация о системе
Версия Linux
lsb_release -a
uname -a
cat /etc/os-release
Информация о процессоре и памяти
lscpu
free -h
top
htop
4. Логирование
# Просмотр журналов systemd
journalctl --unit service_name
journalctl -xe
# Работа с системными логами
less /var/log/syslog
tail -f /var/log/syslog
grep error /var/log/syslog
grep -C 5 "текст для поиска" /var/log/syslog
# Очистка логов
cat /dev/null > logfile.log
> logfile.log
# но лучше так
sudo truncate -s 0 /var/log/papka/file.log
5. Управление временем
# Установка часового пояса
timedatectl set-timezone Europe/Moscow
# Просмотр доступных часовых поясов
timedatectl list-timezones
# Установка времени вручную
sudo date "30 Sep 2015 4:43:42"
6. Сеть
Настройка сети в Ubuntu
# Файл конфигурации
/etc/netplan/00-installer-config.yaml
# Применение изменений
netplan --debug generate
netplan apply
Проверка сети
ip a
ifconfig
ping example.com
netstat -tulnp
ss -tl
7. Работа с сервисами
# Управление сервисами
systemctl start|stop|restart|status|enable service_name
# Проверка установленных пакетов
dpkg -l | grep -E 'ufw|firewalld|iptables'
# Поиск процессов
ps aux | grep -i process_name
8. Работа с файлами
# Копирование
cp /path/to/source /path/to/destination
cp -r /путь/к/исходной/папке /путь/к/папке/назначения, чтобы скопировать папку и всё ее содержимое рекурсивно
# Удаление
rm -r directory_name # рекурсивное удаление
rmdir directory_name # удаление пустой директории
# Создание ссылок
ln -s /target/path /link/path
# Поиск файлов
find / -type f -iname "filename*"
# Определение размера
du -sh /path/to/directory # размер директории
ls -lh # размер файлов
df -h # свободное место на дисках
9. Работа с дисками
Просмотр информации о дисках
lsblk
fdisk -l
df -h
Монтирование дисков
# Форматирование
mkfs.ext4 /dev/sdb1
# Монтирование
mount /dev/sdb1 /mnt/point
# Автомонтирование (добавить в /etc/fstab)
/dev/sdb1 /mnt/point ext4 defaults 0 2
10. Файрволы
iptables
# Разрешение портов
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 443 -j ACCEPT
# Сохранение правил
apt install iptables-persistent
netfilter-persistent save
UFW
# Основные команды
sudo ufw status verbose
sudo ufw allow ssh
sudo ufw allow 80/tcp
sudo ufw allow from 192.168.1.100
sudo ufw enable
Fail2Ban
# Проверка статуса
sudo fail2ban-client status
sudo fail2ban-client status service_name
# Перезагрузка
sudo service fail2ban restart
sudo service fail2ban reload
11. Веб-серверы
Nginx
# Проверка конфигурации
nginx -t
# Перезагрузка
nginx -s reload
systemctl restart nginx
# Просмотр логов
journalctl -xeu nginx.service
Apache
# Управление модулями
a2enmod module_name
a2dismod module_name
# Управление сайтами
a2ensite site.conf
a2dissite site.conf
# Перезагрузка
systemctl restart apache2
Обратный прокси (Nginx)
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
12. Базы данных
MySQL/MariaDB
# Создание базы данных
CREATE DATABASE dbname;
# Импорт/экспорт
mysqldump -u user -p dbname > backup.sql
mysql -u user -p dbname < backup.sql
# Работа с таблицами
SHOW DATABASES;
USE database_name;
SHOW TABLES;
DESCRIBE table_name;
13. SSL сертификаты (Let's Encrypt)
# Установка Certbot
sudo apt install certbot python3-certbot-nginx
# Получение сертификата
sudo certbot certonly --standalone -d example.com
# Тестовый прогон
sudo certbot certonly --dry-run -d example.com
# Генерация самоподписанного сертификата
openssl req -new -x509 -days 1461 -nodes -out cert.pem -keyout cert.key \
-subj "/C=RU/ST=SPb/L=SPb/O=Company/OU=IT/CN=example.com"
14. Docker
Установка Docker
sudo apt install docker.io
sudo systemctl enable --now docker
Основные команды
# Запуск контейнера
docker run -d --name container_name image:tag
# Просмотр контейнеров
docker ps -a
# Вход в контейнер
docker exec -it container_name /bin/bash
# Логи контейнера
docker logs container_name
Docker Compose
# Запуск
docker-compose up -d
# Остановка
docker-compose down
# Пересборка
docker-compose build
15. Screen
# Запуск сессии
screen
# Список сессий
screen -ls
# Возврат к сессии
screen -r session_id
# Отключение (не закрывая сессию)
Ctrl+A D
16. Полезные пути к конфигам
/etc/php/8.3/fpm/php.ini
/etc/nginx/nginx.conf
/etc/mysql/my.cnf
/etc/postfix/main.cf
/etc/dovecot/dovecot.conf
Примечание: Во всех командах, требующих прав суперпользователя, не забывайте использовать sudo где это необходимо.
Комментарии
Пока нет комментариев. Будьте первым!