title | date | tags | ||||
---|---|---|---|---|---|---|
That damned Debian 10 one-liner I always need to let me `sudo` |
2023-11-20 |
|
# ⚠️: Reboots your VM.
su -c "$(whereis adduser | awk '{print $2}') $(whoami) sudo && $(whereis reboot | awk '{print $2}')"
In all its glory! For Debian 10 and up, because Debian 10 is where the sysv
to systemd
conversion became totalizing.
Let's break down quickly why each part of this is needed:
- Since we are trying to add ourselves to the
sudo
group right now, we obviously can't usesudo
. Entersu -c
to switch toroot
, run a command, and then switch back out. whereis adduser
instead of simplyadduser
becauseadduser
is no longer in the$PATH
by default anymore.- Tempted to try
which adduser
? No dice --which
only gets you things in the$PATH
as well:andrew@debian-10:~$ which adduser # zip, zilch, nada. andrew@debian-10:~$ whereis adduser adduser: /usr/sbin/adduser /etc/adduser.conf /usr/share/adduser /usr/share/man/man8/adduser.8.gz
- Tempted to try
awk
to rip out/usr/sbin/adduser
, which - thankfully - at least is still executable.$(whoami)
because your name might not beandrew
!whereis reboot
because I don't want to have to manually remember to logout and login again.