Hey guys. I'm new to Linux and I'm running Linux Mint 21.2 Cinnamon. Yesterday I have f*cked up. I was testing things in users and geve myself standart priveledges insted of Admin ones I had from beggining and then restarted PC. I then tried log back into users tab and change myself back to Admin but even tho the password is correct It says that it is not. /So at this point there is only one user in PC who has standart privliedges and no Admin./ I then tried to access root via terminal and this time It said that I don't have permision to do that. And this is where I'm at right now. Please help get back my admin privliedges.
Edit: Issue is fixed. I started GRUB and changed my password which fixed the whole issue. Once again big Thank you to everyone who gave me tips and also big thank you to the guy who started posting about rowing machines. You all wonderful.
Wait wtf? You can just reset root password that easy? What’s even the point of having a password, if all of your data and info is so easily accessed if someone gets physical hold of the machine. I guess so software/remote hackers can’t get your stuff, but still. This seems wild to me, I dunno.
New to Linux so I’m sorry if I’m being ignorant, but it does seem crazy you can get access to a machine without the password.
Edit: Thanks for all the comments below! I guess I’ve been spoiled by BitLocker in Windows being enabled by default and not having to think of disk encryption. Appreciate everyone’s time and responses!
There needs to be some mechanism to recover your machine should this happen. It's not that much more difficult to do it on a windows machine either.
The truth of the matter is is if somebody has physical access to your machine it's not your machine anymore. They can pull out the hard drive and plug it into a machine that they have a password for and read from it if it's not encrypted. So on and so forth.
New to Linux so I’m sorry if I’m being ignorant, but it does seem crazy you can get access to a machine without the password.
This is always the case, no matter what OS you use, unless you use full-disk encryption. User credentials are all just data on a disk, so if someone has physical access to your machine, and your disk isn't encrypted, then they can access (and change) those credentials or any other data.
As you say, preventing remote access is one, but also a password will slow someone down a bit, and stop low-knowledge adversaries entirely, possibly. Also you will at least know someone has messed with your machine if they change the password.
Really, though, there's nothing malicious someone can do to an unencrypted computer by changing the password that they couldn't do without changing the password (copy all your files, delete all your files, install malicious software). Except I guess annoying you by making you change your password back. 😆
Yes, there are other ways of doing it as well, you can plug in a live iso and chroot into your proper root and change it for example. This is why you can put a password on GRUB and on your BIOS, even if both of them have passwords, someone can remove your disk plug it into another machine and access your data. Long story short if someone has physical access to your machine is essentially game over. And BTW this is also true for Windows, physical access to the machine has always been considered game over because the person can simply remove the disk and plug it in another system, so any software solution is useless.
This is why encryption is important, if your disk is encrypted putting it in another machine gives garbage unless you know the encryption key, making root rw (as in the link) is useless because you still need to decrypt the disk to access it, plugging a live iso is pointless because unless you know the encryption key you won't be able to chroot into the system. But for most people the fact that no one untrustworthy will ever be physically near your computer is enough to not warrant extra measures of security, not to mention that most people don't have data that could be problematic if leaked (e.g. source code for a large company) and those who do have their drives fully encrypted.
Account passwords have never had the purpose of protecting data from physical access - on Linux or any other operating system that I’m aware of. Physical access means an attacker can pull your drive and plug it into their computer, and no operating system can do anything to block access in that scenario, because the os on disk is not running.
You need disk encryption to protect your data. The trade off is that if you forget the encryption password, your data is unrecoverable by you. But that’s what password managers are for (or just writing it down and putting it in a safe).
I believe it's better not to pretend that an OS password is a secure protection of your data when physically access can just mean - I don't like that OS, I'm going to put on this OS instead, or indeed, I don't like this PC, I'm going to put your data in this PC instead.
Remember, most PCs can become someone else's PC just by plugging in the right USB key. In fact most Linux users will know that, having literally done this themselves.
Just as easy or easier on Windows since it has a GUI. If someone has physical access to your machine your basically screwed. Unless encrypted they could just pop the drive out and put it in another machine also.
Also what is more likely for the average user someone comes in and tries to hack your password physically or something gets into your machine and someone tries remotely.
I quess if you really want to secure your device you shloud use encryption to encrypt your data and/or make something that wipes all your data in case someone tries to log into your device but that's only when you have something really important to hide.
Someone has already given you a guide on how to change the password via grub params, however that might not be necessary. It's important that when you ask these questions you provide the exact command you're using and the exact things you changed, what I assume happened is that you removed yourself from the wheel group (which in Mint might be listed as Admin privileges), this is important because the sudo command (unless you've customised it) only works for members of the wheel group. Then you said you tried to access the root via terminal and it told you you didn't have permissions, I'm 99% sure that you tried something with sudo here, which will no longer work because your user is not an admin anymore.
So are you screwed? Nope, you can access the root user without the need for sudo. Most people when they want to have a root shell use sudo su, in that command su is the actual part that lets you login as root (in fact su is short for Switch Substitute User, and you can switch to any user using it. Fun fact sudo is a short for Switch Substitute User and DO, so that you can run things as root without needing to login as root). As you might have already guessed just running su and putting the root password should work. Then why do people use sudo su? Because sudo su will ask you for YOUR password, whereas su asks you for the ROOT password (which in most servers is different, but most home computers is the same). You set the two of them when installing the system (in fact it's very likely that you ticked a checkbox that said something like "use the same password for the root account").
Edit: The correct therm used in the su manual is Substitute not switch as someone mentioned in a reply.
I don't think "substitute user" is the original meaning, and it's more like a retroactively applied acronym.
Looking at various old Unix manpages, it said various things in the past. In the HP-UX documentation it even lists three different variants in the same man page: "switch user", "set user" and "superuser".
"superuser" is probably the original meaning, because that's what it says in the Unix Manual 1st edition (1971): http://man.cat-v.org/unix-1st/1/su
NAME su -- become privileged user
SYNOPSIS su password
DESCRIPTION su allows one to become the super--user, who has all sortsof marvelous powers. In order for su to do its magic, the user must pass as an argument a password. If the passwordis correct, su will execute the shell with the UID set to that of the super--user. To restore normal UID privileges,type an end--of--file to the super--user shell
You can do su to change the user in the current shell. Afaik it just defaults to root if no user ist specified. Everytime you run su you actually do su root
That said I always thought that it stands for switch user so intereresting to know that it‘s substitute.
If there is docker image for what you need, use docker image.
If not I would recommend systemd-nspawn, it's chroot but can run systemd init, with efforts you can run GUI applications from it too., wiping that is just sudo rm -rf.
Yeah I already tried sudo root via terminal but when I entered the password It said I don't have permision to do that. I can't even change my password to something new in desktop. But I can try setup login once I'm back home.