diff options
-rw-r--r-- | initd/early.c | 12 | ||||
-rw-r--r-- | plug/coldplug.c | 2 |
2 files changed, 9 insertions, 5 deletions
diff --git a/initd/early.c b/initd/early.c index 3f9cf69..89c8104 100644 --- a/initd/early.c +++ b/initd/early.c @@ -66,16 +66,20 @@ early_mounts(void) mount("sysfs", "/sys", "sysfs", MS_NOATIME, 0); mount("none", "/sys/fs/cgroup", "cgroup", 0, 0); mount("tmpfs", "/dev", "tmpfs", MS_NOATIME, "mode=0755,size=512K"); - mkdir("/dev/shm", 01777); + symlink("/tmp/shm", "/dev/shm"); mkdir("/dev/pts", 0755); mount("devpts", "/dev/pts", "devpts", MS_NOATIME, "mode=600"); early_dev(); early_console("/dev/console"); - if (mount_zram_on_tmp()) + if (mount_zram_on_tmp()) { mount("tmpfs", "/tmp", "tmpfs", MS_NOSUID | MS_NODEV | MS_NOATIME, NULL); - else - mkdev("*", 0600); + mkdir("/tmp/shm", 01777); + } else { + mkdir("/tmp/shm", 01777); + mount("tmpfs", "/tmp/shm", "tmpfs", MS_NOSUID | MS_NODEV | MS_NOATIME, + "mode=01777"); + } mkdir("/tmp/run", 0777); mkdir("/tmp/lock", 0777); mkdir("/tmp/state", 0777); diff --git a/plug/coldplug.c b/plug/coldplug.c index d3a607d..bfd3513 100644 --- a/plug/coldplug.c +++ b/plug/coldplug.c @@ -45,7 +45,7 @@ void procd_coldplug(void) umount2("/dev/pts", MNT_DETACH); umount2("/dev/", MNT_DETACH); mount("tmpfs", "/dev", "tmpfs", 0, "mode=0755,size=512K"); - mkdir("/dev/shm", 01777); + symlink("/tmp/shm", "/dev/shm"); mkdir("/dev/pts", 0755); umask(oldumask); mount("devpts", "/dev/pts", "devpts", 0, 0); |