I have used cpio for many years and still do. It has saved me many times in recovery without extensive Linux/Unix knowledge.
Example I have an Ubuntu 17.04LTS Server installed and regularly update my files to backup using cpio approx. every month using an external USB 500Gb drive.
I mount the Backup drive as such:
mount /dev/sdb1 /BACKUP
Ensure you have created a folder called BACKUP in your root directory as a mount point and use following command;
mount /dev/sdb1 /BACKUP
Do a df to ensure it is mounted. Then cd /BACKUP and create a folder called Ubuntu_Backup_17.04LTS.
Then cd /, check that you are in / before starting the cpio process with pwd, and then and execute the following command:
find . -mount -print | cpio -pdumv /BACKUP/Ubuntu_Backup_17.04LTS
This will then copy all files and folders from the ROOT directory EXCLUDING the mount point BACKUP.
After finishing if you go to /BACKUP/Ubuntu_Backup_17.04LTS and list the files and folders you will see it is exactly the same as your ROOT drive listing.
Restore is exactly the same, it can be a complete restore of simply a folder such as /etc.
Example:
cd /BACKUP/Ubuntu_Backup_17.04LTS
and execute the reverse;
find . -mount -print | cpio -pdumv /
or for a folder /etc ) the command would be
find /etc -mount -print | cpio -pdumv /
This will copy /etc folder out of Backup to / for recovery.
This will then copy all files and folders back to / partition then reboot. It is very handy when an update goes horribly wrong.