Базовые команды 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
Базовые команды 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/) - для небольших и средних проектов
Наши специалисты помогут с настройкой сервера и обеспечением его стабильной работы!