Действия
Удаленная замена корневой ФС в Debian-systemd¶
debian 8¶
# создаем новый root в /mnt
mount -t tmpfs tmpfs /mnt -o size=1400m
cd /mnt
# останавливаем все, что пытается писать в текущий root
/etc/init.d/apache2 stop
/etc/init.d/mysql stop
/etc/init.d/zabbix-server stop
# перемонтируем текущий root в readonly
mount -n / -o remount,ro
# копируем текущий root в новый root (/mnt)
rsync -ax / /mnt/
# переключаемся в новый root
# При этом все процессы от старого /sbin/init завершатся,
# после чего будет запущен /sbin/init из нового root,
# который в свою очередь запустит все, что запускается после initramfs, включая sshd.
# О отключении автозапуска таких вещей как apache и/или mysqld нужно позаботиться заранее
systemctl switch-root /mnt /sbin/init
debian 9¶
modprobe zram && zramctl -f -s 3G
mkfs.ext4 /dev/zram0 && mount /dev/zram0 /mnt/
cd /mnt
systemctl stop syslog.socket
timeout 2 systemctl stop lvm2-lvmetad.socket
mount -n / -o remount,ro && rsync -ax / /mnt/
echo '#!/bin/bash
watch /usr/sbin/sshd -dD' >> /mnt/imssh
chmod +x /mnt/imssh
systemctl switch-root /mnt /imssh
ребут машины
echo b > /proc/sysrq-trigger
Обновлено Константин Пильник больше 5 лет назад · 14 изменени(я, ий)