I'm simplifying and diluting everything here - so you Richard Stallmans out there - I hear you!
Root is god, root runs all your critical services and can take control of any other user. For years, most Windows users were effectively running as root - and with that kind of 'power' you can imagine how quickly malware could spread. In theory with most exploits - if your normal user directory gets infected it should not spread to other users, systems, or root - but that also depends on where it came from. Thankfully Microsoft has hardened their consumer software since. But security always had a big impact on performance and user-friendliness, more so back then.
So the user root on unix runs your critical stuff that stops your computer crashing, stops you from deleting important files and helps to keep the bad guys out. The permissions issue that you had, was because another user was indeed owning them - root. You may know of the Administrator account on Windows and that is effectively root. (those security prompts in windows are not just there to annoy you). You can also enable root on OSX but as explained below - please don't. (you can still use sudo on OSX)
Sudo is not superuser, think of it as a lion tamer and root is the lion =)
You can enable the root account on Linux (especially debian based ones) and actually login as root with a desktop and everything. This is a really bad idea and highly discouraged.
However, how do you install new software or update, modify files etc if you don't have access to the root account? I already said logging in as root was a bad idea.
So here comes
su, Substitute User and
sudo - substitute user do.
When you run sudo chown -R alt:alt /home/alt/cumulusMX"
You are sudo -
substituting your
user for root, so that root can
do,
-Recursively chown,
Change
ownership of
CumulusMX within
alts
home folder to
alt, who is a user in the group
alt.
once complete, root then hands it back to you.
This tries to give you the best of both worlds, the protection of a user and some of the power of root, only when needed.
So with the above in mind - what happens when you substitute your user for root and install software? Unless action is taken, only root can access it.
Remember how I said Root owns everything? Root also delegates who can do what, such as use a cdrom, access a file share and even print things.
To give you a little more understanding why alt:alt ? Why do you need to be in a group ? From a terminal, type
groups you should get something like the following:
Code: Select all
ian@Callisto:~$ groups
ian adm cdrom sudo dip plugdev kvm lpadmin bluetooth sambashare libvirt docker
On my linux box, as you can see I can access my own files, use the cdrom, use the sudo command, access bluetooth devices, fileshares etc. Yours will be similar. As an example, my user Ian is in the bluetooth group and so I inherit the bluetooth groups access and abilities.
Anyway - don't be scared of sudo, but just wary where you copy and paste code from as without realising you could do yourself some harm -- such as install cumulus in a way that you cant access it
Sudo does not have to be root, although it does assume so if you don't put another user
Su = substitute user
sudo = substitute user do - a set of commands
You could run su ian and then put in my password and then you would be running commands as me (if my account existed on your system) once that line of commands were completed you would remain as me and would need to do su alt to change back.
sudo does the above, but once you hand the batton to my user, my user Ian runs the command and then hands it back to you.
Anyway - I was very bored and thought you now know enough to be dangerous
Use the power to change roots files back to you and once they are in your ownership, you should then be able to launch them as you say without the sudo command.
Sometimes it's important that certain files are owned by root, such as password files and private things you may not wish exposed -- this is especially true if you start hosting your own websites and things. As Cumulus is a pretty well contained application, it does not really need access to important parts of your computer and should be quite happy in most configurations running as you.