Базовые команды Linux для администрирования — различия между версиями
Admin (обсуждение | вклад) (Новая страница: «= Базовые команды Linux для администрирования = == 1. Подготовка системы == * Войдите в систем…») |
Admin (обсуждение | вклад) |
||
Строка 11: | Строка 11: | ||
1. '''Просмотр текущей директории''': | 1. '''Просмотр текущей директории''': | ||
− | <code> | + | <code>pwd</code> |
− | pwd | ||
− | </code> | ||
2. '''Переход в директорию''': | 2. '''Переход в директорию''': | ||
− | <code> | + | <code>cd /path/to/directory</code> |
− | cd /path/to/directory | + | <code>cd ~</code> |
− | cd ~ | + | <code>cd ..</code> |
− | cd .. | + | <code>cd -</code> |
− | cd - | ||
− | </code> | ||
3. '''Просмотр содержимого директории''': | 3. '''Просмотр содержимого директории''': | ||
− | <code> | + | <code>ls</code> |
− | ls | + | <code>ls -l</code> |
− | ls -l | + | <code>ls -la</code> |
− | ls -la | + | <code>ls -lh</code> |
− | ls -lh | + | <code>ls -R</code> |
− | ls -R | ||
− | </code> | ||
4. '''Создание директорий''': | 4. '''Создание директорий''': | ||
− | <code> | + | <code>mkdir directory_name</code> |
− | mkdir directory_name | + | <code>mkdir -p path/to/directory</code> |
− | mkdir -p path/to/directory | + | <code>mkdir -m 755 directory_name</code> |
− | mkdir -m 755 directory_name | ||
− | </code> | ||
=== Управление файлами === | === Управление файлами === | ||
1. '''Создание файлов''': | 1. '''Создание файлов''': | ||
− | <code> | + | <code>touch filename</code> |
− | touch filename | + | <code>echo "content" > filename</code> |
− | echo "content" > filename | + | <code>cat > filename</code> |
− | cat > filename | ||
− | </code> | ||
2. '''Копирование файлов''': | 2. '''Копирование файлов''': | ||
− | <code> | + | <code>cp file1 file2</code> |
− | cp file1 file2 | + | <code>cp -r directory1 directory2</code> |
− | cp -r directory1 directory2 | + | <code>cp -p file1 file2</code> |
− | cp -p file1 file2 | + | <code>cp -u file1 file2</code> |
− | cp -u file1 file2 | ||
− | </code> | ||
3. '''Перемещение файлов''': | 3. '''Перемещение файлов''': | ||
− | <code> | + | <code>mv file1 file2</code> |
− | mv file1 file2 | + | <code>mv file1 /path/to/directory/</code> |
− | mv file1 /path/to/directory/ | + | <code>mv -i file1 file2</code> |
− | mv -i file1 file2 | ||
− | </code> | ||
4. '''Удаление файлов''': | 4. '''Удаление файлов''': | ||
− | <code> | + | <code>rm filename</code> |
− | rm filename | + | <code>rm -r directory</code> |
− | rm -r directory | + | <code>rm -f filename</code> |
− | rm -f filename | + | <code>rm -i filename</code> |
− | rm -i filename | ||
− | </code> | ||
=== Поиск файлов === | === Поиск файлов === | ||
1. '''Поиск по имени''': | 1. '''Поиск по имени''': | ||
− | <code> | + | <code>find /path -name "filename"</code> |
− | find /path -name "filename" | + | <code>find /path -name "*.txt"</code> |
− | find /path -name "*.txt" | + | <code>find /path -type f -name "*.log"</code> |
− | find /path -type f -name "*.log" | ||
− | </code> | ||
2. '''Поиск по размеру''': | 2. '''Поиск по размеру''': | ||
− | <code> | + | <code>find /path -size +100M</code> |
− | find /path -size +100M | + | <code>find /path -size -1M</code> |
− | find /path -size -1M | + | <code>find /path -size 0</code> |
− | find /path -size 0 | ||
− | </code> | ||
3. '''Поиск по времени''': | 3. '''Поиск по времени''': | ||
− | <code> | + | <code>find /path -mtime -7</code> |
− | find /path -mtime -7 | + | <code>find /path -mtime +30</code> |
− | find /path -mtime +30 | + | <code>find /path -newer file1</code> |
− | find /path -newer file1 | ||
− | </code> | ||
4. '''Поиск по содержимому''': | 4. '''Поиск по содержимому''': | ||
− | <code> | + | <code>grep "pattern" filename</code> |
− | grep "pattern" filename | + | <code>grep -r "pattern" /path</code> |
− | grep -r "pattern" /path | + | <code>grep -i "pattern" filename</code> |
− | grep -i "pattern" filename | + | <code>grep -n "pattern" filename</code> |
− | grep -n "pattern" filename | ||
− | </code> | ||
== 3. Управление процессами === | == 3. Управление процессами === | ||
Строка 107: | Строка 83: | ||
1. '''Просмотр всех процессов''': | 1. '''Просмотр всех процессов''': | ||
− | <code> | + | <code>ps aux</code> |
− | ps aux | + | <code>ps -ef</code> |
− | ps -ef | + | <code>ps auxf</code> |
− | ps auxf | ||
− | </code> | ||
2. '''Просмотр процессов в реальном времени''': | 2. '''Просмотр процессов в реальном времени''': | ||
− | <code> | + | <code>top</code> |
− | top | + | <code>htop</code> |
− | htop | ||
− | </code> | ||
3. '''Просмотр процессов по пользователю''': | 3. '''Просмотр процессов по пользователю''': | ||
− | <code> | + | <code>ps -u username</code> |
− | ps -u username | + | <code>ps aux | grep username</code> |
− | ps aux | grep username | ||
− | </code> | ||
4. '''Просмотр процессов по PID''': | 4. '''Просмотр процессов по PID''': | ||
− | <code> | + | <code>ps -p 1234</code> |
− | ps -p 1234 | ||
− | </code> | ||
=== Управление процессами === | === Управление процессами === | ||
1. '''Завершение процесса''': | 1. '''Завершение процесса''': | ||
− | <code> | + | <code>kill 1234</code> |
− | kill 1234 | + | <code>kill -9 1234</code> |
− | kill -9 1234 | + | <code>killall process_name</code> |
− | killall process_name | + | <code>pkill process_name</code> |
− | pkill process_name | ||
− | </code> | ||
2. '''Изменение приоритета процесса''': | 2. '''Изменение приоритета процесса''': | ||
− | <code> | + | <code>nice -n 10 command</code> |
− | nice -n 10 command | + | <code>renice 10 1234</code> |
− | renice 10 1234 | ||
− | </code> | ||
3. '''Запуск процесса в фоне''': | 3. '''Запуск процесса в фоне''': | ||
− | <code> | + | <code>command &</code> |
− | command & | + | <code>nohup command &</code> |
− | nohup command & | ||
− | </code> | ||
=== Мониторинг системы === | === Мониторинг системы === | ||
1. '''Просмотр использования CPU''': | 1. '''Просмотр использования CPU''': | ||
− | <code> | + | <code>top</code> |
− | top | + | <code>htop</code> |
− | htop | + | <code>vmstat 1 5</code> |
− | vmstat 1 5 | ||
− | </code> | ||
2. '''Просмотр использования памяти''': | 2. '''Просмотр использования памяти''': | ||
− | <code> | + | <code>free -h</code> |
− | free -h | + | <code>cat /proc/meminfo</code> |
− | cat /proc/meminfo | ||
− | </code> | ||
3. '''Просмотр использования диска''': | 3. '''Просмотр использования диска''': | ||
− | <code> | + | <code>df -h</code> |
− | df -h | + | <code>du -h /path</code> |
− | du -h /path | + | <code>du -sh /path</code> |
− | du -sh /path | ||
− | </code> | ||
4. '''Просмотр сетевых подключений''': | 4. '''Просмотр сетевых подключений''': | ||
− | <code> | + | <code>netstat -tlnp</code> |
− | netstat -tlnp | + | <code>ss -tlnp</code> |
− | ss -tlnp | + | <code>netstat -an</code> |
− | netstat -an | ||
− | </code> | ||
== 4. Управление пользователями и группами === | == 4. Управление пользователями и группами === | ||
Строка 186: | Строка 140: | ||
1. '''Создание пользователя''': | 1. '''Создание пользователя''': | ||
− | <code> | + | <code>useradd -m -s /bin/bash username</code> |
− | useradd -m -s /bin/bash username | + | <code>useradd -m -u 1001 -g users username</code> |
− | useradd -m -u 1001 -g users username | ||
− | </code> | ||
2. '''Удаление пользователя''': | 2. '''Удаление пользователя''': | ||
− | <code> | + | <code>userdel username</code> |
− | userdel username | + | <code>userdel -r username</code> |
− | userdel -r username | ||
− | </code> | ||
3. '''Изменение пароля''': | 3. '''Изменение пароля''': | ||
− | <code> | + | <code>passwd username</code> |
− | passwd username | ||
− | </code> | ||
4. '''Блокировка пользователя''': | 4. '''Блокировка пользователя''': | ||
− | <code> | + | <code>usermod -L username</code> |
− | usermod -L username | + | <code>usermod -U username</code> |
− | usermod -U username | ||
− | </code> | ||
=== Управление группами === | === Управление группами === | ||
1. '''Создание группы''': | 1. '''Создание группы''': | ||
− | <code> | + | <code>groupadd groupname</code> |
− | groupadd groupname | + | <code>groupadd -g 1001 groupname</code> |
− | groupadd -g 1001 groupname | ||
− | </code> | ||
2. '''Удаление группы''': | 2. '''Удаление группы''': | ||
− | <code> | + | <code>groupdel groupname</code> |
− | groupdel groupname | ||
− | </code> | ||
3. '''Добавление пользователя в группу''': | 3. '''Добавление пользователя в группу''': | ||
− | <code> | + | <code>usermod -aG groupname username</code> |
− | usermod -aG groupname username | ||
− | </code> | ||
4. '''Просмотр групп пользователя''': | 4. '''Просмотр групп пользователя''': | ||
− | <code> | + | <code>groups username</code> |
− | groups username | + | <code>id username</code> |
− | id username | ||
− | </code> | ||
== 5. Управление правами доступа === | == 5. Управление правами доступа === | ||
Строка 237: | Строка 175: | ||
1. '''Изменение владельца файла''': | 1. '''Изменение владельца файла''': | ||
− | <code> | + | <code>chown username filename</code> |
− | chown username filename | + | <code>chown username:groupname filename</code> |
− | chown username:groupname filename | + | <code>chown -R username:groupname directory</code> |
− | chown -R username:groupname directory | ||
− | </code> | ||
2. '''Изменение группы''': | 2. '''Изменение группы''': | ||
− | <code> | + | <code>chgrp groupname filename</code> |
− | chgrp groupname filename | + | <code>chgrp -R groupname directory</code> |
− | chgrp -R groupname directory | ||
− | </code> | ||
=== Изменение прав доступа === | === Изменение прав доступа === | ||
1. '''Изменение прав доступа''': | 1. '''Изменение прав доступа''': | ||
− | <code> | + | <code>chmod 755 filename</code> |
− | chmod 755 filename | + | <code>chmod u+x filename</code> |
− | chmod u+x filename | + | <code>chmod g-w filename</code> |
− | chmod g-w filename | + | <code>chmod o+r filename</code> |
− | chmod o+r filename | + | <code>chmod -R 755 directory</code> |
− | chmod -R 755 directory | ||
− | </code> | ||
2. '''Установка umask''': | 2. '''Установка umask''': | ||
− | <code> | + | <code>umask 022</code> |
− | umask 022 | + | <code>umask 002</code> |
− | umask 002 | ||
− | </code> | ||
3. '''Просмотр прав доступа''': | 3. '''Просмотр прав доступа''': | ||
− | <code> | + | <code>ls -l filename</code> |
− | ls -l filename | + | <code>stat filename</code> |
− | stat filename | ||
− | </code> | ||
== 6. Управление службами === | == 6. Управление службами === | ||
Строка 277: | Строка 205: | ||
1. '''Просмотр статуса службы''': | 1. '''Просмотр статуса службы''': | ||
− | <code> | + | <code>systemctl status service_name</code> |
− | systemctl status service_name | + | <code>systemctl is-active service_name</code> |
− | systemctl is-active service_name | + | <code>systemctl is-enabled service_name</code> |
− | systemctl is-enabled service_name | ||
− | </code> | ||
2. '''Запуск и остановка службы''': | 2. '''Запуск и остановка службы''': | ||
− | <code> | + | <code>systemctl start service_name</code> |
− | systemctl start service_name | + | <code>systemctl stop service_name</code> |
− | systemctl stop service_name | + | <code>systemctl restart service_name</code> |
− | systemctl restart service_name | + | <code>systemctl reload service_name</code> |
− | systemctl reload service_name | ||
− | </code> | ||
3. '''Включение и отключение автозапуска''': | 3. '''Включение и отключение автозапуска''': | ||
− | <code> | + | <code>systemctl enable service_name</code> |
− | systemctl enable service_name | + | <code>systemctl disable service_name</code> |
− | systemctl disable service_name | ||
− | </code> | ||
4. '''Просмотр всех служб''': | 4. '''Просмотр всех служб''': | ||
− | <code> | + | <code>systemctl list-units</code> |
− | systemctl list-units | + | <code>systemctl list-units --state=active</code> |
− | systemctl list-units --state=active | + | <code>systemctl list-units --state=failed</code> |
− | systemctl list-units --state=failed | ||
− | </code> | ||
=== Управление логами === | === Управление логами === | ||
1. '''Просмотр логов службы''': | 1. '''Просмотр логов службы''': | ||
− | <code> | + | <code>journalctl -u service_name</code> |
− | journalctl -u service_name | + | <code>journalctl -u service_name -f</code> |
− | journalctl -u service_name -f | + | <code>journalctl -u service_name --since "1 hour ago"</code> |
− | journalctl -u service_name --since "1 hour ago" | ||
− | </code> | ||
2. '''Просмотр системных логов''': | 2. '''Просмотр системных логов''': | ||
− | <code> | + | <code>journalctl</code> |
− | journalctl | + | <code>journalctl -f</code> |
− | journalctl -f | + | <code>journalctl --since "1 hour ago"</code> |
− | journalctl --since "1 hour ago" | ||
− | </code> | ||
3. '''Просмотр логов по приоритету''': | 3. '''Просмотр логов по приоритету''': | ||
− | <code> | + | <code>journalctl -p err</code> |
− | journalctl -p err | + | <code>journalctl -p warning</code> |
− | journalctl -p warning | ||
− | </code> | ||
== 7. Управление пакетами === | == 7. Управление пакетами === | ||
Строка 331: | Строка 245: | ||
1. '''Обновление списка пакетов''': | 1. '''Обновление списка пакетов''': | ||
− | <code> | + | <code>sudo apt update</code> |
− | sudo apt update | ||
− | </code> | ||
2. '''Установка пакета''': | 2. '''Установка пакета''': | ||
− | <code> | + | <code>sudo apt install package_name</code> |
− | sudo apt install package_name | + | <code>sudo apt install package1 package2</code> |
− | sudo apt install package1 package2 | ||
− | </code> | ||
3. '''Удаление пакета''': | 3. '''Удаление пакета''': | ||
− | <code> | + | <code>sudo apt remove package_name</code> |
− | sudo apt remove package_name | + | <code>sudo apt purge package_name</code> |
− | sudo apt purge package_name | ||
− | </code> | ||
4. '''Обновление системы''': | 4. '''Обновление системы''': | ||
− | <code> | + | <code>sudo apt upgrade</code> |
− | sudo apt upgrade | + | <code>sudo apt dist-upgrade</code> |
− | sudo apt dist-upgrade | ||
− | </code> | ||
5. '''Поиск пакетов''': | 5. '''Поиск пакетов''': | ||
− | <code> | + | <code>apt search keyword</code> |
− | apt search keyword | + | <code>apt list --installed</code> |
− | apt list --installed | + | <code>apt list --upgradable</code> |
− | apt list --upgradable | ||
− | </code> | ||
=== Управление репозиториями === | === Управление репозиториями === | ||
1. '''Добавление репозитория''': | 1. '''Добавление репозитория''': | ||
− | <code> | + | <code>sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu focal main"</code> |
− | sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu focal main" | ||
− | </code> | ||
2. '''Удаление репозитория''': | 2. '''Удаление репозитория''': | ||
− | <code> | + | <code>sudo add-apt-repository --remove "deb http://archive.ubuntu.com/ubuntu focal main"</code> |
− | sudo add-apt-repository --remove "deb http://archive.ubuntu.com/ubuntu focal main" | ||
− | </code> | ||
3. '''Обновление ключей''': | 3. '''Обновление ключей''': | ||
− | <code> | + | <code>sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY_ID</code> |
− | sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY_ID | ||
− | </code> | ||
== 8. Управление сетью === | == 8. Управление сетью === | ||
Строка 382: | Строка 280: | ||
1. '''Просмотр сетевых интерфейсов''': | 1. '''Просмотр сетевых интерфейсов''': | ||
− | <code> | + | <code>ip addr show</code> |
− | ip addr show | + | <code>ifconfig</code> |
− | ifconfig | + | <code>ip link show</code> |
− | ip link show | ||
− | </code> | ||
2. '''Настройка IP адреса''': | 2. '''Настройка IP адреса''': | ||
− | <code> | + | <code>sudo ip addr add 192.168.1.100/24 dev eth0</code> |
− | sudo ip addr add 192.168.1.100/24 dev eth0 | + | <code>sudo ip addr del 192.168.1.100/24 dev eth0</code> |
− | sudo ip addr del 192.168.1.100/24 dev eth0 | ||
− | </code> | ||
3. '''Включение и отключение интерфейса''': | 3. '''Включение и отключение интерфейса''': | ||
− | <code> | + | <code>sudo ip link set eth0 up</code> |
− | sudo ip link set eth0 up | + | <code>sudo ip link set eth0 down</code> |
− | sudo ip link set eth0 down | ||
− | </code> | ||
=== Управление маршрутизацией === | === Управление маршрутизацией === | ||
1. '''Просмотр таблицы маршрутизации''': | 1. '''Просмотр таблицы маршрутизации''': | ||
− | <code> | + | <code>ip route show</code> |
− | ip route show | + | <code>route -n</code> |
− | route -n | ||
− | </code> | ||
2. '''Добавление маршрута''': | 2. '''Добавление маршрута''': | ||
− | <code> | + | <code>sudo ip route add 192.168.2.0/24 via 192.168.1.1</code> |
− | sudo ip route add 192.168.2.0/24 via 192.168.1.1 | + | <code>sudo ip route add default via 192.168.1.1</code> |
− | sudo ip route add default via 192.168.1.1 | ||
− | </code> | ||
3. '''Удаление маршрута''': | 3. '''Удаление маршрута''': | ||
− | <code> | + | <code>sudo ip route del 192.168.2.0/24</code> |
− | sudo ip route del 192.168.2.0/24 | + | <code>sudo ip route del default</code> |
− | sudo ip route del default | ||
− | </code> | ||
=== Управление DNS === | === Управление DNS === | ||
1. '''Просмотр DNS настроек''': | 1. '''Просмотр DNS настроек''': | ||
− | <code> | + | <code>cat /etc/resolv.conf</code> |
− | cat /etc/resolv.conf | + | <code>systemd-resolve --status</code> |
− | systemd-resolve --status | ||
− | </code> | ||
2. '''Тестирование DNS''': | 2. '''Тестирование DNS''': | ||
− | <code> | + | <code>nslookup example.com</code> |
− | nslookup example.com | + | <code>dig example.com</code> |
− | dig example.com | + | <code>host example.com</code> |
− | host example.com | ||
− | </code> | ||
3. '''Настройка DNS''': | 3. '''Настройка DNS''': | ||
− | <code> | + | <code>echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf</code> |
− | echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf | ||
− | </code> | ||
== 9. Управление файрволом === | == 9. Управление файрволом === | ||
Строка 445: | Строка 325: | ||
1. '''Просмотр статуса''': | 1. '''Просмотр статуса''': | ||
− | <code> | + | <code>sudo ufw status</code> |
− | sudo ufw status | + | <code>sudo ufw status verbose</code> |
− | sudo ufw status verbose | ||
− | </code> | ||
2. '''Включение и отключение''': | 2. '''Включение и отключение''': | ||
− | <code> | + | <code>sudo ufw enable</code> |
− | sudo ufw enable | + | <code>sudo ufw disable</code> |
− | sudo ufw disable | ||
− | </code> | ||
3. '''Добавление правил''': | 3. '''Добавление правил''': | ||
− | <code> | + | <code>sudo ufw allow 22/tcp</code> |
− | sudo ufw allow 22/tcp | + | <code>sudo ufw allow from 192.168.1.0/24</code> |
− | sudo ufw allow from 192.168.1.0/24 | + | <code>sudo ufw deny 23/tcp</code> |
− | sudo ufw deny 23/tcp | ||
− | </code> | ||
4. '''Удаление правил''': | 4. '''Удаление правил''': | ||
− | <code> | + | <code>sudo ufw delete allow 22/tcp</code> |
− | sudo ufw delete allow 22/tcp | + | <code>sudo ufw delete 1</code> |
− | sudo ufw delete 1 | ||
− | </code> | ||
=== Управление iptables === | === Управление iptables === | ||
1. '''Просмотр правил''': | 1. '''Просмотр правил''': | ||
− | <code> | + | <code>sudo iptables -L -n -v</code> |
− | sudo iptables -L -n -v | + | <code>sudo iptables -L -n -v --line-numbers</code> |
− | sudo iptables -L -n -v --line-numbers | ||
− | </code> | ||
2. '''Добавление правил''': | 2. '''Добавление правил''': | ||
− | <code> | + | <code>sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT</code> |
− | sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT | + | <code>sudo iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT</code> |
− | sudo iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT | ||
− | </code> | ||
3. '''Удаление правил''': | 3. '''Удаление правил''': | ||
− | <code> | + | <code>sudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT</code> |
− | sudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT | + | <code>sudo iptables -D INPUT 1</code> |
− | sudo iptables -D INPUT 1 | ||
− | </code> | ||
4. '''Сохранение правил''': | 4. '''Сохранение правил''': | ||
− | <code> | + | <code>sudo iptables-save > /etc/iptables/rules.v4</code> |
− | sudo iptables-save > /etc/iptables/rules.v4 | ||
− | </code> | ||
== 10. Управление дисками === | == 10. Управление дисками === | ||
Строка 499: | Строка 363: | ||
1. '''Просмотр дисков''': | 1. '''Просмотр дисков''': | ||
− | <code> | + | <code>lsblk</code> |
− | lsblk | + | <code>fdisk -l</code> |
− | fdisk -l | + | <code>parted -l</code> |
− | parted -l | ||
− | </code> | ||
2. '''Просмотр использования дисков''': | 2. '''Просмотр использования дисков''': | ||
− | <code> | + | <code>df -h</code> |
− | df -h | + | <code>du -h /path</code> |
− | du -h /path | + | <code>du -sh /path</code> |
− | du -sh /path | ||
− | </code> | ||
3. '''Просмотр inode''': | 3. '''Просмотр inode''': | ||
− | <code> | + | <code>df -i</code> |
− | df -i | ||
− | </code> | ||
=== Создание разделов === | === Создание разделов === | ||
1. '''Создание раздела с fdisk''': | 1. '''Создание раздела с fdisk''': | ||
− | <code> | + | <code>sudo fdisk /dev/sdb</code> |
− | sudo fdisk /dev/sdb | ||
− | </code> | ||
2. '''Создание раздела с parted''': | 2. '''Создание раздела с parted''': | ||
− | <code> | + | <code>sudo parted /dev/sdb</code> |
− | sudo parted /dev/sdb | ||
− | </code> | ||
3. '''Создание файловой системы''': | 3. '''Создание файловой системы''': | ||
− | <code> | + | <code>sudo mkfs.ext4 /dev/sdb1</code> |
− | sudo mkfs.ext4 /dev/sdb1 | + | <code>sudo mkfs.xfs /dev/sdb1</code> |
− | sudo mkfs.xfs /dev/sdb1 | ||
− | </code> | ||
=== Монтирование дисков === | === Монтирование дисков === | ||
1. '''Создание точки монтирования''': | 1. '''Создание точки монтирования''': | ||
− | <code> | + | <code>sudo mkdir /mnt/disk1</code> |
− | sudo mkdir /mnt/disk1 | ||
− | </code> | ||
2. '''Монтирование диска''': | 2. '''Монтирование диска''': | ||
− | <code> | + | <code>sudo mount /dev/sdb1 /mnt/disk1</code> |
− | sudo mount /dev/sdb1 /mnt/disk1 | ||
− | </code> | ||
3. '''Автоматическое монтирование''': | 3. '''Автоматическое монтирование''': | ||
− | <code> | + | <code>echo "/dev/sdb1 /mnt/disk1 ext4 defaults 0 2" | sudo tee -a /etc/fstab</code> |
− | echo "/dev/sdb1 /mnt/disk1 ext4 defaults 0 2" | sudo tee -a /etc/fstab | ||
− | </code> | ||
== 11. Управление резервным копированием === | == 11. Управление резервным копированием === | ||
Строка 557: | Строка 403: | ||
1. '''Создание tar архива''': | 1. '''Создание tar архива''': | ||
− | <code> | + | <code>tar -czf backup.tar.gz /path/to/backup</code> |
− | tar -czf backup.tar.gz /path/to/backup | + | <code>tar -czf backup.tar.gz --exclude="*.tmp" /path/to/backup</code> |
− | tar -czf backup.tar.gz --exclude="*.tmp" /path/to/backup | ||
− | </code> | ||
2. '''Извлечение из архива''': | 2. '''Извлечение из архива''': | ||
− | <code> | + | <code>tar -xzf backup.tar.gz</code> |
− | tar -xzf backup.tar.gz | + | <code>tar -xzf backup.tar.gz -C /destination/path</code> |
− | tar -xzf backup.tar.gz -C /destination/path | ||
− | </code> | ||
3. '''Просмотр содержимого архива''': | 3. '''Просмотр содержимого архива''': | ||
− | <code> | + | <code>tar -tzf backup.tar.gz</code> |
− | tar -tzf backup.tar.gz | ||
− | </code> | ||
=== Синхронизация файлов === | === Синхронизация файлов === | ||
1. '''Синхронизация с rsync''': | 1. '''Синхронизация с rsync''': | ||
− | <code> | + | <code>rsync -av /source/ /destination/</code> |
− | rsync -av /source/ /destination/ | + | <code>rsync -av --delete /source/ /destination/</code> |
− | rsync -av --delete /source/ /destination/ | + | <code>rsync -av -e ssh user@server:/source/ /destination/</code> |
− | rsync -av -e ssh user@server:/source/ /destination/ | ||
− | </code> | ||
2. '''Синхронизация с исключениями''': | 2. '''Синхронизация с исключениями''': | ||
− | <code> | + | <code>rsync -av --exclude="*.tmp" --exclude="*.log" /source/ /destination/</code> |
− | rsync -av --exclude="*.tmp" --exclude="*.log" /source/ /destination/ | ||
− | </code> | ||
== 12. Мониторинг и диагностика === | == 12. Мониторинг и диагностика === | ||
Строка 592: | Строка 428: | ||
1. '''Просмотр загрузки системы''': | 1. '''Просмотр загрузки системы''': | ||
− | <code> | + | <code>uptime</code> |
− | uptime | + | <code>w</code> |
− | w | + | <code>who</code> |
− | who | ||
− | </code> | ||
2. '''Просмотр истории входов''': | 2. '''Просмотр истории входов''': | ||
− | <code> | + | <code>last</code> |
− | last | + | <code>lastb</code> |
− | lastb | ||
− | </code> | ||
3. '''Просмотр использования ресурсов''': | 3. '''Просмотр использования ресурсов''': | ||
− | <code> | + | <code>iostat 1 5</code> |
− | iostat 1 5 | + | <code>vmstat 1 5</code> |
− | vmstat 1 5 | + | <code>sar -u 1 5</code> |
− | sar -u 1 5 | ||
− | </code> | ||
=== Диагностика проблем === | === Диагностика проблем === | ||
1. '''Просмотр системных сообщений''': | 1. '''Просмотр системных сообщений''': | ||
− | <code> | + | <code>dmesg</code> |
− | dmesg | + | <code>dmesg | grep -i error</code> |
− | dmesg | grep -i error | ||
− | </code> | ||
2. '''Просмотр логов системы''': | 2. '''Просмотр логов системы''': | ||
− | <code> | + | <code>tail -f /var/log/syslog</code> |
− | tail -f /var/log/syslog | + | <code>tail -f /var/log/auth.log</code> |
− | tail -f /var/log/auth.log | ||
− | </code> | ||
3. '''Проверка целостности файловой системы''': | 3. '''Проверка целостности файловой системы''': | ||
− | <code> | + | <code>sudo fsck /dev/sdb1</code> |
− | sudo fsck /dev/sdb1 | ||
− | </code> | ||
=== Создание скриптов мониторинга === | === Создание скриптов мониторинга === | ||
1. '''Создание скрипта мониторинга''': | 1. '''Создание скрипта мониторинга''': | ||
− | <code> | + | <code>nano /usr/local/bin/system-monitor.sh</code> |
− | nano /usr/local/bin/system-monitor.sh | ||
− | </code> | ||
2. '''Добавление содержимого''': | 2. '''Добавление содержимого''': | ||
− | <code> | + | <code>echo "=== System Monitor ==="</code> |
− | + | <code>echo "Date: $(date)"</code> | |
− | + | <code>echo "Uptime: $(uptime)"</code> | |
− | echo "=== System Monitor ===" | + | <code>echo "Load: $(cat /proc/loadavg)"</code> |
− | echo "Date: $(date)" | + | <code>echo "Memory: $(free -h | grep Mem | awk '{print $3 "/" $2}')"</code> |
− | echo "Uptime: $(uptime)" | + | <code>echo "Disk: $(df -h / | grep / | awk '{print $5}')"</code> |
− | echo "Load: $(cat /proc/loadavg)" | + | <code>echo "Processes: $(ps aux | wc -l)"</code> |
− | echo "Memory: $(free -h | grep Mem | awk '{print $3 "/" $2}')" | ||
− | echo "Disk: $(df -h / | grep / | awk '{print $5}')" | ||
− | echo "Processes: $(ps aux | wc -l)" | ||
− | </code> | ||
3. '''Сделать скрипт исполняемым''': | 3. '''Сделать скрипт исполняемым''': | ||
− | <code> | + | <code>chmod +x /usr/local/bin/system-monitor.sh</code> |
− | chmod +x /usr/local/bin/system-monitor.sh | ||
− | </code> | ||
== Заключение == | == Заключение == |
Версия 19:58, 14 октября 2025
Содержание
- 1 Базовые команды Linux для администрирования
- 1.1 1. Подготовка системы
- 1.2 2. Управление файлами и директориями =
- 1.3 3. Управление процессами =
- 1.4 4. Управление пользователями и группами =
- 1.5 5. Управление правами доступа =
- 1.6 6. Управление службами =
- 1.7 7. Управление пакетами =
- 1.8 8. Управление сетью =
- 1.9 9. Управление файрволом =
- 1.10 10. Управление дисками =
- 1.11 11. Управление резервным копированием =
- 1.12 12. Мониторинг и диагностика =
- 1.13 Заключение
Базовые команды Linux для администрирования
1. Подготовка системы
- Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
- Убедитесь, что у вас есть доступ к серверу через SSH или консоль.
2. Управление файлами и директориями =
Основные команды навигации
1. Просмотр текущей директории:
pwd
2. Переход в директорию:
cd /path/to/directory
cd ~
cd ..
cd -
3. Просмотр содержимого директории:
ls
ls -l
ls -la
ls -lh
ls -R
4. Создание директорий:
mkdir directory_name
mkdir -p path/to/directory
mkdir -m 755 directory_name
Управление файлами
1. Создание файлов:
touch filename
echo "content" > filename
cat > filename
2. Копирование файлов:
cp file1 file2
cp -r directory1 directory2
cp -p file1 file2
cp -u file1 file2
3. Перемещение файлов:
mv file1 file2
mv file1 /path/to/directory/
mv -i file1 file2
4. Удаление файлов:
rm filename
rm -r directory
rm -f filename
rm -i filename
Поиск файлов
1. Поиск по имени:
find /path -name "filename"
find /path -name "*.txt"
find /path -type f -name "*.log"
2. Поиск по размеру:
find /path -size +100M
find /path -size -1M
find /path -size 0
3. Поиск по времени:
find /path -mtime -7
find /path -mtime +30
find /path -newer file1
4. Поиск по содержимому:
grep "pattern" filename
grep -r "pattern" /path
grep -i "pattern" filename
grep -n "pattern" filename
3. Управление процессами =
Просмотр процессов
1. Просмотр всех процессов:
ps aux
ps -ef
ps auxf
2. Просмотр процессов в реальном времени:
top
htop
3. Просмотр процессов по пользователю:
ps -u username
ps aux | grep username
4. Просмотр процессов по PID:
ps -p 1234
Управление процессами
1. Завершение процесса:
kill 1234
kill -9 1234
killall process_name
pkill process_name
2. Изменение приоритета процесса:
nice -n 10 command
renice 10 1234
3. Запуск процесса в фоне:
command &
nohup command &
Мониторинг системы
1. Просмотр использования CPU:
top
htop
vmstat 1 5
2. Просмотр использования памяти:
free -h
cat /proc/meminfo
3. Просмотр использования диска:
df -h
du -h /path
du -sh /path
4. Просмотр сетевых подключений:
netstat -tlnp
ss -tlnp
netstat -an
4. Управление пользователями и группами =
Управление пользователями
1. Создание пользователя:
useradd -m -s /bin/bash username
useradd -m -u 1001 -g users username
2. Удаление пользователя:
userdel username
userdel -r username
3. Изменение пароля:
passwd username
4. Блокировка пользователя:
usermod -L username
usermod -U username
Управление группами
1. Создание группы:
groupadd groupname
groupadd -g 1001 groupname
2. Удаление группы:
groupdel groupname
3. Добавление пользователя в группу:
usermod -aG groupname username
4. Просмотр групп пользователя:
groups username
id username
5. Управление правами доступа =
Изменение владельца
1. Изменение владельца файла:
chown username filename
chown username:groupname filename
chown -R username:groupname directory
2. Изменение группы:
chgrp groupname filename
chgrp -R groupname directory
Изменение прав доступа
1. Изменение прав доступа:
chmod 755 filename
chmod u+x filename
chmod g-w filename
chmod o+r filename
chmod -R 755 directory
2. Установка umask:
umask 022
umask 002
3. Просмотр прав доступа:
ls -l filename
stat filename
6. Управление службами =
Управление systemd
1. Просмотр статуса службы:
systemctl status service_name
systemctl is-active service_name
systemctl is-enabled service_name
2. Запуск и остановка службы:
systemctl start service_name
systemctl stop service_name
systemctl restart service_name
systemctl reload service_name
3. Включение и отключение автозапуска:
systemctl enable service_name
systemctl disable service_name
4. Просмотр всех служб:
systemctl list-units
systemctl list-units --state=active
systemctl list-units --state=failed
Управление логами
1. Просмотр логов службы:
journalctl -u service_name
journalctl -u service_name -f
journalctl -u service_name --since "1 hour ago"
2. Просмотр системных логов:
journalctl
journalctl -f
journalctl --since "1 hour ago"
3. Просмотр логов по приоритету:
journalctl -p err
journalctl -p warning
7. Управление пакетами =
Управление пакетами APT
1. Обновление списка пакетов:
sudo apt update
2. Установка пакета:
sudo apt install package_name
sudo apt install package1 package2
3. Удаление пакета:
sudo apt remove package_name
sudo apt purge package_name
4. Обновление системы:
sudo apt upgrade
sudo apt dist-upgrade
5. Поиск пакетов:
apt search keyword
apt list --installed
apt list --upgradable
Управление репозиториями
1. Добавление репозитория:
sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu focal main"
2. Удаление репозитория:
sudo add-apt-repository --remove "deb http://archive.ubuntu.com/ubuntu focal main"
3. Обновление ключей:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys KEY_ID
8. Управление сетью =
Настройка сетевых интерфейсов
1. Просмотр сетевых интерфейсов:
ip addr show
ifconfig
ip link show
2. Настройка IP адреса:
sudo ip addr add 192.168.1.100/24 dev eth0
sudo ip addr del 192.168.1.100/24 dev eth0
3. Включение и отключение интерфейса:
sudo ip link set eth0 up
sudo ip link set eth0 down
Управление маршрутизацией
1. Просмотр таблицы маршрутизации:
ip route show
route -n
2. Добавление маршрута:
sudo ip route add 192.168.2.0/24 via 192.168.1.1
sudo ip route add default via 192.168.1.1
3. Удаление маршрута:
sudo ip route del 192.168.2.0/24
sudo ip route del default
Управление DNS
1. Просмотр DNS настроек:
cat /etc/resolv.conf
systemd-resolve --status
2. Тестирование DNS:
nslookup example.com
dig example.com
host example.com
3. Настройка DNS:
echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf
9. Управление файрволом =
Управление UFW
1. Просмотр статуса:
sudo ufw status
sudo ufw status verbose
2. Включение и отключение:
sudo ufw enable
sudo ufw disable
3. Добавление правил:
sudo ufw allow 22/tcp
sudo ufw allow from 192.168.1.0/24
sudo ufw deny 23/tcp
4. Удаление правил:
sudo ufw delete allow 22/tcp
sudo ufw delete 1
Управление iptables
1. Просмотр правил:
sudo iptables -L -n -v
sudo iptables -L -n -v --line-numbers
2. Добавление правил:
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT
3. Удаление правил:
sudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -D INPUT 1
4. Сохранение правил:
sudo iptables-save > /etc/iptables/rules.v4
10. Управление дисками =
Просмотр информации о дисках
1. Просмотр дисков:
lsblk
fdisk -l
parted -l
2. Просмотр использования дисков:
df -h
du -h /path
du -sh /path
3. Просмотр inode:
df -i
Создание разделов
1. Создание раздела с fdisk:
sudo fdisk /dev/sdb
2. Создание раздела с parted:
sudo parted /dev/sdb
3. Создание файловой системы:
sudo mkfs.ext4 /dev/sdb1
sudo mkfs.xfs /dev/sdb1
Монтирование дисков
1. Создание точки монтирования:
sudo mkdir /mnt/disk1
2. Монтирование диска:
sudo mount /dev/sdb1 /mnt/disk1
3. Автоматическое монтирование:
echo "/dev/sdb1 /mnt/disk1 ext4 defaults 0 2" | sudo tee -a /etc/fstab
11. Управление резервным копированием =
Создание архивов
1. Создание tar архива:
tar -czf backup.tar.gz /path/to/backup
tar -czf backup.tar.gz --exclude="*.tmp" /path/to/backup
2. Извлечение из архива:
tar -xzf backup.tar.gz
tar -xzf backup.tar.gz -C /destination/path
3. Просмотр содержимого архива:
tar -tzf backup.tar.gz
Синхронизация файлов
1. Синхронизация с rsync:
rsync -av /source/ /destination/
rsync -av --delete /source/ /destination/
rsync -av -e ssh user@server:/source/ /destination/
2. Синхронизация с исключениями:
rsync -av --exclude="*.tmp" --exclude="*.log" /source/ /destination/
12. Мониторинг и диагностика =
Мониторинг системы
1. Просмотр загрузки системы:
uptime
w
who
2. Просмотр истории входов:
last
lastb
3. Просмотр использования ресурсов:
iostat 1 5
vmstat 1 5
sar -u 1 5
Диагностика проблем
1. Просмотр системных сообщений:
dmesg
dmesg | grep -i error
2. Просмотр логов системы:
tail -f /var/log/syslog
tail -f /var/log/auth.log
3. Проверка целостности файловой системы:
sudo fsck /dev/sdb1
Создание скриптов мониторинга
1. Создание скрипта мониторинга:
nano /usr/local/bin/system-monitor.sh
2. Добавление содержимого:
echo "=== System Monitor ==="
echo "Date: $(date)"
echo "Uptime: $(uptime)"
echo "Load: $(cat /proc/loadavg)"
echo "Memory: $(free -h | grep Mem | awk '{print $3 "/" $2}')"
echo "Disk: $(df -h / | grep / | awk '{print $5}')"
echo "Processes: $(ps aux | wc -l)"
3. Сделать скрипт исполняемым:
chmod +x /usr/local/bin/system-monitor.sh
Заключение
Базовые команды Linux для администрирования изучены! Теперь вы можете эффективно управлять Linux сервером.
Для размещения ваших проектов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):
- [Выделенные серверы](https://ark-hoster.ru/dedicated/) - для высоконагруженных проектов
- [VPS/VDS серверы](https://ark-hoster.ru/vpsgame/) - для небольших и средних проектов
Наши специалисты помогут с настройкой сервера и обеспечением его стабильной работы!