1234567891011121314151617181920212223242526272829303132 |
- #!/bin/sh
- #INIT 20
- [[ $1 = autostart ]] || exit 0
- # activate swap
- [ -x /sbin/swapon ] && { swapon -a; }
- # activate any logical volumes
- [ -x /usr/sbin/lvm ] && { lvm vgscan; lvm vgchange -ay; }
- rootdisk=$(readlink /dev/root)
- # strip partitions (f.e. mmcblk0p2, sda2, ..)
- rootdisk=${rootdisk%p*}
- rootdisk=${rootdisk%[1-9]}
- rootparts=$(grep "^/dev/${rootdisk}" /etc/fstab|awk '{ print $1 }')
- for part in $rootparts; do
- fstype=$(grep "^$part" /etc/fstab|awk '{ print $3 }')
- mnt=$(grep "^$part" /etc/fstab|awk '{ print $2 }')
- [ -x /usr/sbin/fsck.$fstype ] && {
- logger -s "Checking $fstype filesystem on $part"
- fsck -p -t $fstype $part
- }
- grep $fstype /proc/filesystems >/dev/null 2>&1
- if [ $? -eq 0 ];then
- mount $mnt
- else
- logger -s "Filesystem $fstype not in kernel"
- exit 1
- fi
- done
- exit 0
|