diff options
author | Simon Rettberg | 2013-05-28 21:44:34 +0200 |
---|---|---|
committer | Simon Rettberg | 2013-05-28 21:44:34 +0200 |
commit | f4ba9b7f42ebabf6e10853e7031abdfd567cce5e (patch) | |
tree | ba8156b579528257db1a90b6c949311b48333a85 /remote/rootfs/rootfs-stage32/data/opt/openslx/bin | |
parent | [WiP] Server Maintenance Scripts (diff) | |
download | tm-scripts-f4ba9b7f42ebabf6e10853e7031abdfd567cce5e.tar.gz tm-scripts-f4ba9b7f42ebabf6e10853e7031abdfd567cce5e.tar.xz tm-scripts-f4ba9b7f42ebabf6e10853e7031abdfd567cce5e.zip |
Add mount tmp (partition 44)
Diffstat (limited to 'remote/rootfs/rootfs-stage32/data/opt/openslx/bin')
-rwxr-xr-x | remote/rootfs/rootfs-stage32/data/opt/openslx/bin/analyse-disk | 95 | ||||
-rwxr-xr-x | remote/rootfs/rootfs-stage32/data/opt/openslx/bin/disk-tmp | 24 |
2 files changed, 47 insertions, 72 deletions
diff --git a/remote/rootfs/rootfs-stage32/data/opt/openslx/bin/analyse-disk b/remote/rootfs/rootfs-stage32/data/opt/openslx/bin/analyse-disk index 27c3f306..c1e2bf3d 100755 --- a/remote/rootfs/rootfs-stage32/data/opt/openslx/bin/analyse-disk +++ b/remote/rootfs/rootfs-stage32/data/opt/openslx/bin/analyse-disk @@ -14,92 +14,91 @@ ############################################################################# +export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/openslx/bin:/opt/openslx/sbin:/opt/openslx/usr/bin:/opt/openslx/usr/sbin" + # General formatter for the /tmp partition on a local harddisk diskfm () { -local target=$1 +local target="$1" local fs local path for fs in xfs ext3 ext2 ; do unset available case $(cat /proc/filesystems) in *${fs}*) available=yes;; - *) modprobe -q ${fs} 2>/dev/null && available=yes;; + *) modprobe "${fs}" && available=yes;; esac - if [ -n ${available} ]; then + if [ -n "${available}" ]; then unset found - for path in /sbin /bin /usr/sbin /usr/bin /openslx/sbin /openslx/bin; do - if test -x /$path/mkfs.$fs ; then - found=yes - case mkfs.$fs in - mkfs.xfs) - fopt="-f" - mopt="-o noexec" - ;; - mkfs.ext2) - fopt="-Fq" - mopt="-o nocheck,noexec" - ;; - mkfs.reiserfs) - fopt="-f" - mopt="-o noexec" - ;; - esac - mkfs.$fs ${fopt} ${target} >/dev/null 2>&1 #|| error - mkdir -p /run/mount/tmp - mount -t ${fs} ${target} /run/mount/tmp - fi - done + if which "mkfs.$fs" ; then + found=yes + case "mkfs.$fs" in + mkfs.xfs) + fopt="-f" + mopt="-o noexec" + ;; + mkfs.ext2) + fopt="-Fq" + mopt="-o nocheck,noexec" + ;; + mkfs.reiserfs) + fopt="-f" + mopt="-o noexec" + ;; + esac + mkfs.$fs ${fopt} "${target}" + fi [ -n "$found" ] && break fi done } # Check for local harddisks and appropriate partitions -fdisk -l |sed -n "/^\/dev\//p" >/etc/disk.partition +fdisk -l | sed -n "/^\/dev\//p" > "/etc/disk.partition" # Check for standard swap partitions and make them available to the system -for hdpartnr in $(cat /etc/disk.partition | \ - sed -n -e "/ 82 /p"|sed -e "s/[[:space:]].*//") ; do - echo -e "$hdpartnr\tswap\t\tswap\t\tdefaults\t 0 0" >>/etc/fstab +for hdpartnr in $(sed -n -e "/ 82 /p" "/etc/disk.partition" | sed -e "s/[[:space:]].*//"); do + echo -e "$hdpartnr\tswap\t\tswap\t\tdefaults\t 0 0" >> "/etc/fstab" done # We use special non assigned partition type (id44) for harddisk scratch # space, thus no normal filesystem will be incidentally deleted or # corrupted -for hdpartnr in $(cat /etc/disk.partition | \ - sed -n -e "/ 44 /p"|sed -e "s/[[:space:]].*//") ; do +for hdpartnr in $(sed -n -e "/ 44 /p" "/etc/disk.partition" | sed -e "s/[[:space:]].*//"); do # check for supported filesystem and formatter - ( if diskfm $hdpartnr ; then + if diskfm "$hdpartnr"; then # echo "$hdpartnr is mounted to /mnt/tmp at $(sysup)" >/tmp/tmpready - echo -e "$hdpartnr\t/tmp\t\tnoauto\t\tdefaults\t 0 0" >>/etc/fstab + echo -e "$hdpartnr\t/tmp\t\tnoauto\t\tdefaults\t 0 0" >> "/etc/fstab" + mkdir -p /tmptmp + mv /tmp/* /tmp/.* /tmptmp/ + mount "$hdpartnr" /tmp + mv /tmptmp/* /tmp/ + rmdir /tmptmp + break else - echo "formatting failed for some reason " >/tmp/tmpready - fi ) & - break + echo "formatting failed for some reason" + fi # Made this non-forking, systemd should handle it - 2013-05-28 done # Put detected linux partitions (83) into /etc/fstab with "noauto", special # partition 45 (persistent scratch) to /var/scratch and 46 to /var/openslx for partid in 83 45 46 ; do - for hdpartnr in $(cat /etc/disk.partition | \ - sed -n -e "/ ${partid} /p"|sed -e "s/[[:space:]].*//") ; do - mkdir -p /media/${hdpartnr#/dev/*} 2>/dev/null - if [ ${partid} -eq 83 ] ; then - echo -e "$hdpartnr\t/media/${hdpartnr#/dev/*}\tauto\t\tnoauto,\ -noexec\t 0 0" >>/tmp/fstab - elif [ ${partid} -eq 45 ] ; then + for hdpartnr in $(sed -n -e "/ ${partid} /p" "/etc/disk.partition" | sed -e "s/[[:space:]].*//"); do + mkdir -p "/media/${hdpartnr#/dev/*}" + if [ "${partid}" -eq 83 ]; then + echo -e "$hdpartnr\t/media/${hdpartnr#/dev/*}\tauto\t\tnoauto,noexec\t 0 0" >> "/etc/fstab" + elif [ "${partid}" -eq 45 ]; then #mount -t auto ${hdpartnr} /media/${hdpartnr#/dev/*} #ln -sf /media/${hdpartnr#/dev/*} /var/scratch - echo -e "${hdpartnr}\t/media/${hdpartnr#/dev/*}\tauto\t\tnoauto\ -\t\t 0 0" >>/tmp/fstab - elif [ ${partid} -eq 46 ] ; then + echo -e "${hdpartnr}\t/media/${hdpartnr#/dev/*}\tauto\t\tnoauto\t\t 0 0" >> "/etc/fstab" + elif [ "${partid}" -eq 46 ]; then # Mount a home directory to (/mnt)/var/home #mount -t auto ${hdpartnr} /mnt/media/${hdpartnr#/dev/*} \n\ #test -d /mnt/media/${hdpartnr#/dev/*}/home && \ # ln -sf /media/${hdpartnr#/dev/*} /var/home - echo -e "${hdpartnr}\t/media/${hdpartnr#/dev/*}\tauto\t\tnoauto\ -\t\t 0 0" >>/tmp/fstab + echo -e "${hdpartnr}\t/media/${hdpartnr#/dev/*}\tauto\t\tnoauto\t\t 0 0" >> "/etc/fstab" fi done done +mount -a + diff --git a/remote/rootfs/rootfs-stage32/data/opt/openslx/bin/disk-tmp b/remote/rootfs/rootfs-stage32/data/opt/openslx/bin/disk-tmp deleted file mode 100755 index 4378c45c..00000000 --- a/remote/rootfs/rootfs-stage32/data/opt/openslx/bin/disk-tmp +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/sh -# Copyright (c) 2013 - OpenSLX GmbH -# -# This program is free software distributed under the GPL version 2. -# See http://openslx.org/COPYING -# -# If you have any feedback please consult http://openslx.org/feedback and -# send your feedback to feedback@openslx.org -# -# General information about OpenSLX can be found under http://openslx.org -# -# Mount local ID44 partition to /tmp after all existing stuff is preserved - -############################################################################# - -# Check if ID44 is available by analysing /etc/fstab for appropriate entry -if cat /proc/mounts | grep -qe "/dev/.*/tmp" ; then - mkdir -p /run/tmp - mv /tmp/* /run/tmp - mount --bind /run/mount/tmp /tmp - umount /run/mount/tmp - mv /run/tmp/* /tmp - rmdir /run/tmp -fi |