ecryptfs How To Backup / Migrate Linux Mint Ubuntu Debian system ecryptfs properly and restore access

In this scenario, let's say you want to clone your OS at the filesystem level and the source system (the system you want to clone from) is in use.

Doing a blind rsync / is a big problem because it uses twice as much space for no reason.

The reason for this is that with ecryptfs you have a /home/.ecryptfs directory which has the actual encrypted versions of your files and folders. However your home directory (eg. /home/someuser) is mounted.

Doing the blind rsync will cause you to backup the mounted actual files and the actual encrypted files, which is how your data is doubled. 

How an unmounted ecryptfs home directory looks

We can see that all that's really contained in the home directory are two symlinks .ecryptfs and .Private which link to /home/.ecryptfs/easy/.ecryptfs and /home/.ecryptfs/easy/.Private

How would we backup our ecryptfs system then?

You would want to do something like this:

replace "--exclude=/home/easy" with the path of your home directories (and add more excludes for each user under home that has ecryptfs files).

rsync -Phaz / --exclude=/home/easy/ --exclude=/proc/* --exclude=/sys/* user@remotehost:/mnt/target

On the target system though we'll need to create the symlinks again:

This assumes your entire filesystem has been stored in /mnt/target (change this path to where your target was transferred to)

chroot /mnt/target

Now we create the symlinks.

Now change to the user's directory where you need this done.

#change /home/easy to your user dir

cd /home/easy

 

Change "ln -s /home/.ecryptfs/easy" to the name of your user eg . "ln -s /home/.ecryptfs/yourusername"

ln -s /home/.ecryptfs/easy/.ecryptfs .ecryptfs

ln -s /home/.ecryptfs/easy/.Private .Private

 

Ecryptfs Success

Once you login again, you should now have restored access to all of the encrypted files, assuming that you did your backup correctly and that /home/.ecryptfs was copied properly from the source system.


Tags:

ecryptfs, migrate, linux, mint, ubuntu, debian, restore, accessin, clone, os, filesystem, rsync, directory, encrypted, versions, folders, eg, someuser, mounted, doubled, unmounted, contained, symlinks, quot, exclude, directories, excludes, user, phaz, proc, sys, remotehost, mnt, ll, assumes, stored, chroot, sudo, ln, yourusername,

Latest Articles

  • Convert-im6.q16: attempt to perform an operation not allowed by the security policy `PDF' @ error/constitute.c/IsCoderAuthorized/413. convert-im6.q16: no images defined `pts-time.jpg' @ error/convert.c/ConvertImageCommand/3258. solution ImageMagick P
  • Apache PHP sending expires header solution cannot use cache with CDN
  • How to install virt-manager in Mint 22/Ubuntu 22
  • Infiniband Guide
  • python mysql install error: /bin/sh: 1: mysql_config: not found /bin/sh: 1: mariadb_config: not found /bin/sh: 1: mysql_config: not found mysql_config --version
  • FreePBX 17 How To Add a Trunk
  • Docker Container Onboot Policy - How to make sure a container is always running
  • FreePBX 17 How To Add Phones / Extensions and Register
  • Warning: The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes. solution
  • Cisco How To Use a Third Party SIP Phone (eg. Avaya, 3CX)
  • Cisco Unified Communication Manager (CUCM) - How To Add Phones
  • pptp / pptpd not working in DD-WRT iptables / router
  • systemd-journald high memory usage solution
  • How to Install FreePBX 17 in Linux Debian Ubuntu Mint Guide
  • How To Install Cisco's CUCM (Cisco Unified Communication Manager) 12 Guide
  • Linux Ubuntu Redhat How To Extract Images from PDF
  • Linux and Windows Dual Boot Issue NIC Won't work After Booting Windows
  • Cisco CME How To Enable ACD hunt groups
  • How to install gns3 on Linux Ubuntu Mint
  • How to convert audio for Asterisk .wav format