summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAn-Cheng Huang <ancheng@vyatta.com>2008-07-03 19:18:06 -0700
committerAn-Cheng Huang <ancheng@vyatta.com>2008-07-03 19:18:06 -0700
commitafcffd6f2208aa241b346c501d749e3edc5d7dd1 (patch)
treec7402105da03f02593d5380db225a716d73a92cd
parent1fb175a266e45828a5588e2f44660c2a70057bf0 (diff)
downloadvyatta-cfg-quagga-afcffd6f2208aa241b346c501d749e3edc5d7dd1.tar.gz
vyatta-cfg-quagga-afcffd6f2208aa241b346c501d749e3edc5d7dd1.zip
fix for bug 3417: use UUID in grub config file
-rwxr-xr-xscripts/install-system15
1 files changed, 12 insertions, 3 deletions
diff --git a/scripts/install-system b/scripts/install-system
index 5a9c0309..b5eefe62 100755
--- a/scripts/install-system
+++ b/scripts/install-system
@@ -479,7 +479,15 @@ install_root_filesystem () {
output=$(umount /mnt/squashfs)
# create the fstab
- echo -e "/dev/$ROOT_PARTITION\t/\text3\tdefaults\t0 1" >> $rootfsdir/etc/fstab
+ local rootdev="/dev/$ROOT_PARTITION";
+ uuid=$(dumpe2fs -h $rootdev 2>/dev/null | awk '/^Filesystem UUID/ {print $3}')
+ if [ -z "$uuid" ]
+ then
+ echo "Unable to read filesystem UUID. Exiting."
+ exit 1
+ else
+ echo -e "UUID=$uuid\t/\text3\tdefaults\t0 1" >> $rootfsdir/etc/fstab
+ fi
#setup the hostname file
cp /etc/hostname $rootfsdir/etc/
@@ -632,9 +640,10 @@ install_grub () {
# This allows device to move around and grub will still find it
local rootdev="/dev/$ROOT_PARTITION";
uuid=$(dumpe2fs -h $rootdev 2>/dev/null | awk '/^Filesystem UUID/ {print $3}')
- if [ -z $uuid ]
+ if [ -z "$uuid" ]
then
- GRUB_ROOT="root=$rootdev ro"
+ echo "Unable to read filesystem UUID. Exiting."
+ exit 1
else
GRUB_ROOT="root=UUID=$uuid ro"
fi