Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

man: rescue.target could be seen as single-user.target #7323

Merged
merged 1 commit into from Nov 17, 2017

Conversation

@johnlinp
Copy link
Contributor

commented Nov 14, 2017

It will be nice to have single-user.target for systemd newcomers since it makes multi-user.target more comprehensible.

@poettering

This comment has been minimized.

Copy link
Member

commented Nov 15, 2017

Hmm... I am not sure redundant names are really that much better. Ultimately the concept of "single user mode" is UNIX folklore, and "rescue mode" is more descriptive. I wonder if a this time we really should add more UNIX compatbility...

I wonder if this wouldn't better be handles as documentation issue, i.e. we beef up documentation so that people looking for single user mode easily find to rescue.target.

Dunno, @keszybz any idea about this one?

@mbiebl

This comment has been minimized.

Copy link
Contributor

commented Nov 15, 2017

We already have a plethora of aliases for rescue mode (on the kernel command line). Please let's not add another one (systemd.unit=single-user.target).

I'm also with Lennart on this one, that "rescue.target" better describes what it is for.

@johnlinp

This comment has been minimized.

Copy link
Contributor Author

commented Nov 16, 2017

Just to make it clear, I'm not going to replace rescue.target with single-user.target. I just created a symlink, like runlevel1.target.

May I ask why multi-user.target is acceptable while single-user.target is not?

@keszybz

This comment has been minimized.

Copy link
Member

commented Nov 16, 2017

multi-user.target is the name. Your proposal would add another alias, and we already have many of those. My initial reaction was the same as @poettering's and @mbiebl — non multiplicanda entia sine necessitate — but I deleted my comment to wait for other opinions.

@poettering

This comment has been minimized.

Copy link
Member

commented Nov 16, 2017

May I ask why multi-user.target is acceptable while single-user.target is not?

Well, it's a very good question why we named multi-user.target the way we named it. And the main reason for that is that we really couldn't come up with a better name back then. For "single-user mode" we did come up with a better name however, and then used that.

Aliases are not a good thing in general, I'd rather have less of them, than more. We add them when there's a technical necessity for them, but they not only make the technical implementation of things a bit harder, but are also a bit more confusing for the user, as there are multiple terms then to refer to the same concept. The "runlevel1.target" alias btw where created as that's how the initctl compat layer of systemd worked, and back then we wanted to support that people can map their legacy runlevel numbers in different ways to the modern names. That turned out to be a bad idea, but we did have a technical reason back then... Adding aliases today is a different thing: there's no technical reason for it, afaics. It's mostly about adding some kind of "conceptual compatibility", but I both think it's too late for that now (given that sysvinit was phased out on many distros years ago), and I also think it comes at a price.

hence, let's treat this as documentation issue. let's not add yet another alias.

I hope that makes some sense?

@johnlinp

This comment has been minimized.

Copy link
Contributor Author

commented Nov 17, 2017

@poettering Thank you for your kind explanations. Yes, it makes sense to me.

I was hoping that single-user.target would appear somewhere. If creating an alias is too much, I can understand and accept that. I will try to modify my pull request to add descriptions in documentation.

@johnlinp johnlinp force-pushed the johnlinp:add-single-user-target branch from 0e7d248 to 310a288 Nov 17, 2017

@johnlinp johnlinp changed the title units: add single-user.target for comparison to multi-user.target man: rescue.target could be seen as single-user.target Nov 17, 2017

@keszybz

This comment has been minimized.

Copy link
Member

commented Nov 17, 2017

We already had "single user" somewhere in the text, but I guess it's good to have "single-user.target" spelled exactly this way, in case somebody greps. It'll also appear in systemd.directives(8).

@keszybz keszybz merged commit c37b4f3 into systemd:master Nov 17, 2017

2 of 5 checks passed

artful-i386 autopkgtest running
Details
artful-s390x autopkgtest running
Details
xenial-amd64 autopkgtest running
Details
Fedora Rawhide CI x86_64 rpm build [succeeded]
Details
semaphoreci The build passed on Semaphore.
Details
@johnlinp

This comment has been minimized.

Copy link
Contributor Author

commented Nov 18, 2017

@keszybz Thank you! I was thinking about grep too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
4 participants
You can’t perform that action at this time.