From 0d9eaafe9adbda53ab3617ec732900612634ca87 Mon Sep 17 00:00:00 2001 From: Roy Marples Date: Fri, 19 Oct 2007 06:57:41 +0000 Subject: [PATCH] Mount /dev/shm for Linux systems, even not when in /etc/fstab, #196345. --- ChangeLog | 4 ++++ sh.Linux/init.sh | 28 +++++++++++++++------------- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/ChangeLog b/ChangeLog index 07ce57d4..b8369e6c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for Gentoo System Intialization ("rc") scripts # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPLv2 + 19 Oct 2007; Roy Marples : + + Mount /dev/shm for Linux systems, even not when in /etc/fstab, #196345. + 16 Oct 2007; Roy Marples : We now build and optionally work with static libraries. diff --git a/sh.Linux/init.sh b/sh.Linux/init.sh index 60118498..e45c734a 100755 --- a/sh.Linux/init.sh +++ b/sh.Linux/init.sh @@ -206,26 +206,28 @@ else done fi -# Mount the new fancy pants /dev/pts whenever possible -if grep -Eq "[[:space:]]+devpts$" /proc/filesystems && \ - ! mountinfo -q /dev/pts; then - if [ ! -d /dev/pts ] && \ +# Mount required stuff as user may not have then in /etc/fstab +for x in "devpts /dev/pts" "tmpfs /dev/shm ,nodev"; do + set -- ${x} + grep -Eq "[[:space:]]+$1$" /proc/filesystems || continue + mountinfo -q "$2" && continue + + if [ ! -d "$2" ] && \ [ "${devfs}" = "yes" -o "${udev}" = "yes" ]; then - # Make sure we have /dev/pts - mkdir -p /dev/pts >/dev/null 2>/dev/null || \ - ewarn "Could not create /dev/pts!" + mkdir -p "$2" >/dev/null 2>/dev/null || \ + ewarn "Could not create $2!" fi - if [ -d /dev/pts ]; then - ebegin "Mounting devpts at /dev/pts" - if fstabinfo --quiet /dev/pts; then - try mount -n /dev/pts + if [ -d "$2" ]; then + ebegin "Mounting $1 at $2" + if fstabinfo --quiet "$2"; then + try mount -n "$2" else - try mount -n -t devpts -o gid=5,mode=0620,noexec,nosuid devpts /dev/pts + try mount -n -t "$1" -o gid=5,mode=0620,noexec,nosuid"$3" none "$2" fi eend $? fi -fi +done # If booting off CD, we want to update inittab before setting the runlevel if [ -f /sbin/livecd-functions.sh -a -n "${CDBOOT}" ]; then