Базовые команды Linux для администрирования — различия между версиями

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

Текущая версия на 10:29, 15 октября 2025

Содержание

Базовые команды 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):

Наши специалисты помогут с настройкой сервера и обеспечением его стабильной работы!