Mailinglist Archive: opensuse-features (165 mails)

< Previous Next >
[openFATE 310491] Add dracut to openSUSE
Feature changed by: Frederic Crozat (fcrozat)
Feature #310491, revision 20
Title: Add dracut to openSUSE

openSUSE-11.4: Rejected by Andreas Jaeger (a_jaeger)
reject date: 2011-08-12 20:08:31
reject reason: not done for 11.4
Priority
Requester: Important

openSUSE Distribution: Evaluation by engineering manager
Priority
Requester: Desirable

Requested by: Luis Medinas (lmedinas)
Partner organization: openSUSE.org

Description:
Dracut is suppose to be a replacement for the old initrd tools like
mkinitrd.
From the project description, dracut is an initramfs infrastructure.
Unlike previous initramfs systems, Dracut aims to have as little as
possible hard-coded into the initramfs.
It contains specific configuration files for init drivers and includes
plymouth support. Dracut advantage seems to be a modern replacement to
generate initrd and it's suppose to be easy to use/manage.
See http://sourceforge.net/apps/trac/dracut/wiki for details.


Discussion:
#1: Jan Engelhardt (jengelh) (2010-09-19 17:02:28)
NEGATIVE. openSUSE has replaced its mkinitrd by a new implementation in
11.2 that is equally flexible, if not even better than dracut. It
certainly is easier to jump into how it's supposed to work. With the
dracut as shipped on F-13 I can't really say the same.
If you ever ran `mkinitrd -h` on SUSE... well just try finding the
equivalents in dracut. You don't.

#6: Andreas Jaeger (a_jaeger) (2010-11-03 13:21:48) (reply to #1)
From the discussions at the openSUSE conference, I see interest in
doing this. Let's talk together and decide what's best. IMO working on
a common solution has its benefits - and if there are usability
problems, we should be able to improve dracut.

#7: Luis Medinas (lmedinas) (2010-11-03 14:47:43) (reply to #6)
I worked a few weeks ago on adding *SUSE support on dracut but looks
like Harold finished the job for me. I guess having both on Factory
doesn't hurt and on the release cycle we should decide what fits best
for the job.
Now i think we should clean Harold spec and SR to Factory.

#2: Nelson Marques (ketheriel) (2010-09-27 01:50:15)
If Plymouth will move in, most likely dracut would help since it
supports plymouth and that can do a lot on soften plymouth introduction
to many users.
just a random thought...

#3: Jan Engelhardt (jengelh) (2010-10-03 02:10:18) (reply to #2)
It's not like smkinitrd would not be able to support plymouth.

#4: Rémy Marquis (spyhawk) (2010-11-03 13:10:07)
A similar entry has been opened
here:  https://features.opensuse.org/310784#
(https://features.opensuse.org/310784#)

#5: Andreas Jaeger (a_jaeger) (2010-11-03 13:16:55) (reply to #4)
I did not find this entry, so let me mark 310784 as duplicate now.

#8: Hannes Reinecke (hreinecke) (2010-11-05 08:27:29)
Yes, I do agree, mkinitrd might be easier to use.
And the paragraph about plymouth is just pointless, as I'm not aware
we're using plymouth anywhere in the distro.
However, I (as one of the main authors of mkinitrd) am in favour of
this feature. The main problem with mkinitrd is that we (as in the
openSUSE community) failed to get any public traction here. The number
of external commits to mkinitrd are zero. Whereas dracut has an active
mailinglist and numerous contributors. It might be inferior in some
places, but that doesn't mean we cannot improve it. And the other big
advantage here is that we will be picking up any new features
automatically, without us having to re-implement it in mkinitrd.

#9: Robert Xu (bravoall1552) (2011-03-19 00:36:55)
Since openSUSE 11.4 is already released, shouldn't we aim for openSUSE
11.5 now?

#10: Per Jessen (pjessen) (2011-03-19 18:31:34)
If the main benefit is what Hannes describes, and assuming that dracut
is not or will not be mkinitrd plug-compatible, it seems like
significant effort for little gain. (I'm biased, I like mkintrd).

#11: Jose Ricardo De Leon Solis (derhundchen) (2011-08-12 07:57:24)
I'm trying to bring this feature back as we are moving to systemd.
Apparently there are some neat things systemd does that require dracut.
While it might be late for 12.1, I think we should definitely consider
it for 12.2

#13: Michal Marek (michal-m) (2011-08-13 14:16:14)
AFAIK, Frederic is interested in adding Dracut. I never had time to do
this.

+ #14: Frederic Crozat (fcrozat) (2011-12-15 14:27:20)
+ mkinitrd features (ie what each module do) :
+ * acpi.sh : provides ACPI DSDT / load thermal processor fan on x86/x86-
+ 64/ia64
+ * biosdevname.sh : copy biosdevname binary / udev rules to initrd
+ * blockpartition.sh: list partitions
+ * block.sh: resolve kernel modules needed for (SCSI) devices
+ (potentially don't include all libata drivers), including PATA, cciss,
+ io2, xen, DAC960, cpqarray, vxdmp, mmc, fio. Can potentially create
+ "monster" initrd)
+ * blogd.sh : start blogd
+ * boot.sh: load selinux policies, mount /proc, /usr, move /dev, /run
+ * busybox.sh: allow to use busybox in initrd
+ * cifs.sh: allow to boot with root on cifs
+ * clock.sh: copy zoneinfo and hwclock setup
+ * createfb.sh: setup fb devices
+ * dmraid.sh: support for dmraid devices
+ * dm.sh: support for dm devices (including copying udev rules)
+ * EC2.sh: force TERM to dumb for xen
+ * fcoe.sh: FC over Ethernet support
+ * firewire.sh: root on firewire support (nothing to do, actually)
+ * ibft.sh: get network config from iSCSI Firmware Boot table
+ * iscsi.sh: setup iSCSI (SCSI over IP), once network is up
+ * kdump.sh: kdump support
+ * kms.sh: setup and run kms modules (handle nomodeset option too)
+ * kpartx.sh: setup kpartx support (including udev rules)
+ * lldpad.sh: Link Layer Discovery Protocol support (for FCoE)
+ * luks2.sh: LUKS support (english keyboard only) for rootfs (initrd in
+ crypttab)
+ * lvm2.sh: lvm support for rootfs
+ * md.sh: md soft raid support (including resume)
+ * modules.sh: kernel modules copy (including xen, scsi dependencies).
+ Careful, "supported" kernel handling will break with SLE12 (ipv6 is no
+ longer an module and isn't a "file system", despite what comment says
+ there :)
+ * mount.sh: mount / (possibly read-only)
+ * mtab.sh: upgrade /etc/mtab to a symlink
+ * multipath.sh: multipath support (dm-multipath dm-round-robin scsi-dh-
+ emc scsi-dh-hp_sw scsi-dh-rdac scsi-dh-alua )
+ * netconsole.sh: support netconsole
+ * network.sh: setup network
+ * nfs.sh: root over nfs (option : info from DHCP server)
+ * resume.kernel.sh: resume (kernel)
+ * resume.userspace.sh: resume (userspace)
+ * rtc.sh: load rtc_cmos (why not do it with udev..)
+ * shell.sh: emergency shell
+ * splash.sh: copy bootsplash on x86/x86-64
+ * splashy.sh: splashy support ?!?!
+ * start.sh: autoload modules listed in /etc/sysconfig/kernel
+ * storage.sh: (including journal on a separate device)
+ * udev.sh: start udev
+ * usb.sh: no nothing now
+ * vendor.sh: deprecated
+ dracut features:
+ * bootchart support
+ * can use dash (if present)
+ * fips : check initrd integrity
+ * caps: allow to drop capabilities
+ * busybox support
+ * allow to configure font / keymaps for i18n
+ * network support (write configuration using fedora ifcfg format)
+ * boot splash support : plymouth, gentoo
+ * add support for btrfs multi-devices (raid)
+ * crypted root (luks)
+ * dm support
+ * dmraid support
+ * dmsquash/squashfs support (live support)
+ * allow to fetch live image from network and run it (http(s)/ftp only
+ ATM)
+ * mdadm support
+ * multipath support
+ * support for GPG (symmetrically) encrypted keys for crypt
+ * dasd (s390) support
+ * FC over ethernet support (including lldpad)
+ * iSCSI support (including ibft support)
+ * NBD (network block device) support
+ * NFS support (including root path obtained from DHCP server)
+ * resume support (both kernel and uswsusp)
+ * zfcp / znet/ccwsupport (s390)
+ * mount securityfs
+ * biosdevname support
+ * master key support for kernel
+ * ecryptfs support
+ * EVM support (needed for Integrity Measurement Architecture (IMA))
+ * SELinux support
+ * syslog support inside initrd, pushing to remote syslog server over
+ ethernet
+ * mount /usr
+ * support fsck inside initrd
+ missing features in dracut :
+ * dsdt support (skeleton in place)
+ * blogd
+ * cifs
+ * rtc / zoneinfo
+ * EC2 (but it is just a workaround)
+ * kdump
+ * mtab "migration"
+ * "supported" option for kernel module
+ * netconsole
+ features only present in dracut:
+ * dash support (no hard requirement on bash)
+ * bootchart support (less needed with systemd nowadays)
+ * fips (initrd integrity check)
+ * dropping capabilities
+ * i18n support for font and keymap (needed when inputting a passphrase)
+ * live image support (through squashfs / dmsquash)
+ * support for GPG (symmetrical) keys for cryptsetup
+ * dash / zfcp / znet / ccw support (for s390, we might have them too, I
+ couldn't check)
+ * NBD (network block device) support
+ * ecryptfs support
+ * EVM (need for Integrity Measurement Architecture) support
+ * master key support for kernel
+ * syslog support inside initrd, pushing to remote server over network
+ Another issue we currently have in our distribution is maintaining 3
+ different initrd implementations : mkinitd (for installed system), kiwi
+ (for generated image) and installation initrd (for installer)




--
openSUSE Feature:
https://features.opensuse.org/310491

< Previous Next >
This Thread