mirror of
https://github.com/ilyamak04/DevOps.git
synced 2025-04-05 15:34:49 +02:00
98 lines
8.1 KiB
Markdown
98 lines
8.1 KiB
Markdown
## Оглавление
|
||
1. [Настройка сервера](#настройка-сервера)
|
||
2. [Пакетный менеджер](#пакетный-менеджер)
|
||
3. [Сеть](#сеть)
|
||
4. [База](#база)
|
||
|
||
### Настройка сервера
|
||
- `groups username` - группы пользователя
|
||
|
||
- `sudo addgroup groupname` - добавить группу
|
||
|
||
- `sudo adduser username` - добавить пользователя
|
||
|
||
- `sudo usermod -aG groupname username` - для добавления пользователя в группу без удаления его из других групп
|
||
|
||
- `su -`: если добавить - (или --login), это переключит вас на пользователя root и загрузит окружение, как если бы вы вошли в систему как root. Это означает, что все переменные окружения будут инициализированы для пользователя root, и вы будете находиться в домашнем каталоге root.
|
||
- `lsb_release -a` или `hostnamectl` - версия ОС
|
||
|
||
### Пакетный менеджер (apt)
|
||
- `apt remove --purge` или `sudo apt purge` - удаляет как сам пакет, так и все связанные с ним конфигурационные файлы
|
||
- `sudo apt autoremove` - используется для удаления пакетов, которые были автоматически установлены в качестве зависимостей для других пакетов, но больше не нужны
|
||
- `sudo apt update` - система скачивает список пакетов и их версий с серверов репозиториев, но **не устанавливает и не обновляет пакеты**.
|
||
- `sudo apt upgrade` - обновляет все установленные пакеты до последних доступных версий, основываясь на информации, полученной с помощью `apt update`, однако эта команда не устанавливает новые пакеты или не удаляет старые. Если для обновления пакета требуются новые зависимости, они не будут установлены.
|
||
- `sudo apt full-upgrade` - не только обновляет пакеты, но и может устанавливать новые зависимости и удалять старые пакеты, если это необходимо для завершения обновления
|
||
- `sudp apt install` - устанавливает пакет
|
||
- `supo apt search ` - поиск пакета по имени
|
||
- `sudo apt show` - инфо о пакете
|
||
- `sudo apt autoclean` - для удаления старых неиспользуемых файлов
|
||
- `sudo apt clean` - APT хранит загруженные .deb файлы в кэше на диске, чтобы очистить этот кэш. Эта команда удаляет все файлы в dir `/var/cache/apt/archives/`
|
||
- `/etc/apt/sources.list` - основной файл, где перечислены все репозитории. Этот файл указывает, откуда APT будет загружать пакеты.
|
||
- `/etc/apt/sources.list.d/` - в этот каталог можно добавлять дополнительные файлы для подключения новых репозиториев.
|
||
> Есть ещё `apt-get`, но это более старая команда, которая в основном используется для скриптов, потому что не предусматривает интерактивную работу с системой
|
||
|
||
APT работает поверх более низкоуровневого инструмента `dpkg`, который непосредственно устанавливает .deb пакеты.
|
||
- `sudo dpkg -i package_name.deb` - для установки `.deb` пакета
|
||
- `sudo apt --fix-broken install` - если возникли проблемы с зависимостями
|
||
### Сеть
|
||
- `cat /etc/ssh/sshd_config | grep Port` - показывает на каком порту открыт ssh
|
||
- `ss -tulpn` - информация о текущих сетевых соединениях и портах
|
||
- `curl ifconfig.me` - узнать внешний ip машины
|
||
|
||
### База
|
||
- `cp -p` - сохранить атрибуты файлов (время создания, права, владельца)
|
||
- `cp -v` - выводить информацию о каждом копируемом файле
|
||
- `mv -v` - подробный вывод при перемещении.
|
||
- `chmod 644 /etc/passwd` - изменение прав доступа к файлам и директориям
|
||
- `chown root:root /etc/hosts` - изменение владельца и группы
|
||
- `ps -aux` - выводит список всех процессов с информацией о пользователях, загрузке, времени и командах
|
||
- `ps -ef` - полная информация о процессах с идентификаторами владельцев
|
||
- `top -o %CPU` - сортировка процессов по указанному полю (например, по CPU)
|
||
- `kill -9 1234` - принудительное завершене процесса (1234 — PID процесса)
|
||
- `df -h` - информация о файловых системах
|
||
- `df -i` - иноды
|
||
- `du` - отображение размера файлов и каталогов
|
||
- `s` - отображает только итоговый размер
|
||
- `--max-depth=1` - выводит размер каталога и его подкаталогов
|
||
- `ifconfig` - информация о сетевых интерфейсах
|
||
- `ss -tulpn` - информация о сетевых соединениях
|
||
- `ping` - проверка доступности хоста
|
||
- `traceroute` - через какие маршрутизаторы проходит пакет до хоста
|
||
- `nslookup` - информация о DNS-сервере
|
||
|
||
- `sudo useradd -m username` - добавление нового пользователя (`-m` - создание домашнего каталога)
|
||
- `sudo passwd username` - установка или изменение пароля пользователя
|
||
- `sudo usermod -aG sudo username` - добавить пользователя в группу `sudo`
|
||
- `sudo groupadd developers` - создание новой группы
|
||
- `tail -f /var/log/*` - логи (`-f` - обновление в реальном времени)
|
||
- `journalctl` - утилита для просмотра логов служб, управляемых `systemd`
|
||
- `-u <service_name>` - просмотр логов конкретной службы
|
||
```bash
|
||
journalctl -u nginx
|
||
```
|
||
- `journalctl -u nginx -f` - просмотр логов в реальном времени
|
||
- `journalctl -n 100` - последние 100 строк
|
||
- `journalctl --since "2024-10-03 12:00:00" --until "2024-10-03 14:00:00"` - логи за конкретный период
|
||
- `journalctl -p err` - можно показывать только ошибки
|
||
- emerg (0): Аварийные сообщения.
|
||
- alert (1): Требуют немедленных действий.
|
||
- crit (2): Критические ошибки.
|
||
- err (3): Ошибки.
|
||
- warning (4): Предупреждения.
|
||
- notice (5): Важные события.
|
||
- info (6): Информационные сообщения.
|
||
- debug (7): Отладочные сообщения.
|
||
|
||
|
||
|
||
|
||
- `tar` - работа с архивами
|
||
- `-cvf` - создать архив
|
||
- `-xvf` - извлечь архив
|
||
- `-z` - использовать сжатие `gzip`
|
||
```bash
|
||
tar -xvfz backup.tar.gz /var/www
|
||
```
|
||
### Разное
|
||
|