1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- #!/bin/sh
- #INIT 10
- [[ $1 = autostart ]] || exit 0
- # activate swap
- [ -x /sbin/swapon ] && {
- grep swap /etc/fstab >/dev/null 2>&1
- if [ $? -eq 0 ];then
- logger -t 'SWAP' "Activating swap"
- swapon -a
- fi
- }
- # activate any logical volumes
- [ -x /usr/sbin/lvm ] && {
- logger -t 'LVM' "Activating LVM volumes"
- lvm vgscan
- lvm vgchange -ay
- }
- # mount local filesystems
- fstypes="ext2 ext3 ext4 xfs vfat ntfs ntfs-3g"
- for fs in $fstypes; do
- procfs=$fs
- if [ $fs = "ntfs-3g" ];then
- procfs=fuse
- fi
- disks=$(grep -v "^#" /etc/fstab|grep "${fs}[[:blank:]]"|awk '{ print $1 }')
- for disk in $disks; do
- logger -t 'Filesystem' "Found $disk with filesystem $fs"
- mnt=$(grep -v "^#" /etc/fstab|grep "${disk}[[:blank:]]"|awk '{ print $2 }')
- grep $procfs /proc/filesystems >/dev/null 2>&1
- if [ $? -eq 0 ];then
- [ -x /usr/sbin/fsck.$fs ] && {
- logger -t 'Filesystem' "checking $fs filesystem on $disk"
- fsck -p $disk >/dev/null 2>&1
- }
- mkdir -p $mnt > /dev/null 2>&1
- if [ -b $disk ]; then
- logger -t 'Filesystem' "Mounting $disk to $mnt"
- mount $disk
- else
- logger -t 'Filesystem' "Skipping mounting $disk, device file missing"
- fi
- else
- logger -t 'Filesystem' "No $procfs filesystem in kernel"
- fi
- done
- done
- exit 0
|