unix/fiss-linux

etc/start.d/00-pseudofs.sh in master
Repositories | Summary | Log | Files | LICENSE

00-pseudofs.sh (1899B) download


 1# vim: set ts=4 sw=4 et:
 2
 3msg "Mounting pseudo-filesystems..."
 4mountpoint -q /proc || mount -o nosuid,noexec,nodev -t proc proc /proc
 5mountpoint -q /sys || mount -o nosuid,noexec,nodev -t sysfs sys /sys
 6mountpoint -q /run || mount -o mode=0755,nosuid,nodev -t tmpfs run /run
 7mountpoint -q /dev || mount -o mode=0755,nosuid -t devtmpfs dev /dev
 8mkdir -p -m0755 /run/fiss /run/lvm /run/user /run/lock /run/log /dev/pts /dev/shm
 9mountpoint -q /dev/pts || mount -o mode=0620,gid=5,nosuid,noexec -n -t devpts devpts /dev/pts
10mountpoint -q /dev/shm || mount -o mode=1777,nosuid,nodev -n -t tmpfs shm /dev/shm
11mountpoint -q /sys/kernel/security || mount -n -t securityfs securityfs /sys/kernel/security
12
13if [ -d /sys/firmware/efi/efivars ]; then
14    mountpoint -q /sys/firmware/efi/efivars || mount -o nosuid,noexec,nodev -t efivarfs efivarfs /sys/firmware/efi/efivars
15fi
16
17if [ -z "$VIRTUALIZATION" ]; then
18    _cgroupv1=""
19    _cgroupv2=""
20
21    case "${CGROUP_MODE:-hybrid}" in
22        legacy)
23            _cgroupv1="/sys/fs/cgroup"
24            ;;
25        hybrid)
26            _cgroupv1="/sys/fs/cgroup"
27            _cgroupv2="${_cgroupv1}/unified"
28            ;;
29        unified)
30            _cgroupv2="/sys/fs/cgroup"
31            ;;
32    esac
33
34    # cgroup v1
35    if [ -n "$_cgroupv1" ]; then
36        mountpoint -q "$_cgroupv1" || mount -o mode=0755 -t tmpfs cgroup "$_cgroupv1"
37        while read -r _subsys_name _hierarchy _num_cgroups _enabled; do
38            [ "$_enabled" = "1" ] || continue
39            _controller="${_cgroupv1}/${_subsys_name}"
40            mkdir -p "$_controller"
41            mountpoint -q "$_controller" || mount -t cgroup -o "$_subsys_name" cgroup "$_controller"
42        done < /proc/cgroups
43    fi
44
45    # cgroup v2
46    if [ -n "$_cgroupv2" ]; then
47        mkdir -p "$_cgroupv2"
48        mountpoint -q "$_cgroupv2" || mount -t cgroup2 -o nsdelegate cgroup2 "$_cgroupv2"
49    fi
50fi