1
0
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:
Chen Qi
2014-05-15 17:36:17 +08:00
committed by Richard Purdie
parent 77b4b25c36
commit 8293f56468
5 changed files with 27 additions and 27 deletions
@@ -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"