Squashfs Backup Demo
Tuesday, February 1, 2022
1 comment
by Ramses Soto-Navarro ramses@sotosystems.com, 2/1/2022
Overview
Mount squashfs file
Interactive shell
Release session
Prepare Server for Backup
SSHFS remote mount
Squash Backup
Overview
What is squashfs:
- Squashfs is an archiver like tar.
- Archives data onto backup file.
- Allows quick read access of file backups.
- High compression.
- Can be mounted.
- Can be appended.
- Random seek, rather than linear.
- Very quick access.
- Used in embedded systems, cellphones, routers, livecd.
- 7-zip supports squashfs.
The squashfs mount enables us to:
- Archive the entire old server in a compressed file.
- Mount the squashfs file and easily review files and directories.
- Copy files from the old servers.
- Run an interactive shell session of the old server.
- Append more files to the backup file as needed.
Audience is experienced Linux administrators.
Mount a squashfs file
Mount an old www server squashfs file.
ssh server1 sudo su - mkdir -p /backup/www-old mount /backup/backup-www-old.sqfs /backup/www-old/ umount /backup/www-old
Interactive shell
Chroot into an interfactive shell.
cd /backup/cid-old mount -o bind /dev dev mount -o bind /sys sys mount -o bind /proc proc chroot . /bin/bash
Release session
exit umount dev umount sys umount proc cd /mnt umount /mnt/root/boot umount /mnt/root
Prepare Server for Backup
* Start the server in rescue mode using the installation media.
* Activate Linux LVM,
vgscan ; vgchange -ay
* Mount the root directory:
vgs lvs mkdir -p /mnt/root mount /dev/vg1/lvroot /mnt/root
* Mount the boot directory:
mount /dev/sda1 /mnt/root/boot
* Mount the rest of the directories:
cat /mnt/root/etc/fstab
* Activate networking:
cat /mnt/root/etc/sysconfig/network/ifcfg-eth0 cat /mnt/root/etc/sysconfig/network/routes ifconfig eth0 10.10.10.10 netmask 255.255.255.0 route add default gw 10.10.10.1
* Activate ssh:
service sshd start passwd
SSHFS remote mount
mkdir /mnt/oldserver sshfs -o ro 10.10.10.10:/mnt/root/ /mnt/oldserver/
Squash Backup
* Squashfs old server in rescue mode:
cd /mnt/oldserver mksquashfs . /backup/oldserver.sqfs
The End.