blob: 3e702064b5b5feb692808d9f8bd2b52e15edab94 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
# This script only checks if we found a usable partition for the
# future /tmp. The discovery of that partition is done by udev during
# the initqueue. If a valid partition is found (either GPT with the label
# OPENSLX_TMP or MBR with the type 0x44) its path will be written to
# /tmp/openslx.tmpdisk
OPENSLX_TMP_DISK_FLAG="/tmp/openslx.disk.tmp"
if [ ! -e "$OPENSLX_TMP_DISK_FLAG" ]; then
warn "'$OPENSLX_TMP_DISK_FLAG' not found!"
warn "Systemd will manage $NEWROOT/tmp on its own."
# no partition for the future /tmp found, just
# let systemd manage it then (probably a tmpfs)
return 1
fi
# in /tmp/openslx.disk.tmp is the name of the device
# to mount as /tmp in the real system
# meaning we need to mount it to /sysroot/tmp here.
OPENSLX_TMP_DISK_DEV="$(cat $OPENSLX_TMP_DISK_FLAG)"
# sanity check: is the content a block device?
if [ ! -b "$OPENSLX_TMP_DISK_DEV" ]; then
warn "'$OPENSLX_TMP_DISK_DEV' appears not to be a block device!"
warn "Systemd will manage $NEWROOT/tmp on its own."
return 1
fi
# all good, keep on
if ! mount -t auto "$OPENSLX_TMP_DISK_DEV" $NEWROOT/tmp; then
# something else went wrong :(
warn "Mounting '$OPENSLX_TMP_DISK_DEV' to '$NEWROOT/tmp' failed with: $!"
warn "Systemd will manage $NEWROOT/tmp on its own."
return 1
fi
# still here? mount worked wohoo
# set permissions
chmod a+rwxt $NEWROOT/tmp
return 0
|