About a week ago I setup Ubuntu as my primary OS on an old machine. It is my first time trying a unix based OS (previously windows). It has been ok, but it seems like every time I try to install something I run into problems. The app has the wrong permissions or I don’t have the right packages or I need to change port settings ect… I was expecting a learning curve but I wanted to know if this is something I should expect to be a long term issue or if I will aquire the skills to side step stuff like this over time?
Update* I got it working. Last night I reinstalled it and figured it out. Two issues. On initial install I failed to update one of the packages needed. I also assigned the service to a group without the required permissions. On reinstall I rectified both of these issues and it works flawlessly. Thanks all for your help and input (and ignoring typos in the title)!
Windows does a lot of permission stuff under the hood. It’s why you can’t delete some folders even if you’re logged in as admin, and why deleting a Windows folder from an old drive is sometimes harder than just backing up and reformatting the entire thing.
Windows has a few modes of running applications: they can be run as your own user, as a system service user, or as a special account user. It’ll also provide many system service users access to your personal files. Your printer can access your browser history and that tool that makes your keyboard light up can read what you’ve emailed to your boss. Windows has become more strict over the years (breaking old software left, right and center) but there are still challenges to be solved.
Linux distros generally think that’s a bad approach. Your printer driver shouldn’t need to access your browsers history or password database. That’s just a potential flaw waiting to be exploited. So, when you run a service like Sonarr, Linux will create a special user for that, so that sonarr van access sonarr’s files and nothing else.
The security advantage should be obvious. You can disable that (edit the system service to run sonarr as your user, for example) or you can go full Windows and log in as root and change the system to make all files readable by all users by default. That’s not something Linux users would recommend, obviously, but it’s definitely an option.
As for installing packages, dependencies should be installed automatically. You should only be running into trouble with packages you’re missing if you’re not using a package manager, which is certainly possible but not for the faint of heart. Even Arch Linux users (famous for the I run Arch btw meme) have set up something called the AUR to make it easier to install random software nobody actually guarantees will work on your system.
I’m not sure what you’re running into in terms of ports. Linux doesn’t come with a firewall by default as far as I know, so your ports should be fine out of the box. You may have some application specific issues, but I don’t see why they should be different than on Windows.
Ir you could list every app you’ve had trouble with and what problems you’ve had to solve, we could go into your specific situation deeper. The truth is, outside of special Snap-related tomfoolery many people hate Ubuntu for, most Linux users should never need to mess with permissions.
I guess they have some selinux stuff implemented?
Ubuntu has apparmor but I’ve rarely run into that to be honest. My guess is either sandboxing or telling daemons to operate on directories created by the normal user account. It’s hard to tell what the problem is without more details.