aboutsummaryrefslogtreecommitdiffstats
path: root/chapter7/backup.sh
blob: 2e980c51ad22fdb0eda17bf9e735919680f57b06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/bash

file="${LFS_VER}-ch7-backup.tar.xz"
directories=(bin dev etc lib lib64 proc run sbin sources sys tools usr var)

if [ -f "${LFS}/sources/chapter7/backup" ]; then
	echo -e "${YLW}Chapter 7 ${GRN}Backup found. Remove manually to backup again.${RST}"
else

	echo -ne "${GRN}Backing up ${YLW}${LFS}${GRN} to ${YLW}${file}${RST}... "
	pushd "${LFS}" > /dev/null || exit 1
		sudo XZ_OPTS="-T${NUMPROCS} -e" tar cJpf "${HOME}"/"${file}" "${directories[@]}" >/dev/null 2>&1 & pid=$!
		spinner "$pid"
		retval=$?
		if [ "${retval}" -ne 0 ]; then
			echo -e "${RED}FAILED!${RST}"
			exit "${retval}"
		else
			echo -e "${GRN}OK${RST}"
		fi
	popd > /dev/null || exit 1

	touch "${LFS}/sources/chapter7/backup"
fi