Mercurial > hgrepos > FreeBSD > ports > sysutils > local-bsdtools
comparison sbin/fjail @ 173:6782ac823f86
Handle /var/empty more sanely when populating datasets from a base.txz image
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Tue, 16 Aug 2022 08:34:34 +0200 |
| parents | b62b8bc6184f |
| children | 9b23832722dd |
comparison
equal
deleted
inserted
replaced
| 172:b7b9d84dff9b | 173:6782ac823f86 |
|---|---|
| 218 if [ ! -r "${_basetxz}" ]; then | 218 if [ ! -r "${_basetxz}" ]; then |
| 219 echo "ERROR: file \`${_basetxz}' is not readable" >&2 | 219 echo "ERROR: file \`${_basetxz}' is not readable" >&2 |
| 220 return 1 | 220 return 1 |
| 221 fi | 221 fi |
| 222 | 222 |
| 223 # | |
| 224 # Handle /var/empty separately later: could be already there and | |
| 225 # mounted read-only. | |
| 226 # | |
| 223 tar -C "${_mp}" --exclude=./var/empty -xJp -f "${_basetxz}" || { echo "ERROR: tar encountered errors" >&2; return 1; } | 227 tar -C "${_mp}" --exclude=./var/empty -xJp -f "${_basetxz}" || { echo "ERROR: tar encountered errors" >&2; return 1; } |
| 228 if [ -d "${_mp}/var/empty" ]; then | |
| 229 # | |
| 230 # If /var/empty exists already try to extract with changing the | |
| 231 # flags (e.g. `schg'). But be tolerant with errors here. | |
| 232 # | |
| 233 tar -C "${_mp}" -xJp -f "${_basetxz}" ./var/empty | |
| 234 else | |
| 235 # Just extract /var/empty normally | |
| 236 tar -C "${_mp}" -xJp -f "${_basetxz}" ./var/empty || { echo "ERROR: tar encountered errors" >&2; return 1; } | |
| 237 fi | |
| 238 | |
| 224 find "${_mp}/boot" -type f -delete | 239 find "${_mp}/boot" -type f -delete |
| 225 } | 240 } |
| 226 | 241 |
| 227 | 242 |
| 228 # | 243 # |
