this post was submitted on 04 Oct 2023
727 points (95.3% liked)

linuxmemes

21025 readers
428 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack members of the community for any reason.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn. Even if you watch it on a Linux machine.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, and wants to interject for a moment. You can stop now.

  • Please report posts and comments that break these rules!

    founded 1 year ago
    MODERATORS
     
    you are viewing a single comment's thread
    view the rest of the comments
    [–] [email protected] 4 points 1 year ago

    Systemd flipped this all around, and now instead of just changing files, you have to use applications to specify changes to your system. Want to stop something from starting? Well, it used to be that you just move it out of the init directory...

    Enable and disable just create symlinks of the "just changing files" files in your example. It tells you this every time you install something that enables a service.
    Want to do it manually? ln -s (or rm the link to "disable" it).
    Want it to happen later in the init sequence? Put the link in a different .target directory.
    All "systemctl enable" does is put the symlink in the target directory that's specified in the Install section of the unit file.

    As for "specifying a service"... Everything is a unit file (yes, file), journalctl -u just means "only show me logs for this unit".
    There's no flag for "specifying a service", you just type in the service name. If there's any ambiguity (eg. unit.service and unit.socket), you type the service name followed by .service
    A flag you might find useful is -g, which means "grep for this string". You can combine this with -u to narrow it down.