summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/initrdscripts/files
Commit message (Collapse)AuthorAgeFilesLines
* init-install-efi.sh: Avoid /mnt/mtab creation if already presentLeonardo Sandoval2015-12-081-1/+5
| | | | | | | | | | | | | | | | | | The base-files recipe installs /mnt/mtab (it is a softlink of /proc/mounts), so if an image includes the latter, there is no new to created it again inside the install-efi.sh script, otherwise an error may occur as indicated on the bug's site. [YOCTO #7971] (From OE-Core master rev: 6c6c6528954952e1e323f5a26afd93b99913e6f2) (From OE-Core rev: 92da534cefb5937c69553dbe599b664dc73292f3) Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-efi.sh: fix gummiboot entry installationReinette Chatre2015-05-151-3/+3
| | | | | | | | | | | | | | | | | After selecting the "install" gummiboot option of a Live image we are seeing boot failure resulting from the gummiboot entries not being installed correctly. This seems to be a problem in this init-install-efi.sh script where it incorrectly installs the gummiboot entries into the root filesystem, not the boot partition. We fix it by installing the entries in the boot partition. (From OE-Core master rev: c9b06c79ed8a082d1b385e9f61721aeeda9bf1af) (From OE-Core rev: 5d38c46689c9065992838b58e280886f4091f8fd) Signed-off-by: Reinette Chatre <reinette.chatre@intel.com> Acked-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install: Skip CDROM devices during probeDrew Moseley2014-08-022-0/+6
| | | | | | | | (From OE-Core rev: e8ee8b765183fb3ebe5e94df6375c2fad111dcc7) Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install: Strip partition number from live_dev_nameDrew Moseley2014-08-022-0/+2
| | | | | | | | | | | | | This is needed in case the boot disk was created with mkdiskimage. In that case the parameter passed is a variant of /dev/sda4 which includes the partition number. Without this change this install script will offer to install onto the live media. (From OE-Core rev: 9f6d7d42eaad225698de730d5c76bfe9523f4a78) Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-efi.sh: Verify /sys based files exist before displaying themDrew Moseley2014-08-021-3/+8
| | | | | | | | | | | | Some mmc cards do not have all the data files in /sys/block populated. Check for existence before displaying the files to avoid erroring out of the install process. (From OE-Core rev: 4abe5563f61a228963e1e442ebc2df9f2d01be80) Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Move boot media to /media/realroot for easy access after boot.Brian Lloyd2014-07-101-1/+9
| | | | | | | | | | | | | | | | | | | | | There are cases where software after boot may need to know the current boot disk. Under the current system, it is not guaranteed which disk is the boot. While /media/sda is a good guess, it isn't always right, nor is it a good assumption that only one boot disk is in the system. This gives a standard path to the original boot disk mount which can be used to, for instance, update the syslinux file on the boot media with a newer kernel, or updating the boot parameters to add user options for future boots. Knowing which disk is the boot media keeps from updating the non-boot disk when for instance multiple syslinux boot medias are plugged in (ie ensure correct syslinux is updated when the booted system is updated). (From OE-Core rev: 2be3b2607fd164d18498299dbfc020ff17dd2ca9) Signed-off-by: Brian Lloyd <blloyd@familyhonor.net> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-efi.sh: improve hard drive searching processDrew Moseley2014-07-101-32/+53
| | | | | | | | | | | | | | | | | | | | | (This patch was originally done against init-install.sh in OE-Core rev 358f0584d779825307eec08c023b5ff14e72cf9e) Previously, only unremovable hard drives are searched and are treated as candidates of target disks to intall into. However, it's possible that we're going to install the live image into a removable media such as an USB. This patch enables this possibility. In addition, this patch presents more information about the hard drives so that user may have more knowledge about which hard drive they are going to install their image into. (From OE-Core rev: 7386acf4ab63a5959e4907b29459b767f2bf2fdb) Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-efi.sh: fix to handle the boot partition correctlyDrew Moseley2014-07-101-22/+25
| | | | | | | | | | | | | | | | | | | | | (This patch was originally done against init-install.sh in OE-Core rev aa67b1333b4774e1845f562085f7048df65a644f) Previously, the boot partition was created for the target hard drive but there was no corresponding entry for it in /etc/fstab. Besides, even if the boot partition was mounted, it would just result in odd directory hierarchy like /boot/boot/grub. However, what we really need is /boot/grub. This patch fixes this problem. Besides, for future maintance work, this patch also renames some of the intermediate directories. It uses more descriptive names like /tgt_root and /src_root. The name of /ssd is dropped. (From OE-Core rev: 3b1bae7ad8d36930aae840175c6a3433c1469772) Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install.sh: Verify /sys based files exist before displaying themDrew Moseley2014-07-101-3/+8
| | | | | | | | | | | | Some mmc cards do not have all the data files in /sys/block populated. Check for existence before displaying the files to avoid erroring out of the install process. (From OE-Core rev: 1d73e3f9d9977382efdb0c111c556c6048bd60b4) Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-testfs.sh: add '--hotkey x' to 'test' menuentryCorneliu Stoicescu2014-07-031-1/+1
| | | | | | | | | Add a hotkey for the GRUB 'test' menuentry. This can be used by expect scripts to boot into 'test' when doing runtime hardware tests. (From OE-Core rev: 17b97fd6c724ba6e506cbadb18facdfd9c472e79) Signed-off-by: Corneliu Stoicescu <corneliux.stoicescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: Try to boot if boot label is unknownDrew Moseley2014-06-291-0/+4
| | | | | | | | | | | | | The init-live.sh scripts assumes that the boot label set by the LABELS variable is either "boot", "install", or "install-efi". If that variable is overridden to something else we fall off the end of the case statement and the system locks up. If the boot label is unknown, at least attempt to boot. (From OE-Core rev: 98353862c08be2f1724aaad7aa4ed0521e3621f2) Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-testfs: create signature file for master imageCristian Iorga2014-06-231-0/+4
| | | | | | | | | Also small cosmetic changes. (From OE-Core rev: 33c464269155f268cb08f086e530187bac61c299) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-testfs: fix typoCristian Iorga2014-06-231-1/+1
| | | | | | | | | | _EOF marker was not used properly (space left before end of line). (From OE-Core rev: 913fd224499c57c7596bd49e1eec5f570c3edf68) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-core/init-install-testfs.sh: do not overwrite /etc/mtab if the link ↵Cristian Iorga2014-06-231-1/+3
| | | | | | | | | | | | | | | | already exist Overwriting of /etc/mtab would fail as below if the /etc/mtab link already exist during installation phase, this patch fix this problem by checking existance of the link before try to overwrite it. Error message during installation if the /etc/mtab exists: "cat: /proc/mounts: input file is output file" (From OE-Core rev: 5cd96e28825d345650be878d4b7be4fea2996839) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-testfs: add grub serial line supportCristian Iorga2014-06-231-0/+5
| | | | | | | | | | | | | | | | For automated hardware testing, boot process control via serial interface is needed. As such, in grub, serial line support is added upon testmaster image install. Also add a specific timeout to automatically start the master image upon start of testing phase. Tested on multiple hardware targets without issues. (From OE-Core rev: 219228805a4d5d822894c8f6c2526e1b9a8609ff) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-core/init-install.sh: do not overwrite /etc/mtab if the link already existShan Hai2014-06-101-1/+3
| | | | | | | | | | | | | | | Overwriting of /etc/mtab would fail as below if the /etc/mtab link already exist during installation phase, this patch fix this problem by checking existance of the link before try to overwrite it. Error message during installation if the /etc/mtab exists: "cat: /proc/mounts: input file is output file (From OE-Core rev: 26a5121e966f465386da4ead40cc558fd877ce2b) Signed-off-by: Shan Hai <shan.hai@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* grub-2.00: remove our 40_customRoy Li2014-06-061-9/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We have this in recipes-bsp/grub/grub/40_custom: [snip] menuentry "Linux" { set root=(hd0,1) linux /vmlinuz root=__ROOTFS__ rw __CONSOLE__ __VIDEO_MODE__ __VGA_MODE__ quiet } [snip] These lines are only for initrdscripts/files/init-install.sh, the side effect is that it would make the target's grub-mkconfig doesn't work well since the 40_custom will be installed to /etc/grub.d/40_custom, the grub-mkconfig will run the 40_custom, and there will always be a 'menuentry "Linux"' menu in grub.cfg no matter it is valid or not, we can do this in init-install.sh rather than grub to fix the problem, which is also much simpler. We have done the related work in init-install.sh, now we need remove our own 40_custom, and use grub's own 40_custom which is the right one. (From OE-Core rev: e5f6dc48930c8ff35df5cff3550ec2ee86641faf) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initramfs-live-install: avoid using grub.d/40_customRobert Yang2014-05-271-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | | We have this in recipes-bsp/grub/grub/40_custom: [snip] menuentry "Linux" { set root=(hd0,1) linux /vmlinuz root=__ROOTFS__ rw __CONSOLE__ __VIDEO_MODE__ __VGA_MODE__ quiet } [snip] These lines are only for initrdscripts/files/init-install.sh, the side effect is that it would make the target's grub-mkconfig doesn't work well since the 40_custom will be installed to /etc/grub.d/40_custom, the grub-mkconfig will run the 40_custom, and there will always be a 'menuentry "Linux"' menu in grub.cfg no matter it is valid or not, we can do this in init-install.sh rather than grub to fix the problem, which is also much simpler. (From OE-Core rev: 8ae89d08454c11035eb2826a06e2243c9f2568b4) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: fix for /run/mediaChen Qi2014-05-205-27/+27
| | | | | | | | | | | | | | 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>
* init-live.sh: list block devices correctlyChen Qi2014-05-201-1/+1
| | | | | | | | | | | Instead of using 'ls /dev/sd*' command to list block devices, we should rather use 'cat /proc/partitions'. (From OE-Core rev: fc5dfad6490d0b3f2529f84ae9dfbd6b00b5c380) 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>
* initrdscripts: add install scripts with a second rootfsStefan Stanacar2014-03-312-0/+410
| | | | | | | | | | | | | | | | These are meant to be used by a master image, for a simple initial setup. The install scripts are similar to the default ones, but: - custom partitioning, replaces the swap partiton with a second root filesystem - adds labels to the partitions - preconfigures a boot loader entry for the second rootfs Part of [YOCTO #5614] (From OE-Core rev: 39fcab00cd3b85d40966689e31b4c7748f630739) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes: Add gummiboot classStefan Stanacar2014-03-111-16/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a gummiboot class similar to grub-efi class and makes the necessary changes so it can be used for live/hddimg images as well. One can set EFI_PROVIDER = "gummiboot" in local.conf to use gummiboot instead of grub-efi. Gummiboot requires some kernel options that are not enabled by default, so one has to build with KERNEL_FEATURES_append = " cfg/efi-ext". The install scripts have been updated too, keeping the old behaviour around, but accounting for the new boot loader config files (if they exist). It can be argued that the installer and bootimg are a bit wierd and not necessarily correct, but I wanted to have the exact same behviour with gummiboot. With the default EFI_PROVIDER = "grub-efi" nothing changes, everthing should be just as before. I've tested live boot, install and normal boot on: - FRI2 - genericx86-64 on NUC with: EFI_PROVIDER = "gummiboot" KERNEL_FEATURES_append = " cfg/efi-ext" in local.conf. (From OE-Core rev: b457e40fc69cc6503dc566f16495f03606e5333b) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: Add rootimage optionSaul Wold2014-02-281-1/+3
| | | | | | | | | | | This allows for setting the ROOT_IMAGE name on the kernel command line [YOCTO #5387] (From OE-Core rev: 00e3acde7910a5fb1d2e6b71187f2d9283319e71) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: add $CMDLINE to init-live switch_rootKrzysztof Sywula2014-01-161-1/+4
| | | | | | | | | | | init-live.sh: $CMDLINE variable should be provided to switch_root to let user specify runlevel on grub command line. Feeding with -c /dev/console as well as busybox switch_root enables that option. (From OE-Core rev: 5a2f4feeaac4f9278fa0cf808c2f495f0c19324f) Signed-off-by: Krzysztof Sywula <krzysztof.m.sywula@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-live.sh: remove the '-c /dev/console' for switch_rootChen Qi2013-12-051-1/+1
| | | | | | | | | | | | | | | The '-c DEV' option is specific to the switch_root provided by busybox. switch_root from util-linux doesn't recognize this option. As a result, if we we this init-live.sh script together with util-linux, we would get a kernel panic when executing switch_root. Besides, this option doesn't seem to have any useful effect as far as I can see. Removing it doesn't affect the behaviours of our live images. (From OE-Core rev: 6f50ccb8ae9e11870f99bb3b191f677c3633cd0d) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-efi.sh: Remove unnecessary udev rules file to avoid errorsDarren Hart2013-09-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fixes [YOCTO #5233] Modeled after Chen Qi's fix to [YOCTO #3924] from oe-core commit: 6b6db7b4fb7aa17b8e29076decc830149b9d35bc init-install.sh: remove unnecessary udev rules file to avoid error messages /etc/udev/scripts/mount.sh is removed by init-install-efi.sh, but the udev rules file which specifies the invocation of this script is not removed, thus causing the error message during a live install: /etc/udev/scripts/mount.sh: No such file or directory The /etc/udev/rules/automount.rules no longer works once the mount.sh script is removed. Remove it to avoid the error message. (From OE-Core rev: 1f5a2b616d902b1158e348bf8c33b6d36e21cadc) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: mihaix.lindner@linux.intel.com Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install-efi.sh: Fix root= specificationDarren Hart2013-09-241-2/+4
| | | | | | | | | | | | | | | | | | Fixes [YOCTO #5237] The current grub.cfg manipulation depends on an existing root= parameter. If this doesn't exist, the correct root= parameter will not be added. Instead, remove any existing root= parameters and add the correct one explicitly. (From OE-Core rev: 14b124122c1b7d10b9a3a96fe4617c6fc1c661c5) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: mihaix.lindner@linux.intel.com Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "initrdscripts: look for new systemd-udevd location"Ross Burton2013-09-171-1/+1
| | | | | | | | | | | | systemd-udevd is back in /lib, so revert this change. This reverts commit 27bb516be433ed9dcde6fe4a17d2429951a010a0. (From OE-Core rev: 3f6324a86cb8c1c253af06a1033ac71fa61c58d3) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-live.sh: distinguish between a read-only image and a read-write imageChen Qi2013-09-111-11/+18
| | | | | | | | | | | | | | | | | | | | | | | The iso and hddimg share a common concept of 'live image', and they use the same initramfs and thus the same init. However, that init script in initramfs made a wrong assumption that the rootfs image was read-only by itself. This is apparently not true for hddimg. To make things work as expected, this init script should at least distinguish between a read-only rootfs image and a read-write one. This patch adds this ability to the init script. After this change, the init script would be able to check whether the rootfs image is read-only or not. If the rootfs image is read-write, the image will be mounted and then booted directly. No union mounts will be attempted in this case. [YOCTO #5164] (From OE-Core rev: 29f869b68a9017502f75915784a924f0fe9d4be1) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install.sh: fix to handle the boot partition correctlyChen Qi2013-08-201-33/+29
| | | | | | | | | | | | | | | | | | | | Previously, the boot partition was created for the target hard drive but there was no corresponding entry for it in /etc/fstab. Besides, even if the boot partition was mounted, it would just result in odd directory hierarchy like /boot/boot/grub. However, what we really need is /boot/grub. This patch fixes this problem. Besides, for future maintance work, this patch also renames some of the intermediate directories. It uses more descriptive names like /tgt_root and /src_root. The name of /ssd is dropped. [YOCTO #5018] (From OE-Core rev: aa67b1333b4774e1845f562085f7048df65a644f) 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>
* init-install.sh: improve hard drive searching processChen Qi2013-08-201-43/+55
| | | | | | | | | | | | | | | | | | | | Previously, only unremovable hard drives are searched and are treated as candidates of target disks to intall into. However, it's possible that we're going to install the live image into a removable media such as an USB. This patch enables this possibility. In addition, this patch presents more information about the hard drives so that user may have more knowledge about which hard drive they are going to install their image into. [YOCTO #5018] (From OE-Core rev: 358f0584d779825307eec08c023b5ff14e72cf9e) 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>
* init-live.sh: make $ROOT_MOUNT/media writable when necessaryChen Qi2013-08-161-0/+2
| | | | | | | | | | | | | | | | | | | If the live image is mounted as read-only, we cannot make necessary directories under $ROOT_MOUNT/media, so trying to move the mount points lead to errors. So in case that no unification filesystem mechanism is available in kernel and the rootfs is mounted as read-only, we mount tmpfs on $ROOT_MOUNT/media so that it's possible to make necessary directories under it. [YOCTO #4881] [YOCTO #4103] (From OE-Core rev: aeeb3418ff08dfd29edc0ce8a41cb6887d4e11fe) 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>
* Revert "initrdscripts: mount / as read-only when live-booting"Ross Burton2013-07-291-3/+3
| | | | | | | | | | | | | My test environment must have been messed up as now hddimgs are failing to re-mount / as read-write. This reverts commit 7af92f8fa3a12fc8fcb22dbd12f87d89768b2d39. (From OE-Core rev: 4174dcbd3328e6badb269d09b024f2b83408bd8c) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: mount / as read-only when live-bootingRoss Burton2013-07-241-3/+3
| | | | | | | | | | | So that the root filesystem can be fsck'd properly, mount it read only. Either initscripts or systemd will re-mount as read-write in early boot. (From OE-Core rev: 1ace2bdd8d6d950038fb6d9b83f6eceba276f588) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-live.sh: try to make a union mount when possibleChen Qi2013-06-281-7/+56
| | | | | | | | | | | | | | | | | | This patch tries to make a union mount in live image. For example, if aufs is enabled with the aufs-enable.scc configuration fragment, the init-live.sh script will use aufs to make a union mount. Although overlayfs is not supported by Yocto kernel yet, this patch still takes it into consideration with the expect that the related code should at least serve as a placeholder. [YOCTO #1487] [YOCTO #4761] (From OE-Core rev: 3cd6fedd815688b2f3fd97a56feb5f8696ebeace) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: unionfs cleanupChen Qi2013-06-281-19/+3
| | | | | | | | | | | | | | | The unionfs has been disabled for more than a year and it's not going to be used any more. This patch cleans up the unionfs related code. [YOCTO #4761] [YOCTO #1487] (From OE-Core rev: ba5e437bc7335468a70ea293496f78e1a9d66287) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-live.sh: fix automount failed occasionallyHongxu Jia2013-06-281-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reboot system repeatedly, occasionally found usb automount failed, a low probability but it happens. $ df Filesystem 1K-blocks Used Available Use% Mounted on none 1024972 4 1024968 0% /dev /dev/sda3 7689384 3540940 3757840 49% /media/sda3 /dev/sda2 146127424 1238432 137466120 1% /media/sda2 /dev/sda1 17845 14570 2354 86% /media/sda1 /dev/sdb 293400 288560 4840 98% /media/sdb /dev/sdc4 457632 32 457600 0% /media/sdc4 /dev/sdc1 475018 2321 447749 1% /media/sdc1 /dev/sdd 1382298 1382298 0 100% /media/sdd /dev/sdc2 475694 2320 448374 1% /media/sdc2 /dev/loop0 270649 181249 75644 71% / df: /media/sdc3: No such file or directory tmpfs 1029352 0 1029352 0% /dev/shm tmpfs 1029352 2816 1026536 0% /run tmpfs 1029352 0 1029352 0% /sys/fs/cgroup tmpfs 1029352 4 1029348 0% /tmp tmpfs 1029352 0 1029352 0% /media/ram tmpfs 1029352 116 1029236 0% /var/volatile When boot media has been found, udev will be killed. If udev is busy to mount other medias at the killing time (especially medias is many), the above issue will occur occasionally. Invoke `udevadm settle' before killing udev will resolve this issue, it watches the udev event queue, and exits if all current events are handled. Use variable `_UDEV_DAEMON' to replace hardcoded `udevd' to keep consistent with previous. [YOCTO #4745] (From OE-Core rev: 2f209a7045a93e7e42f90418a42f464827b4a7f8) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-live.sh: fix media automount failed after booting from usb-driveHongxu Jia2013-06-111-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1, This issue happens to BSP only. After a BSP board is booted with Yocto linux from USB drive, "cat /proc/mounts" shows: ... /dev/sda3 /media/sda3 ext3 rw,relatime,errors=continue,user_xattr,acl,barrier=1,data=ordered 0 0 /dev/sda1 /media/sda1 ext3 rw,relatime,errors=continue,barrier=1,data=ordered 0 0 /dev/sda2 /media/sda2 ext3 rw,relatime,errors=continue,user_xattr,acl,barrier=1,data=ordered 0 0 ... but actually the directory /media/sda1 doesn't exist at all, "df" shows: ... df: /media/sda3: No such file or directory df: /media/sda1: No such file or directory df: /media/sda2: No such file or directory ... 2, This is because the mount data comes from proc setup during early boot before the change root, which then uses a different root filesystem, the media is not in the new root filesystem. 3, During early boot before switch_root, use `mount --move' to move all medias to the new root filesystem could also fix this issue. [YOCTO #2064] [YOCTO #3705] (From OE-Core rev: 79bd773cc5e8b8e873cabeb2b9a91f460501dad7) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "initramfs-live-install*: fix the "install" boot option"Saul Wold2013-05-172-0/+2
| | | | | | | | | | | | | | | This was not the correct fix for this issues, it turns out that base-files package was getting installed un-intentionally when rpm-postinsts was split out. The base-files recipe lays down the link that caused the cat failure. [YOCTO #4504] This reverts commit 45e460d0846f0f660128dc06064b597ce40282b3. (From OE-Core rev: 7d50133dd5c955d97193cc26458ebbf84dbfe0a4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initramfs-live-install*: fix the "install" boot optionNitin A Kamble2013-04-162-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The install boot option was giving the following error when one tried to install the live image on a permanent storage of a BSP. cat: write error Invalid argument Installation image failed sh: can't access tty: job control turned off Further digging into the issue, found out that the install script was trying to do this: cat /proc/mounts > /etc/mtab And in the base-files recipe the /etc/mtab is made soft link to /proc/mounts. So the cat command was failing to write on /etc/mtab. As the contents of the /proc/mounts is already reflected in the /etc/mtab file due to the symlink-ing, there is no need for this step to recreate /etc/mtab in the install script. So just removing this unnecessary step, which solves the install issue of the live images. Fixes this bug: [YOCTO #4229] (From OE-Core rev: f8663eac872882e94d956b1b604304e92b865766) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: look for new systemd-udevd locationRoss Burton2013-04-131-1/+1
| | | | | | | | | As per the previous commit, systemd-udevd is now in /sbin/systemd/. (From OE-Core rev: ff0fd25206c3c75921d51cb80bcb6c94ca47b405) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: Add udev sbin based libexec pathRichard Purdie2013-04-101-1/+1
| | | | | | | | | | | For better or worse we need to use base_sbindir for udev's libexec dir. This updates the initrdscripts to also cover the new location. I'd prevously assumed that it was already covered but its not. udev internal binaries shouldn't be in PATH so we have to do this to deal with the issue. (From OE-Core rev: 7e17cba75c20ad820d30128d9b4b0132e7b924a8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-install.sh: remove unnecessary udev rules file to avoid error messagesChen Qi2013-03-291-0/+1
| | | | | | | | | | | | | | | | | /etc/udev/scripts/mount.sh is removed by init-install.sh, but the udev rules file which specifies the invocation of this script is not removed, thus causing the error message '/etc/udev/scripts/mount.sh: No such file or directory' shown at a live install. The /etc/udev/rules/automount.rules no longer works once the mount.sh script is removed. So we remove it to avoid the error message. [YOCTO #3924] (From OE-Core rev: 6b6db7b4fb7aa17b8e29076decc830149b9d35bc) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* install: Look for grub2 files on the initramfs, not rootfsDarren Hart2013-02-221-12/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes [YOCTO #3870] atom-pc - cannot boot image on netbook after install The problem here is that grub2 is installed but a grub 1 menu.lst is created at install time. At boot, grub2 doesn't find a grub.cfg file and drops to the grub shell. This happens because the installer is looking for 40_custom (a grub2 file) on the rootfs, but grub2 isn't installed on the rootfs. It exists in the initramfs. Patching the installer to look on the initramfs resolves the problem. Note that the problem may have occurred if grub2 used to be installed on the rootfs but was later removed. In any case, the installer is HORRIBLE and really needs to be completely redesigned as part of the deployment effort. For now, this should get the live image installer limping along again. Tested on a Toshiba NB-305. (From OE-Core rev: 8756a19bd24045d41ad20abb581e7872d0fc9ee6) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: alexandru.c.georgescu@intel.com Cc: sgw@linux.intel.com Cc: ross.burton@intel.com Cc: richard.purdie@intel.com Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-live.sh: move /media/xxx over to the real root filesystemChen Qi2013-01-251-0/+2
| | | | | | | | | | | | | | | | | | | | | Previously, the /media/xxx which contains the root image was not moved to be under the real root filesystem. Because of this, the output of the 'mount' command is somewhat confusing, that is, it has some mount point that is not even in the filesystem. Besides, on some machine, it caused the recovery procedure when we booted it next time. This patches fixes this issue by moving the /media/xxx over to be under the real root filesystem. [YOCTO #2064] [YOCTO #3705] (From OE-Core rev: 261d21d36298bb7822ee7370c30441f42ef2b093) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initramfs-live-boot: handle multiple udev locationsRoss Burton2013-01-181-1/+19
| | | | | | | | | | | udevd isn't on $PATH and is in different places depending on what version of udev is being used. Copy the code from initramfs-framework to search for the right udevd at boot time instead of hard-coding a location. (From OE-Core rev: a5de76317112fc065a78a745c2f23775dca15d75) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* init-live.sh: avoid duplicate mount points for the same filesystemChen Qi2013-01-071-4/+5
| | | | | | | | | | | | | | | | | A live system had duplicate mount points for the same filesystem in the output of 'mount' command. That was because we didn't handle the temporary mounts properly before switch_root. This patch fixes this problem by moving the mount points of some filesystems to the corresponding directories in the real root filesystem. [YOCTO #3155] (From OE-Core rev: 050a745413f8bb26212b84da391e0f7665f77728) 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>
* init-live: default to initrd shell if image isn't foundAlexandru DAMIAN2012-12-191-1/+21
| | | | | | | | | | | | | | | | | | | Adds "debugshell" command line parameter for live/install images. If the init live fails to find and mount a root-fs image, dumps to a shell after timeout so that the developer can figure what's wrong. Timeout defaults to 30 seconds, but it can be changed as param argument. Prior art in Ubuntu. Also, leaving a system stale isn't good form. (From OE-Core rev: 6f99e530822ac32f32615590e22a9758ac210e84) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initrdscripts: fix udevd in the live boot init scriptsRoss Burton2012-11-121-1/+3
| | | | | | | | | | | | | | | udevd moved location and isn't in $PATH anymore, so use an absolute path to start it. The control socket path moved too, so mkdir the directory it's in. Mounts the new devtmpfs on /dev device tree. (From OE-Core rev: 543606e5dc379497c34196d004a214e847f5db2d) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Alexandru Damian <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Revert "initrd: Spawn an emergency shell when something goes wrong"Ross Burton2012-10-021-11/+0
| | | | | | | | | | | This had nowhere near enough testing... This reverts commit ffb6928f5783e5202d9849c3a185e29be1d41c63. (From OE-Core rev: f162f0ecc96fdfb564aad968e5b8bc670640ea68) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
OpenPOWER on IntegriCloud