101
submitted 6 months ago* (last edited 6 months ago) by flork@lemy.lol to c/linux@lemmy.ml

I found a (lengthy) guide to doing this but it is for gksu which is gone. I have to imagine there's an easy way. I am running Ubuntu. There is no specific use case, it is just a feature I miss from windows.

EDIT: I always expect a degree of hostility and talking-down from the desktop Linux community, but the number of people in this thread telling me I am using my own computer that I bought with my own money in a way they don't prefer while ignoring my question is just absurd and frankly should be deeply embarrassing for all of us. I have strongly defended the desktop Linux community for decades, but this experience has left a sour taste in my mouth.

Thank you to the few of you who tried to assist without judgement or assumptions.

top 50 comments
sorted by: hot top controversial new old
[-] nik282000@lemmy.ca 61 points 6 months ago* (last edited 6 months ago)

Do not do this. "Run as Administrator" is a Windows answer to a Windows problem. The only time you should regularly need root privileges is installing software and editing system wide configuration files.

[-] Revan343@lemmy.ca 8 points 6 months ago

It would occasionally be handy running gparted, but for as often as I need to do that sudo gparted works just fine

[-] nik282000@lemmy.ca 20 points 6 months ago

I've seen people say that a few times here but any time I use gparted I get the Gnome 'enter password' dialog which seems to work fine.

load more comments (2 replies)
[-] possiblylinux127@lemmy.zip 6 points 6 months ago

Gparted prompts you to enter your password so it can elevate itself to root.

[-] bizdelnick@lemmy.ml 25 points 6 months ago

You don't need to run any GUI programs as root.

[-] olutukko@lemmy.world 16 points 6 months ago

Now this is actually wrong. Firewall gui for example requires root. There are similar sysadmin guis that need it too

[-] bizdelnick@lemmy.ml 7 points 6 months ago

Sysadmin GUI tools are designed to be secure by isolating GUI from privileged process. That is not true for a random GUI app.

load more comments (1 replies)
[-] flork@lemy.lol 13 points 6 months ago

There's one in every thread.

[-] bizdelnick@lemmy.ml 13 points 6 months ago

I have no idea what you are talking about. The answer to your question is: this is impossible and this is done for purpose. Don't try to work in linux like in windows.

[-] flork@lemy.lol 8 points 6 months ago

I have no idea what you are talking about.

Your attitude.

[-] ursakhiin@beehaw.org 7 points 6 months ago

It's not attitude they are giving you. It's strong recommendation. It's the strong recommendation of the entire Linux community.

Sudo is different than run as admin and is not intended to be used to do things the way Windows does them.

load more comments (7 replies)
[-] ikidd@lemmy.world 23 points 6 months ago* (last edited 6 months ago)

I don't know why everyone is getting self-righteous about this. I've used Linux since the mid-90s, and occasionally I find it easier to just run a GUI file manager as root to do some filter and deletions of things in caches and such that need root permission. Hell, I want to edit the files in /etc/wireguard for my tunnels; should I only do this at a sudo prompt in the terminal when I'm perfectly capable of pulling it up in Kate and copypasting stuff in?

Get off your high horses, there's plenty of valid use cases if you're using your head.

load more comments (1 replies)
[-] dinckelman@lemmy.world 23 points 6 months ago

Your polkit will always prompt you for a password. No need to complicate it. If it doesn't, then it doesn't need to be ran as root

[-] flork@lemy.lol 6 points 6 months ago* (last edited 5 months ago)

Obviously I would want to input a password.

[-] billgamesh@lemmy.ml 22 points 6 months ago

That comment meant anything that needs root will prompt for it WITHOUT you running as root. Running GUI apps as root directly won't work well (1, it isn't a good idea. 2, your user likely owns the X session)

[-] Para_lyzed@lemmy.world 11 points 6 months ago* (last edited 6 months ago)

While the other user explained what polkit is from a low level, I think it's more practical to give you a high level explanation. Polkit is responsible for the dialog box that pops up when you try to open an app like GParted that requires root permissions (it edits partitions, a rootful task). What the user you replied to is saying is that you never want to run an app as root unless it prompts you for it (like with polkit prompts), or you know in great detail what you are doing. Running random things as root can break your system and the app you're running. Most apps you will be using are not intended to be run as root under any circumstance, and at the very least will likely experience issues because of it (UI issues, data issues because the root home directory is not your home directory, configuration/setting changes, improper scaling, etc). Unless you know for a fact that something has to be run as root (like updating packages with your package manager) or you are specifically prompted when trying to do something, you absolutely do not want to be running things as root.

Just to further explain, even if an app isn't started as root, it can request that permission as needed. For instance, Nautilus allows you to navigate through the root directory, and will prompt you for a password through polkit if you are trying to access something your user does not have permission to read (of course assuming your user has sudo privileges, but that's beside the point). Unlike Windows, there is no practical use for a "run as root" option, because apps have the ability to request root access when it is necessary, and only when it is necessary. In addition to that, polkit limits the root access that an app is given to the specific actions for which it is requested (so an app can't use root privileges to run unauthorized commands). The exception to that is when you start dealing with the terminal, but that falls into the category of "you better know what you're doing and why".

The short answer as to why this isn't a thing in Linux is that the authentication and permission system functions nothing like Windows. In Linux, a "run as root" button is not a solution, it is a problem. The only reason that run as administrator exists in Windows is because sometimes the solution to a problem in Windows is to run an app as admin. That is not the case for Linux, and never will be.

There are many ideological differences between Windows and Linux. You'll find many discussions here about how it is often not a good idea to try to do something the "Windows way" on Linux, because those ideologies and the software principles are incompatible. Part of learning how wonderful Linux is involves unlearning all of the horrible habits and ideological differences that Microsoft forces onto Windows users. This is one of those things that has to be unlearned, because full root privilege is not something that a regular app should ever ask for or even want in Linux. Root privilege is provided on a case-by-case basis from polkit with GUI apps; only when needed.

[-] lurch@sh.itjust.works 20 points 6 months ago* (last edited 6 months ago)

AFAIK the newer Ubuntu gksu equivalent is pkexec, if that helps.

You could copy all system .desktop files to your home dir and automatically edit them with a script that adds an action to run them with pkexec or sudo as root. However, most GUI apps should never be run as root, because they can break the system. For example, they may create hidden thumbnail files owned by root and break thumbnails in all apps not running as root that way

load more comments (2 replies)
[-] Nibodhika@lemmy.world 20 points 6 months ago

Sudo is "su do", i.e. "run as root", so it's funny to hear run as sudo because it means "run as run as root", like "chai tea" or "ATM machine".

To your question the answer is "why?". You shouldn't need that, that's one of the hardest things to get rid of, the "Windows mentality", it's like when people ask how to install a .tar.gz they downloaded from the internet, the answer is most likely "you don't need that".

This leads to an XY problem, where you're asking how to solve problem Y but that is caused by you assuming you need to do X, when in fact you don't. The main clue is that people keep asking you why do you want to do this. So, what exactly is the problem you're trying to solve? Why do you think you need this?

[-] FrostyPolicy@suppo.fi 12 points 6 months ago

Sudo is “su do”, i.e. “run as root”

It may default to root but it doesn't mean run as root. Su means substitute user identity i.e. any other user (if you have the rights to it).

[-] patatahooligan@lemmy.world 8 points 6 months ago

Both su and sudo originally meant "superuser" because that was their only use. They have retroactively been changed to "switch user" because this functionality was added later.

load more comments (1 replies)
load more comments (1 replies)
[-] flork@lemy.lol 11 points 6 months ago

There is no reason to assume this is an XY problem scenario.

[-] Nibodhika@lemmy.world 17 points 6 months ago

Yes there is, you're asking how to add a menu entry to run things with sudo, and refuse to answer why you want to do it, what's your use case? What graphical application do you need to run with sudo and why?

I'm almost sure I know why, and your refusal to answer this even though it's been asked multiple times seems fishy. Like it was explained multiple times there's a 99% chance that you don't need it, and there is a package for the remaining 1% or you could do it manually like others have suggested. But until we know your use case we can't help you, so while you keep refusing to explain what is it that you're actually trying to accomplish and why do you feel you need it it will be impossible for anyone to help you.

[-] flork@lemy.lol 9 points 6 months ago

What I want to accomplish is to open files and programs as root without use of the terminal. I promise you I have no nefarious intentions towards you or your ilk.

[-] 2xsaiko@discuss.tchncs.de 16 points 6 months ago

For files, you should use an editor that supports it (e.g. Kate via admin:// paths). You should not run GUI programs as root.

load more comments (1 replies)
[-] Nibodhika@lemmy.world 10 points 6 months ago

What program? What files? Why do you need to run them with sudo? You're either being purposefully vague or you don't even know why you think you need this.

[-] flork@lemy.lol 8 points 6 months ago* (last edited 6 months ago)

The question is not about a specific use-case, but a general one. An alternative reading would be "Is there a way to run short commands as root without switching to the terminal?"

[-] inetknght@lemmy.ml 13 points 6 months ago

I have had to un-teach dumb things that people learn from Windows.

A menu item to run a GUI program as root it is indeed a rather absurd scenario. It suggests that you want to violate the admin/user barrier which is intended to be difficult to surpass except in certain circumstances.

There can be a lot of things under the hood that are necessary to run a GUI program as root depending on whether you're using X11 or Wayland or something more esoteric. It's doable though.

But instead of doing that, why not just learn how to use the command line? Every administrative task can be done via the command line, but not every administrative task has a GUI counterpart. So you're going to need to learn to use the command line sooner or later.

[-] desconectado@lemm.ee 5 points 6 months ago* (last edited 6 months ago)

OP asks a relatively simple question, and gets scolded as it committed murder.

For all we know OP is the only user and is just playing with Linux, and just wants a simple (probably unnecessary) shortcut because he's GUI oriented.

This is kind of someone asking how to open their lunchbox easier, and get treated like they are giving a copy of their house keys to everyone in town.

Chill... Not everyone is running a maximum security level server. If OP screws their system (like most of us do at some point), I'm sure a fresh re-install would be enough for them.

load more comments (7 replies)
load more comments (1 replies)
load more comments (2 replies)
[-] LeFantome@programming.dev 13 points 6 months ago

I do not really see hostility or taking down. More of a difference of opinion or experience.

Also, this is not a private email thread. It is a public forum. Whatever advice you get risks becoming guidance for the community. I think it is perfectly reasonable, even responsible, for people to respond with their thoughts on security.

You can ignore the advice not to implement this capability on your personal machine. That is your call. However, this should not become standard practice by Linux users.

Thank you for answering at some point in the thread the use cases that drove your question. I was very curious.

When I have needed “Run as Administrator” in Windows, it has typically been to run the command line. The reason Windows needs this is because it has lacked “sudo”. The next release of Windows is adding it as a feature ( going the other way ).

I have used Linux for decades as well and really not needed this. Partially this is because tools that require root access are typically configured to ask for it already.

Your “need to delete a file” use case made sense to me but I do not run into it. Perhaps my file systems are mounted differently. Perhaps I am not manipulating files of other users ( sounds right ). Or maybe I am more likely to be at the command line. Your “edit files as root” use cases leads me to believe I use the command line more as that is certainly something I would be doing from the terminal. I have to edit files as root everyday but it is always from the terminal. I am not encountering files that I cannot edit in my file manager though as I would have navigated to those files in the terminal to begin with. Clicking around in a file manager to get to system files is not even something that would have occurred to me. If I am using the file manager, it is to manage my own files ( mostly media and documents ).

No judgement. Do things how you want. I was just curious what you were using this for. When I use Windows, I use “Run as Administrator” all the time. In Linux, I did not even notice it was missing. Going back to Windows makes me miss “sudo” in the terminal though. I am not the only one obviously as they are now adding it to Windows too.

[-] ouch@lemmy.world 12 points 6 months ago

There is a lot of advice in this thread warning you about doing this. Please heed it. Instead, read more about how permissions and file ownership works.

[-] flork@lemy.lol 8 points 6 months ago

I appreciate the absolute mountains of concern that I am using my own computer incorrectly, but I've been doing it this way for more than a decade and have never once broken anything, lost data or exposed myself to a security risk so I think I'm doing ok.

load more comments (2 replies)
[-] Peasley@lemmy.world 11 points 6 months ago

What's the use case? What are you running into that you want to launch as sudo through the gui that isn't pulling up the dialogue automatically?

A few folks have argued this is unnecessary, but I'm curious about your perspective on why and when you think it would be useful

load more comments (9 replies)
[-] MonkderDritte@feddit.de 9 points 6 months ago* (last edited 6 months ago)

Thunar has 'custom actions'. Add one using pkexec %f. Other FM have similiar functionality.

[-] prunerye@slrpnk.net 5 points 6 months ago

Thank you for providing an actual answer. Most of the comments in this thread are condescending as hell.

[-] DmMacniel@feddit.de 8 points 6 months ago

It depends on the file browser you are using.

load more comments (15 replies)
[-] sorrybookbroke@sh.itjust.works 7 points 6 months ago

Don't know about gnomes default file manager, but dolphin has this ability. You'll have to install the addons and enable it in the context menu however.

To repeat others opinion though, I haven't actually needed this feature outside of very specific situations (that I create myself). Linux operates a bit different and shouldn't need this for anything outside of some poorly made, or potentially malicious apps and scripts. I agree though it's still nice to have the option

[-] possiblylinux127@lemmy.zip 6 points 6 months ago

That's not a good idea as root isn't the same as an Administer account. Also, you might want to consider why you are running programs as root. You may have a chicken and the egg problem.

Maybe step back and give us some more context.

load more comments
view more: next ›
this post was submitted on 15 Apr 2024
101 points (100.0% liked)

Linux

47730 readers
1008 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS