mirror of
https://git.yoctoproject.org/poky
synced 2026-05-08 17:19:20 +00:00
initrdscripts: fix for /run/media
mount.sh in udev-extraconf was modified to use /run/media instead of /media. Unfortunately, our scripts in initrdscripts have some dependency on the auto-mounting mechanism proviced by udev-extraconf. So these scripts should also be fixed to use /run/media instead /media, otherwise, our live image cannot work correctly. (From OE-Core rev: be0327b6a900be5434b6b1f08277faf2f65d5da8) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -128,7 +128,7 @@ mkdir /rootmnt
|
||||
mkdir /bootmnt
|
||||
|
||||
mount $rootfs /ssd
|
||||
mount -o rw,loop,noatime,nodiratime /media/$1/$2 /rootmnt
|
||||
mount -o rw,loop,noatime,nodiratime /run/media/$1/$2 /rootmnt
|
||||
|
||||
echo "Copying rootfs files..."
|
||||
cp -a /rootmnt/* /ssd
|
||||
@@ -150,13 +150,13 @@ mount $bootfs /ssd
|
||||
|
||||
EFIDIR="/ssd/EFI/BOOT"
|
||||
mkdir -p $EFIDIR
|
||||
cp /media/$1/vmlinuz /ssd
|
||||
cp /run/media/$1/vmlinuz /ssd
|
||||
# Copy the efi loader
|
||||
cp /media/$1/EFI/BOOT/*.efi $EFIDIR
|
||||
cp /run/media/$1/EFI/BOOT/*.efi $EFIDIR
|
||||
|
||||
if [ -f /media/$1/EFI/BOOT/grub.cfg ]; then
|
||||
if [ -f /run/media/$1/EFI/BOOT/grub.cfg ]; then
|
||||
GRUBCFG="$EFIDIR/grub.cfg"
|
||||
cp /media/$1/EFI/BOOT/grub.cfg $GRUBCFG
|
||||
cp /run/media/$1/EFI/BOOT/grub.cfg $GRUBCFG
|
||||
# Update grub config for the installed image
|
||||
# Delete the install entry
|
||||
sed -i "/menuentry 'install'/,/^}/d" $GRUBCFG
|
||||
@@ -170,10 +170,10 @@ if [ -f /media/$1/EFI/BOOT/grub.cfg ]; then
|
||||
sed -i "s@linux /vmlinuz *@linux /vmlinuz root=$rootfs rw $rootwait quiet @" $GRUBCFG
|
||||
fi
|
||||
|
||||
if [ -d /media/$1/loader ]; then
|
||||
if [ -d /run/media/$1/loader ]; then
|
||||
GUMMIBOOT_CFGS="/ssd/loader/entries/*.conf"
|
||||
# copy config files for gummiboot
|
||||
cp -dr /media/$1/loader /ssd
|
||||
cp -dr /run/media/$1/loader /ssd
|
||||
# delete the install entry
|
||||
rm -f /ssd/loader/entries/install.conf
|
||||
# delete the initrd lines
|
||||
|
||||
@@ -128,7 +128,7 @@ mkdir /rootmnt
|
||||
mkdir /bootmnt
|
||||
|
||||
mount $rootfs /ssd
|
||||
mount -o rw,loop,noatime,nodiratime /media/$1/$2 /rootmnt
|
||||
mount -o rw,loop,noatime,nodiratime /run/media/$1/$2 /rootmnt
|
||||
|
||||
echo "Copying rootfs files..."
|
||||
cp -a /rootmnt/* /ssd
|
||||
@@ -150,13 +150,13 @@ mount $bootfs /ssd
|
||||
|
||||
EFIDIR="/ssd/EFI/BOOT"
|
||||
mkdir -p $EFIDIR
|
||||
cp /media/$1/vmlinuz /ssd
|
||||
cp /run/media/$1/vmlinuz /ssd
|
||||
# Copy the efi loader
|
||||
cp /media/$1/EFI/BOOT/*.efi $EFIDIR
|
||||
cp /run/media/$1/EFI/BOOT/*.efi $EFIDIR
|
||||
|
||||
if [ -f /media/$1/EFI/BOOT/grub.cfg ]; then
|
||||
if [ -f /run/media/$1/EFI/BOOT/grub.cfg ]; then
|
||||
GRUBCFG="$EFIDIR/grub.cfg"
|
||||
cp /media/$1/EFI/BOOT/grub.cfg $GRUBCFG
|
||||
cp /run/media/$1/EFI/BOOT/grub.cfg $GRUBCFG
|
||||
# Update grub config for the installed image
|
||||
# Delete the install entry
|
||||
sed -i "/menuentry 'install'/,/^}/d" $GRUBCFG
|
||||
@@ -170,10 +170,10 @@ if [ -f /media/$1/EFI/BOOT/grub.cfg ]; then
|
||||
sed -i "s@linux /vmlinuz *@linux /vmlinuz root=$rootfs rw $rootwait quiet @" $GRUBCFG
|
||||
fi
|
||||
|
||||
if [ -d /media/$1/loader ]; then
|
||||
if [ -d /run/media/$1/loader ]; then
|
||||
GUMMIBOOT_CFGS="/ssd/loader/entries/*.conf"
|
||||
# copy config files for gummiboot
|
||||
cp -dr /media/$1/loader /ssd
|
||||
cp -dr /run/media/$1/loader /ssd
|
||||
# delete the install entry
|
||||
rm -f /ssd/loader/entries/install.conf
|
||||
# delete the initrd lines
|
||||
|
||||
@@ -151,7 +151,7 @@ mkdir -p /boot
|
||||
|
||||
# Handling of the target root partition
|
||||
mount $rootfs /tgt_root
|
||||
mount -o rw,loop,noatime,nodiratime /media/$1/$2 /src_root
|
||||
mount -o rw,loop,noatime,nodiratime /run/media/$1/$2 /src_root
|
||||
echo "Copying rootfs files..."
|
||||
cp -a /src_root/* /tgt_root
|
||||
if [ -d /tgt_root/etc/ ] ; then
|
||||
@@ -197,7 +197,7 @@ if [ ! -f /boot/grub/grub.cfg ] ; then
|
||||
echo "kernel /vmlinuz root=$rootfs rw $3 $4 quiet" >> /boot/grub/menu.lst
|
||||
fi
|
||||
|
||||
cp /media/$1/vmlinuz /boot/
|
||||
cp /run/media/$1/vmlinuz /boot/
|
||||
|
||||
umount /boot
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@ mkdir -p /boot
|
||||
|
||||
# Handling of the target root partition
|
||||
mount $rootfs /tgt_root
|
||||
mount -o rw,loop,noatime,nodiratime /media/$1/$2 /src_root
|
||||
mount -o rw,loop,noatime,nodiratime /run/media/$1/$2 /src_root
|
||||
echo "Copying rootfs files..."
|
||||
cp -a /src_root/* /tgt_root
|
||||
if [ -d /tgt_root/etc/ ] ; then
|
||||
@@ -194,7 +194,7 @@ if [ ! -f /boot/grub/grub.cfg ] ; then
|
||||
echo "kernel /vmlinuz root=$rootfs rw $3 $4 quiet" >> /boot/grub/menu.lst
|
||||
fi
|
||||
|
||||
cp /media/$1/vmlinuz /boot/
|
||||
cp /run/media/$1/vmlinuz /boot/
|
||||
|
||||
umount /boot
|
||||
|
||||
|
||||
@@ -82,9 +82,9 @@ boot_live_root() {
|
||||
|
||||
# Move the mount points of some filesystems over to
|
||||
# the corresponding directories under the real root filesystem.
|
||||
for dir in `awk '/\/dev.* \/media/{print $2}' /proc/mounts`; do
|
||||
mkdir -p ${ROOT_MOUNT}/$dir
|
||||
mount -n --move $dir ${ROOT_MOUNT}/$dir
|
||||
for dir in `awk '/\/dev.* \/run\/media/{print $2}' /proc/mounts`; do
|
||||
mkdir -p ${ROOT_MOUNT}/media/${dir##*/}
|
||||
mount -n --move $dir ${ROOT_MOUNT}/media/${dir##*/}
|
||||
done
|
||||
mount -n --move /proc ${ROOT_MOUNT}/proc
|
||||
mount -n --move /sys ${ROOT_MOUNT}/sys
|
||||
@@ -113,11 +113,11 @@ echo "Waiting for removable media..."
|
||||
C=0
|
||||
while true
|
||||
do
|
||||
for i in `ls /media 2>/dev/null`; do
|
||||
if [ -f /media/$i/$ROOT_IMAGE ] ; then
|
||||
for i in `ls /run/media 2>/dev/null`; do
|
||||
if [ -f /run/media/$i/$ROOT_IMAGE ] ; then
|
||||
found="yes"
|
||||
break
|
||||
elif [ -f /media/$i/isolinux/$ROOT_IMAGE ]; then
|
||||
elif [ -f /run/media/$i/isolinux/$ROOT_IMAGE ]; then
|
||||
found="yes"
|
||||
ISOLINUX="isolinux"
|
||||
break
|
||||
@@ -135,7 +135,7 @@ do
|
||||
mount | grep media
|
||||
echo "Available block devices"
|
||||
cat /proc/partitions
|
||||
fatal "Cannot find $ROOT_IMAGE file in /media/* , dropping to a shell "
|
||||
fatal "Cannot find $ROOT_IMAGE file in /run/media/* , dropping to a shell "
|
||||
fi
|
||||
C=$(( C + 1 ))
|
||||
fi
|
||||
@@ -150,7 +150,7 @@ mount_and_boot() {
|
||||
mkdir $ROOT_MOUNT
|
||||
mknod /dev/loop0 b 7 0 2>/dev/null
|
||||
|
||||
if ! mount -o rw,loop,noatime,nodiratime /media/$i/$ISOLINUX/$ROOT_IMAGE $ROOT_MOUNT ; then
|
||||
if ! mount -o rw,loop,noatime,nodiratime /run/media/$i/$ISOLINUX/$ROOT_IMAGE $ROOT_MOUNT ; then
|
||||
fatal "Could not mount rootfs image"
|
||||
fi
|
||||
|
||||
@@ -211,7 +211,7 @@ case $label in
|
||||
mount_and_boot
|
||||
;;
|
||||
install|install-efi)
|
||||
if [ -f /media/$i/$ISOLINUX/$ROOT_IMAGE ] ; then
|
||||
if [ -f /run/media/$i/$ISOLINUX/$ROOT_IMAGE ] ; then
|
||||
./$label.sh $i/$ISOLINUX $ROOT_IMAGE $video_mode $vga_mode $console_params
|
||||
else
|
||||
fatal "Could not find $label script"
|
||||
|
||||
Reference in New Issue
Block a user