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

Материал из ARK-HOSTER.RU | Документация хостинга
Перейти к: навигация, поиск

Содержание

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

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