I want a non admin user to install software. What commands do I need to add to sudoers?
Note that giving users access to dpkg
(or to a smaller extent any other package managers) effectively gives them complete root access. There is nothing stopping such a user from creating a totally new package with a setuid shell and installing it via dpkg
, and then running that shell to gain full root privileges.
Sudo may be the more simple method, but PolicyKit is the more secure solution, afaik. You should go with the method outlined in the question you linked to.
If all only want them to be able to install programs you should be able to get by with only one program. I might give them access to run /usr/bin/apt-get install
. If you aren't running automatic updates, then you may need to add /usr/bin/apt-get update
. To correct broken installs they may need /user/bin/dpkg -C -a
.
Alternatively, you could enable synaptic, software-center, or aptitude. Then you can point your users at the appropriate module.
Allowing users to uninstall packages could lead to functionality you consider being removed.