Currently, my computer starts up a lot of services (like docker, apache2, mysql, networking) before showing the log in screen. I want to start these services after the log in screen, so that booting continues while I am logging in. How can I change the order of services?If this is not possible, is there another way to move services out of the critical chain?Here is my critical chain:graphical.target @14.613smulti-user.target @14.613s  getty.target @14.613s    getty@tty1.service @14.612s      systemd-user-sessions.service @11.369s +38ms        basic.target @11.207s          paths.target @11.207s            cups.path @11.207s              sysinit.target @11.192s                networking.service @3.243s +7.948s                  systemd-random-seed.service @3.185s +57ms                    systemd-remount-fs.service @3.043s +140ms                      keyboard-setup.service @1.977s +1.065s                        systemd-udevd.service @1.963s +11ms                          systemd-tmpfiles-setup-dev.service @1.690s +273ms                            kmod-static-nodes.service @1.567s +113ms                              system.slice @1.521s                                -.slice @1.520s
Change order of startup services with systemd
systemd;performance
You can change boot order for service by Creating or Modifying systemd Unit File for that servicefor example in Ubuntu you can change LightDM  a cross-desktop display manager by editing the option 'After' in its unit file/lib/systemd/system/lightdm.service