| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for storing an X.509 certificate used to encrypt the escrow
data, and a "create backup passphrase" flag, to storage.formats.LUKS,
and support for storing the same options of "autopart" globally to
storage.Storage.
While parsing kickstart directives, download the X.509 certificates
specified in thekickstart file (if any), enabling network access if
necessary, then store the data in the above-described storage objects.
While autopartitioning, copy the "autopart" escrow options into each
created LUKS volume.
Finally, as a part of doPostInstall, find all LUKS volumes with escrow
configured, create the escrow files and store them in /mnt/sysimage/root.
Changes since the previous version:
- Drop unused .encryptedDevice assignments
- Move writeEscrowPackets inside doPostInstall
- Fix bugs introduced while moving code to storage.formats.LUKS
Further changes:
- Don't pass escrow args to lvmpv format constructor.
- Move backup passphrase generation into storage.devicelibs.crypto.
- Use newer, clearer except syntax in storage.writeEscrowPackets.
|
|
|
|
|
|
| |
A related pykickstart patch (#508963) adds support for key-escrow
related options. Use the "F12" versions of kickstart commands to use
these options.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes handling of e.g. the following kickstart commands:
part / --size=1024 --grow --encrypted
raid /mnt/raid --level 0 --device=md0 raid.0 raid.1 --encrypted
logvol /mnt/lv --vgname=myvg --name=mylv --size=32 --grow --encrypted
Anaconda was crashing without this patch, so it is definitely an
improvement. More changes might be necessary, I didn't test all cases
(e.g. --onpart/--useexisting).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add the following methods and properties to class Storage which map
through to FSSet methods, modify existing calls to use the method on
class Storage:
turnOnSwap()
mountFilesystems()
umountFilesystems()
parseFSTab()
mkDevRoot()
createSwapFile()
fsFreeSpace()
mtab
mountpoints
migratableDevices
rootDevice
Callers no longer need to pass the Anaconda object to the FSSet methods
directly. The method on Storage takes care of that.
The mtab() method on FSSet is exposed as a property on Storage. The
same is true for fsFreeSpace().
|
|
|
|
|
|
|
|
|
| |
There's now just two important settings in the Language module: instLang,
which is the language used while anaconda is running; and systemLang, which
is the language the installed system itself will use. These two can be
different mainly due to anaconda's text mode interface. The rest of anaconda
should only set and get these two. All the other support functions still
exist for grabbing timezone, font, etc.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Handle invalid timezones in ks the same way as in RHEL 5.4:
in case that the timezone is invalid, the system time of install environment
will be set correctly if it is in tzdata package, and even if it is not there
the ks install will proceed. This will prevent possible breaking of installs
with kickstarts working in older versions of RHEL.
The question may be if we can/want to broaden valid timezones to all those
present in tzdata package officialy (document it). Complete tzdata package
is part of stage2 in Fedora and will be in RHEL 5.4.
|
|
|
|
| |
Just auditing the world for clarity, don't mind me.
|
|
|
|
|
| |
We have lots of strings that we display to users which are unclear or
contain poor usage and grammar. That's bad.
|
| |
|
|
|
|
| |
Add an command to activate FCoE attached SAN's from kickstart
|
|
|
|
|
| |
This is executed before users are created, so new users may be added to
the new groups immediately.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#503310) (#503681)
Default clearPartType to None so that all devices are discovered during storage
initialization step, and UI parttype can be set to its default "Replace existing
linux system". Also set clearPartType appropriately when going back from partition dialog
so that all devices are discovered during storage reset.
There is one case that can't be resolved this way: clearpart --all or --linux
is set in ks and "Create custom layout" is selected in parttype UI step. Because of ks
setting, storage initialization doesn't discover devices (RAID, LVM) on
partitions that are to be cleared and therefore they are not present in custom
partition dialog. This can be workarounded by going back and than again to
custom partitioning dialog. I think we should grey-out type of partitioning
combo set to value from ks clearpart command.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This prevents clearPartType from getting set to None, which causes problems
in shouldClear.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
This is useful if there's no --fstype= parameter specified since otherwise
the default is (for now) ext4. This does not help if the user has a part
line for / and none for /boot, since doing a check for that would require
knowing what part lines come later.
|
|
|
|
|
|
| |
I didn't want to add another 0/'0'/'RAID0' tweaking so I made
mdraid.raid_levels and mdraid deviceclass level attribute to contain
constants for levels defined in mdraid.py.
|
|
|
|
|
|
|
| |
Combinations of --useexisting and --noformat options of ks commands logvol and
volgroup should work (I did basic tests). For volume group, --noformat and
--useexisting do the same thing as volume group is not formattable (--noformat
is redundant and should be removed from docs)
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* We get RAID1 from ks parser, mdadm accepts only lowercase level
specifiers of this form.
* We get int device number (e.g. 0) from ks option --device (e.g. md0).
Though this might require rather changes in pykickstart, especially
when mdadm 3.0 allows creating of arbitrary device names in /dev/md.
* mdadm --create --level option is changed to comply strictly to
documentation (e.g. "--level=raid0", though "--level raid0" works too)
|
|
|
|
|
|
|
| |
Store mapping from pv names used in ks (e.g. pv.1, raid.1) to existing
partitions in ks handler and use it when processing ks commands referring
to the names.
Also fix some attribute references.
|
| |
|
|
|
|
|
|
|
| |
First, always apply the default partitioning scheme in kickstart installs.
Then, always run clearPartitions since it knows best. Finally, if any of
the various kickstart partitioning commands are given, unset doAutoPart so
the user-provided partitioning scheme takes effect.
|
|
|
|
| |
Also, rename the kickstart processing functions to make more sense.
|
|
|
|
|
|
|
|
|
| |
This gets rid of the old several early passes for VNC and rescue, instead
replacing them with a single one that also looks for ignoredisks. We need
to look for ignoredisks early on so that we have that list ready before
enabling storage. Otherwise, ignoredisks won't really do what it's supposed
to. The problem here is what to do about if the ignoredisks directive is
located in an include generated by a %pre script.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
These no longer belong in isys.py as putting them in the classes is much
more correct. I also put a mediaPresent method on Device in general.
This will come in handy when we start dealing with USB CF readers and
similar devices that can be present without having media.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The new storage code schedules actions, so we don't need to batch all the
requests up to be added later.
|
|
|
|
|
| |
Otherwise, our scheduling requests will get purged by the action loop
detector.
|
|
|
|
| |
Related commit: 4503335c6f5d33bcb236da1757123dde73a842bc.
|
|
|
|
|
|
| |
This is needed to perform sanity checks on the values given to things like
clearpart --drives, as well as to add requests later on. Waiting until we're
into the dispatcher steps is too late.
|