Канал для системных администраторов. Полезный контент по Windows, Linux и т.д.
По всем вопросам @evgenycarter
Post #414
553
СИ @sys_adminos
Showing posts older than #415 · Back to latest
id_rsa.pub вручную из одного терминала в другой. Но есть способ проще и элегантнее — использовать утилиту ssh-copy-id.server1 и server2server1 на server2 под root
ssh-keygen -t rsa
/root/.ssh/id_rsa — приватный/root/.ssh/id_rsa.pub — публичный
cat ~/.ssh/id_rsa.pub
server1 выполняем:
ssh-copy-id -i ~/.ssh/id_rsa.pub root@server2
server2. Ключ будет добавлен в /root/.ssh/authorized_keys.ssh-copy-id нужно, чтобы на server2 был разрешён вход под root по SSH. Это настраивается в /etc/ssh/sshd_config:
PermitRootLogin yes # Разрешен вход под root
PermitRootLogin no # Запрещен
PermitRootLogin without-password # Только по SSH-ключам
PermitRootLogin forced-commands-only # Только по ключам и с конкретной командой
forced-commands-only:
command="rsync" ssh-rsa AAAAB3... root@server1
service sshd restart
server2 по SSH с server1 без пароля, безопасно и удобно.
# findmnt# findmnt -l# findmnt --fstab -t xfs или # findmnt --fstab -t ext4# findmnt --fstab /mnt/external/disk2 #this prints bind mounts where /mnt/external/disk2 is a source# findmnt --fstab --target /mnt/external/disk2# findmnt --fstab --evaluate# findmnt -n --raw --evaluate --output=target LABEL=/boot или # findmnt -n --raw --evaluate --output=target LABEL=/# findmnt --poll --mountpoint /mnt/test# findmnt --real --verbosedisk_monitor.sh
#!/bin/bash
# Настройки
THRESHOLD=80 # Порог использования в процентах (если выше — тревога)
EMAIL="admin@example.com" # Кому отправлять уведомление
HOSTNAME=$(hostname)
# Получаем список смонтированных файловых систем
df -hP | grep '^/dev/' | while read line; do
USAGE=$(echo $line | awk '{print $5}' | sed 's/%//')
MOUNT=$(echo $line | awk '{print $6}')
FS=$(echo $line | awk '{print $1}')
if [ "$USAGE" -ge "$THRESHOLD" ]; then
MESSAGE="🚨 Внимание! На сервере $HOSTNAME файловая система $FS, смонтированная в $MOUNT, заполнена на $USAGE%."
echo "$MESSAGE"
# Отправка email (если настроено)
echo "$MESSAGE" | mail -s "Disk space alert on $HOSTNAME" "$EMAIL"
fi
done
nano /usr/local/bin/disk_monitor.sh
chmod +x /usr/local/bin/disk_monitor.sh
sudo apt install mailutils # для Debian/Ubuntu
crontab для регулярной проверки:
crontab -e
*/15 * * * * /usr/local/bin/disk_monitor.sh