16
Mageia: systemd Mageia: systemd Colin Guthrie Mageia Contributor Colin Guthrie Mageia Contributor

Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Mageia: systemdMageia: systemd

Colin GuthrieMageia ContributorColin GuthrieMageia Contributor

Page 2: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

A little about...A little about...

...Me!!!...Me!!!

Page 3: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

What is Mageia: BackgroundWhat is Mageia: Background

● Mandriva

● Good, strong user community

● Commercial problems

● Mageia

● Community focused, non-commercial

● Most of the original community

● Encourage commercial usage

● Mandriva

● Good, strong user community

● Commercial problems

● Mageia

● Community focused, non-commercial

● Most of the original community

● Encourage commercial usage

Page 4: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

How Things WorkHow Things Work

● Council

● Various groups

● Regular meetings

● Try to be inclusive in terms of packages, but mindful of resources

● Ultimately... it’s a “Meritocracy”– Those who do, decide

● Council

● Various groups

● Regular meetings

● Try to be inclusive in terms of packages, but mindful of resources

● Ultimately... it’s a “Meritocracy”– Those who do, decide

Page 5: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Pushing ChangesPushing Changes

● Each cycle we propose changes

● General review + vote

● Then the fun begins!– Usually the week before freeze!

● Each cycle we propose changes

● General review + vote

● Then the fun begins!– Usually the week before freeze!

Page 6: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Boot + InitBoot + Init

● Previously used sysvinit

● Various experiments and toe-dipping to speed up boot performance

● More parallelisation

● Start X11 early to improve perceived boot time

● Early systemd packaged as an option

● Previously used sysvinit

● Various experiments and toe-dipping to speed up boot performance

● More parallelisation

● Start X11 early to improve perceived boot time

● Early systemd packaged as an option

Page 7: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Why systemd?Why systemd?

● See other talks!!

● Sysadmin

● Clear up the mess of sysvinit/inittab/boiler-plate

● Stateful tracking of services

● Automatic restart on failure

● Better tracking of service processes (cgroups)

● Socket activation

● See other talks!!

● Sysadmin

● Clear up the mess of sysvinit/inittab/boiler-plate

● Stateful tracking of services

● Automatic restart on failure

● Better tracking of service processes (cgroups)

● Socket activation

Page 8: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Mageia 2: systemd by default?Mageia 2: systemd by default?

● Proposal to use systemd as default init

● Proposal accepted \o/

● systemd (v44) is the default init in Mageia 2

● sysvinit still supported as an option

● Proposal to use systemd as default init

● Proposal accepted \o/

● systemd (v44) is the default init in Mageia 2

● sysvinit still supported as an option

Page 9: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Issues EncounteredIssues Encountered

● Various technical issues encountered– Packaging helpers

– Migrating service state on upgrade

– Forcing conversion to systemd on upgrade

– Ordering cycles and LSB headers

– Nothing too troubling!

● Various technical issues encountered– Packaging helpers

– Migrating service state on upgrade

– Forcing conversion to systemd on upgrade

– Ordering cycles and LSB headers

– Nothing too troubling!

Page 10: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

More Issues EncounteredMore Issues Encountered

● GUI Utilities and Installer– Mageia (and Mandriva before) offer a “services”

GUI application during install and for administrators post install

– Had to be converted to systemd but also support sysvinit

– Combination of “systemctl list-units”, “systemctl list-unit-files” and “chkconfig --list”

● GUI Utilities and Installer– Mageia (and Mandriva before) offer a “services”

GUI application during install and for administrators post install

– Had to be converted to systemd but also support sysvinit

– Combination of “systemctl list-units”, “systemctl list-unit-files” and “chkconfig --list”

Page 11: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Knock on DependenciesKnock on Dependencies

● LVM + Device Enumeration– udev metadata more important

– mkinitrd does not use udev /o\

– Solution? Use dracut \o/

– Mageia 2 only supported systemd+dracut

– mkinitrd+sysvinit still officially supported

● LVM + Device Enumeration– udev metadata more important

– mkinitrd does not use udev /o\

– Solution? Use dracut \o/

– Mageia 2 only supported systemd+dracut

– mkinitrd+sysvinit still officially supported

Page 12: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Non-Technical Issues?Non-Technical Issues?

● Some minor FUD, but nothing significant

● Overall, due to our QA team there were very few post-release complaints or problems

● Hard to judge accurately but ~90%+ users use systemd

● Some minor FUD, but nothing significant

● Overall, due to our QA team there were very few post-release complaints or problems

● Hard to judge accurately but ~90%+ users use systemd

Page 13: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

Upstream + X-Distro EngagementUpstream + X-Distro Engagement

● Good relationship upstream

● Several fixes pushed upstream

● Helped upstream QA

● Very encouraging relationships with other distros

● Nice to see small differences disappearing

● Good relationship upstream

● Several fixes pushed upstream

● Helped upstream QA

● Very encouraging relationships with other distros

● Nice to see small differences disappearing

Page 14: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

What’s Next for Mageia?What’s Next for Mageia?

● Mageia 3– Drop support for sysvinit + mkinitrd

– Implement the /usr move

– More disciplined packaging● No udev rules in /etc● No tmpfiles configs in /etc

● Mageia 3– Drop support for sysvinit + mkinitrd

– Implement the /usr move

– More disciplined packaging● No udev rules in /etc● No tmpfiles configs in /etc

Page 15: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

What’s Next for Mageia?What’s Next for Mageia?

● Mageia 4– Tidy up packaging rules

● No referencing of /bin, /sbin and /lib[64] in packaged files

– Switch to Predictable Network Interface Names

– Attempt to reduce packaging variations● Enabling/Restarting package on install/upgrade● Adopt Package Presets

– Change how X (or $DISPLAYSERVER) starts

● Mageia 4– Tidy up packaging rules

● No referencing of /bin, /sbin and /lib[64] in packaged files

– Switch to Predictable Network Interface Names

– Attempt to reduce packaging variations● Enabling/Restarting package on install/upgrade● Adopt Package Presets

– Change how X (or $DISPLAYSERVER) starts

Page 16: Distro Recipes 2013: Retrofitting Init: systemd migration in Mageia

What’s Next For Distributions?What’s Next For Distributions?

????????