| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | | |
| | | |
| | | |
| | | |
| | | | |
read flags from all the conf files in /run/initramfs/etc/cmdline.d/
And add support for filename globs to the read() method
|
| | | |
| | | |
| | | |
| | | |
| | | | |
removes dmidecode binary requirement from specfile and
changes isMactel to read the information directly.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It ends up that setting the pmbr on GPT labeled disks only fixes
some of the systems that have trouble booting from GPT. We still need
to blacklist Lenovo systems from using GPT on BIOS systems.
This also changes from using dmidecode to using /sys/class/dmi/ files.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Before noloader this was handled by loader. It detects a specific virtio
path (org.fedoraproject.anaconda.log.0) and restarts rsyslogd to pass
logs to the host via virtio. If the path doesn't exist this has no
effect.
This also switches to using systemctl to restart rsyslogd since
HUP no longer works as of v5.
|
| | | |
| | | |
| | | |
| | | | |
Signed-off-by: Brian C. Lane <bcl@redhat.com>
|
| | |\|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* f17-branch:
dracut/parse-kickstart: handle network --device=link (or none)
dracut: fix kssendmac/inst.ks.sendmac
Set ONBOOT=yes for at least one wired netdev by default (#806466)
detect live backing device (#809342)
Wait for device activation / "online" hook if rd.neednet is set
Fix kickstart failure if ks is on the same disk as stage2
fix 'mount: Too many levels of symbolic links' error message
support {stage2,repo}=.../path/to/file.img (#808499)
dracut when_diskdev_appears: only run cmd once per device
dracut: don't do kickstart twice, don't use root.info
Don't use the bootloader config path to find the splash image (#807510)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If you have a kickstart where your first network line has no device (or
--device=link), we won't have a valid net.device ("" or "link",
respectively.) Still a valid kickstart though, so we need to generate
correct dracut args for that case.
Also we need to set rd.neednet so the device always goes online in
dracut (matching loader's behavior).
This means we don't need to write ifcfg if net.device is empty:
1) empty 'net.device' is only valid for the first device,
2) first device always comes online,
3) online devices get ifcfg written by dracut.
(It also means we don't need to touch /tmp/net.ifaces, since that happens
in step 3.)
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Can't get MAC addresses until after the network modules have loaded, so
schedule set_ks_sendmac to happen at the start of the mainloop.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
loader used to set ONBOOT=yes for any device it activated, so having an
active netdev implied that at least one of them had ONBOOT=yes.
This logic doesn't necessarily work anymore, so let's just check to see
if any of them have ONBOOT=yes directly.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
In F17 we now have /run/initramfs/live which, when mounted, is the
install media being used. This uses that to add the disk to the list
of protected devices.
Signed-off-by: Brian C. Lane <bcl@redhat.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If we're expecting network devices to come up, we need to tell dracut
to wait for devices to activate before proceeding to stage 2, otherwise
we won't have ifcfg files, and the NM handover will fail, and anaconda
considers it a fatal error if a network device isn't active when the
kickstart says it should be.
(It would be nice if anaconda could set up the network itself so we
didn't have to handle this all in initramfs..)
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Not too hard really - just check to see if the disk is already mounted,
and don't bother mounting it again if it is.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
preupgrade uses stage2=hd:XXX:/path/upgrade.img, so we need to handle
that.
stage2=XXX overrides repo=XXX, if both are present.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Use initqueue --unique to ensure the command can only be enqueued once.
Also, make sure anaconda-diskroot gets the correct device name.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Empty "$kickstart" in run_kickstart, so we don't end up looking for the
kickstart again - and don't run fetch-kickstart-disk if it already ran.
Also, newer dracut doesn't bother with root.info so neither should we.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
On EFI the bootloader config file is in /boot/efi/EFI/redhat/grub.conf,
but the splash image is still what the fedora-logos package put in
/boot/grub/splash.xpm.gz , so use that path instead.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
In F17 we now have /run/initramfs/live which, when mounted, is the
install media being used. This uses that to add the disk to the list
of protected devices.
Signed-off-by: Brian C. Lane <bcl@redhat.com>
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
On EFI the bootloader config file is in /boot/efi/EFI/redhat/grub.conf,
but the splash image is still what the fedora-logos package put in
/boot/grub/splash.xpm.gz , so use that path instead.
|
| | |\|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This brings in the 'noloader' changes from f17-branch.
The changelogs have been dropped from the specfile, but that
was somewhat intentional.
Conflicts:
anaconda
anaconda.spec.in
configure.ac
data/linuxrc.s390
data/systemd/Makefile.am
data/systemd/anaconda.service
data/systemd/anaconda.target
data/systemd/anaconda@.service
data/systemd/loader.service
dracut/Makefile.am
dracut/anaconda-lib.sh
dracut/anaconda-netroot.sh
dracut/kickstart-genrules.sh
dracut/module-setup.sh
dracut/parse-anaconda-kickstart.sh
dracut/parse-anaconda-options.sh
dracut/parse-anaconda-repo.sh
dracut/parse-kickstart
dracut/repo-genrules.sh
po/anaconda.pot
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
The liveinst script can now be updated by an updates.img
|
| | | |
| | | |
| | | |
| | | | |
For F17 updates images are now relative to /
|
| | | |
| | | |
| | | |
| | | | |
Missed some needed spaces in the lists of modules.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
With MALLOC_PERTURB_ set, we get:
[anaconda root@testraid ~]# export MALLOC_PERTURB_=204
[anaconda root@testraid ~]# grub2-install --no-floppy /dev/mapper/nvidia_dejcgici
/sbin/grub2-bios-setup: error: disk `hostdisk//dev/mapper/�����������������������������������������������������������������������������������������' not found.
This is obviously bad, so we're going to work around it by not setting
that for now.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
ks=file:... was parsing the kickstart *after* the 'cmdline' hook
finished, so the new arguments weren't being used.
Move the parsing into the 'cmdline' hook so the new arguments can get
used by the rest of dracut.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
If both "root" and "repo" are given, we should probably use the explicit
root device rather than the one implied by "repo".
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The function is actually called "splitsep", not "strsep".
Strong work, Will. Didn't you used to test things?
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Anaconda expects a minimum set of modules to be loaded, things
like raid1, etc.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Commit 0544eff was supposed to make anaconda try to write net.ifaces
whenever an interface came up, but because of a quoting error it
*emptied* /tmp/net.ifaces instead. It also didn't handle adding things
to net.ifaces correctly. This patch fixes both problems.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This fixes two bugs. The first is that the PReP partition is not created
during a text mode install. The second is that the PReP partition needs
to be zeroed out before grub is run. Grub verifies that no data exists
on the partition before installation.
(cherry picked from commit 00fa7bcc9e09a96d51039d112c3feadee9ade75a)
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
/mnt/install/source is used by anaconda to mount install media,
if it finds the boot iso mounted there it will try to unmount it,
which will fail since we are running from it. Leave it at install/repo
so that this doesn't happen.
This reverts commit 37144b9e86e801074fa4ae4656da458fe83f6e07.
|
| | | |
| | | |
| | | |
| | | | |
(cherry picked from commit a54230199fecffa90add5854893816eab7722c5f)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
anaconda didn't know how to deal with LANG=C. So if we have LANG=C, just
treat it like we had no LANG set: reset to DEFAULT_LANG.
Just to be sure, use TTYReset=yes in anaconda.service, which will make
systemd reset the terminal to sane (and unicode-ready) settings.
Finally, emit the magic control sequence to set UTF-8 output, which fixes
the line-drawing characters in text-mode virtual terminals.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
loader used to set '--text' based on the boot args. But we can parse our
own boot args now, thank you very much.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If you boot with 'quiet', things are quiet. Almost.. *too* quiet.
Add a startup message. If "$product" or "$version" can't be found the
message will just be "Loading $arch installer..." which is pretty OK.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If we're given the path to an iso, we need to split it up so we mount
the directory the iso is *in*, and then mount the iso.
Also, fix a harmless typo bug in find_runtime and clean up/clarify
anaconda_live_root_dir a bit.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
copy systemd .service/.target files into the appropriate directory.
also, some cleanups for makeupdates. whee!
|
| | | |
| | | |
| | | |
| | | | |
We're not quite ready for the switch yet, so suppress these messages.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Loader used to create a default ifcfg-* file for each unused network
interface, containing DEVICE, HWADDR, UUID, BOOTPROTO=dhcp, etc.
Network.update() populated self.netdevices by reading those files,
*skipping any interface that lacked that file*, which caused the vnc
traceback in bug #804504.
And without BOOTPROTO=dhcp, "ifup $dev" didn't work post-install, which
caused #804716.
(Personally I think "ifup" should fall back to the same defaults as
NetworkManager rather than making us write the defaults to a file, but
we'll save that for later.)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It doesn't matter why we brought up the interface - we want to hand the
info over to NM regardless. So save the netinfo for all onlined
interfaces.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Add a systemd-generator script that puts anaconda on the correct console
tty, then puts shells on tty2 and the first virtualization console
(unless we're using it for anaconda).
Adding "TTYPath" to the systemd services means systemd takes care of
setting up all the terminal stuff - picking the right TERM value,
setting the keyboard mode to K_UNICODE, and all that esoteric weirdness.
Also, move anaconda's dependencies into anaconda.target, and make
anaconda start *after* anaconda.target, just so we can be sure that e.g.
NetworkManager is active before anaconda starts.
(as a bonus, it also shuts off plymouth correctly, just in case we ever
want to have a anaconda-specific bootsplash)
|
| | | |
| | | |
| | | |
| | | | |
(cherry picked from commit cafb055790f6c63642fd64b20900f3fbb5318fad)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We handle "nfs" and "nfsiso" exactly the same, but "nfsiso" confuses
mount_nfs().
Make sure we pass "nfs" along to mount_nfs().
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If the user passes 'updates=XXX' or 'inst.updates=XXX' we should accept
that like we do 'live.updates=XXX'. At least for now.
Also remove a comment about updates=XXX - it turns out that setting
updateSrc is necessary (the storage module puts it into disallowDrives).
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Anaconda wants to find its files in /tmp/updates, so put them under
tmp/updates in the updates image.
The one exception to this is anaconda itself, which should be in
/usr/sbin.
Also skip dracut/ as we can't sanely update those things (yet).
|