00-pseudofs.sh (1899B)
1 # vim: set ts=4 sw=4 et: 2 3 msg "Mounting pseudo-filesystems..." 4 mountpoint -q /proc || mount -o nosuid,noexec,nodev -t proc proc /proc 5 mountpoint -q /sys || mount -o nosuid,noexec,nodev -t sysfs sys /sys 6 mountpoint -q /run || mount -o mode=0755,nosuid,nodev -t tmpfs run /run 7 mountpoint -q /dev || mount -o mode=0755,nosuid -t devtmpfs dev /dev 8 mkdir -p -m0755 /run/fiss /run/lvm /run/user /run/lock /run/log /dev/pts /dev/shm 9 mountpoint -q /dev/pts || mount -o mode=0620,gid=5,nosuid,noexec -n -t devpts devpts /dev/pts 10 mountpoint -q /dev/shm || mount -o mode=1777,nosuid,nodev -n -t tmpfs shm /dev/shm 11 mountpoint -q /sys/kernel/security || mount -n -t securityfs securityfs /sys/kernel/security 12 13 if [ -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 15 fi 16 17 if [ -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 50 fi