| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a cleanup for the po files. xgettext displays the following
messages for some Python files:
warning: 'msgid' format string with unnamed arguments cannot be properly localized:
The translator cannot reorder the arguments.
Please consider using a format string with named arguments,
and a mapping instead of a tuple for the arguments.
This patch modifies the reported format strings to use named parameters
per the warning message. We were already using these style format
strings in users.py and possibly other files. Basically when there is
more than one parameter in the format string, we should use a hash table
with named parameters.
|
|
|
|
| |
Not the actual bug fix, just cleaning up the dialog box messages.
|
|
|
|
|
| |
This should reduce the dogpiling in bugzilla for overly-generic
errors like "lvcreate failed for VolGroup/lv_root".
|
|
|
|
|
|
| |
It is not implemented for now. Going to wait for the new doPartitioning
code.
* storage/partitioning.py (hasFreeDiskSpace): New function.
|
|
|
|
|
|
|
|
| |
If we get a failure to commit a partitioning change to disk, the first
thing to do is try shutting down all devices: In the case of lvm-on-md
we implicitly activate the md device in order to wipe an lv that we're
about to destroy. Subsequent attempts to commit to a disk containing any
of the md device's members will fail because the md is still active.
|
| |
|
| |
|
|
|
|
|
|
| |
The path attribute may have changed due to parted renumbering things,
so we need to grab the partition by its original path instead. Otherwise
we may be grabbing the wrong partition.
|
| |
|
|
|
|
|
|
| |
Since the parted ebusy errors due to unnecessary udev event generation on the
partition nodes bug has been nailed, we no longer need the retry loop around
committing to disk.
|
|
|
|
|
|
|
|
|
|
| |
Touch /dev/.in_sysinit, as that stops /lib/udev/rules.d/65-md-incremental.rules
from messing with mdraid sets.
This patch adds the touching twice, once to our own init, for when running
as standalone installer, and once in python for when running from a livecd,
to stop the udev trigger "block" we do will cause
/lib/udev/rules.d/65-md-incremental.rules to trigger in the livecd case.
|
| |
|
|
|
|
|
|
|
|
|
| |
When re-using existing partitions, without changing them other then formatting
them, the disk for /boot may not be yet setup when writing the bootable flag
to its partition table. This triggers an error like:
Error opening /dev/mapper/jmicron_GRAID : No such file or directory
When the disk in question is a dmraid set.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
When we've got nothing to put in there don't write mdadm.conf, this means
rc.sysinit won't call "mdadm -As --run" with an empty mdadm, this is
important because:
1) It will speed up booting
2) With an empty mdadm.conf mdamd will scan all disks and try to bring
up any raidsets it can find. Including sets which we may not want to
be brought up, such as ddf metadata sets (should be handled by dmraid)
and imsm metadata sets even when nodmraid or noiswmd is specified.
|
|
|
|
|
|
|
|
| |
This not only looks nicer, but this will also put
containers (which get md0, md1, etc.) before their members
(which get md127, md126, etc.). and lame as it is mdadm will not
assemble the whole stack in one go unless listed in the proper order
mdadm.conf
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Sometimes mdadm --stop reports failure, but the array stops
after a while never the less, this happens with container
members, see bug rh523334 (this works around the first scenario
mentioned in the bug, the second scenario will still cause anaconda
to fail).
|
| |
|
|
|
|
|
|
| |
mdraid is really braindead, when a device is stopped
it is no longer usefull in anyway (and we should not
probe it) yet it still sticks around, see bug rh523387
|
|
|
|
|
| |
udev_get_block_device() was returning a fake "empty" dict on failure,
but all its callers expect it to return None on failure.
|
|
|
|
|
|
| |
Passing --update=super-minor to mdadm for containers and sets there in
leads to corrupt superblocks, see: bug rh523320, work around this for now
by not passing --update=super-minor in these cases.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ok, so the purpose of this patch is too write mdadm.conf lines for
mdraid container formats (imsm), but what it does is it cleans up
handling of mdraid container formats in general, with the
writing of mdadm.conf writing as a bonus effect really.
We were adding mdraid container members (raidsets inside the container)
to the device tree as DiskDevices. Which works, but is not completely
correct. This patch introduce a PartitionableMDRaidArrayDevice and
uses that for mdraid container members instead. This means we now also
correctly tear them down / set them up when asked. In the future (mostly
needs UI work to export the functionality) PartitionableMDRaidArrayDevice
can be used to create partitionable normal (native metadata) mdraid sets too.
|
|
|
|
|
| |
Install dracut-network when using network storage, so that we will be
capable of booting of network storage.
|
| |
|
| |
|
|
|
|
|
|
| |
Now that we've moved to dracut for the initrd in rawhide, which supports
using mdraid for isw metadata raid sets (and uses this by default), make
using mdraid for isw metadata raid sets the default.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
This helps us to avoid parted's renumbering nonsense.
This patch also streamlines clearPartitions so that it removes the
partitions inside the loop instead of building a list and iterating over
it separately to remove the partitions.
|
|
|
|
|
|
|
|
| |
- Move format property up to DeviceAction so it can be inherited
- Use the format property in DeviceAction.__str__
- Include device id in DeviceAction.__str__
- Include migration target name in ActionMigrateFormat.__str__
- Reword from, eg: "sda2 (partition)" to "partition sda2 (id 4)"
|
| |
|
| |
|
|
|
|
|
| |
Remove the no longer used initcb and initlabel arguments from
DiskDevice and friends __init__.
|
|
|
|
|
|
|
| |
We were waiting for DMRaidArrayDevice's to be scanned before giving them
a DiskLabel format, however this causes backtraces if a partition on the
raid array gets scanned before the array itself:
AttributeError: 'DeviceFormat' object has no attribute 'partedDisk'
|
|
|
|
| |
If we get UnknownSwapError, alert the user and offer some options.
|
|
|
|
|
|
|
| |
Move the test for anaconda.intf to the swapErrorDialog() function. If
we don't have one, exit (consistent with existing behavior). Simplify
the exception handlers that call swapErrorDialog() and remove the tests
for anaconda.intf.
|
|
|
|
|
|
|
| |
Before the storage rewrite, we let users force a reformat of a detected
swap volume currently being used as a software suspend volume, skip it
entirely, or exit the installer. Bring that functionality back rather
than forcing an exit.
|
|
|
|
|
|
|
| |
Safety net for detected swap volumes. We trap v0 swap space and swap
partitions currently in use for software suspend. After all that verify
that the detected volume is v1 swap space. If not, raise
UnknownSwapError.
|
|
|
|
|
|
|
|
|
| |
Like before, offer users the ability to skip, format, or exit. Skip
removes the device from the devicetree. Format will force a reformat.
Exit is pretty self-explanatory.
OldSwapError is raised when we find a swap partition with the SWAP-SPACE
signature.
|
|
|
|
|
| |
force=True will tear down the device, unmount if necessary, and then
reformat it.
|
|
|
|
|
| |
mdraid device node minors aren't really stable, esp. not when using
mdraid for (Intel) BIOS RAID.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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().
|
|
|
|
|
|
| |
Still related to #519665, but account for anaconda.rootPath containing
the chroot value passed to the mount() method on the format. But for
install types as indicated in the bug, rootPath will be the actual path.
|
|
|
|
|
|
| |
If you override rootpath on the anaconda command line, the rootDevice
property will return None because it's looking for a device with mount
point "/" rather than the path you passed to --rootpath.
|