This might be a stupid question, but hear me out.
I regularly document steps to install various software for myself on my wiki
More recently, I managed to use different custom text in the source markdown to prepend and
$
automatically, so commands can be copied more easily while still clarifying if it should be run as a normal user or as root.
Run command as user
$ some cool command
Run command as root/superuser with sudo
# some dangerous command
I usually remove and sudo
and use the # prefix. However, in some cases, the sudo
actually does something different that needs to be highlighted. For example, I might use it to execute a command as the user www-
sudo -u www-data cp /var/www/html/html1 /var/www/html/html2
I often use $
as a prefix, but would also make sense.
How would you prefix that line?
Edit: looks like this is wrong lol, that’s what I get for not verifying. So maybe $ does make more sense!
Original message:
I think I’d go with #.
The non-root user probably doesn’t have permission to run the sudo command as www-data user, but root does.
Unless you previously set permissions for the non-root user to sudo as www-data.
The non-root user probably doesn’t have permission to run the sudo command as www-data user, but root does.
You are wrong. E. g. in Debian (and Ubuntu) the default sudoers
file contains
%sudo ALL=(ALL:ALL) ALL
that means that any user in the sudo
group is permitted to execute any command as any other user. The same for redhat/fedora, but the group name is wheel
there.
I would use $
too for the example you’ve posted - it is just assuming a different user.
As long as it is not root, I wouldn’t put it with .
Neither because it makes it hard to copy paste. If you have to pick one then $ because # is for comments in bash.
It’s not actually part of the command, just some css to add the prefix visually.
I don’t work much with Linux systems these days, but I would vote for $ sudo
over . Two reasons:
- It’s easy to overlook the prompt. That part is basically “some characters before the actual command”, so I don’t normally pay attention it.
is also used for comments. I think it would be confusing to use the same character for two widely different things.
So $ sudo
in general any time I need to run something as root?
I’ll have to think about that some more. I think I rather dislike “forcing” sudo on all commands as root.
Ok, maybe I misunderstood your question. I though you were proposing instead of
$ sudo
and I meant to say that being explicit is better.
I typed the post in a minute and published, so it definitely isn’t the most coherent or well thought out post.
I’m currently using for commands executed by the root user or
sudo
.
Currently, I only use sudo
if the command depends on one of its features. Like the example above where I execute a command as the www-
user.
My dilemma was whether to use $ sudo
or for those few cases. But based on yours and other comments, it might make sense to use
$ sudo
for commands executed as root as well.
Personally i prefer the $ sudo
because honestly i don’t always notice the symbol at the beginning but sudo is really easy to keep track of whats root and what isn’t