Quina diferència hi ha entre Sudo i Su a Linux?
Si sou usuari de Linux, probablement hàgiu vist referències tant a sudo com a su. Els articles aquí sobre How-To Geek i en altres llocs indiquen als usuaris d’Ubuntu que facin servir sudo i altres usuaris de distribucions de Linux per utilitzar su, però quina diferència hi ha?
Sudo i su són dues maneres diferents d’obtenir privilegis d’arrel. Cadascuna funciona d'una manera diferent i diferents distribucions de Linux utilitzen configuracions diferents per defecte.
L'usuari arrel
Tant su com sudo s’utilitzen per executar ordres amb permisos d’arrel. L'usuari root és bàsicament equivalent a l'usuari administrador de Windows: l'usuari root té els permisos màxims i pot fer qualsevol cosa al sistema. Els usuaris normals de Linux funcionen amb permisos reduïts; per exemple, no poden instal·lar programari ni escriure als directoris del sistema.
Per fer alguna cosa que requereixi aquests permisos, els haureu d'adquirir amb su o sudo.
Su contra Sudo
L'ordre su canvia al superusuari (o usuari root) quan l'executeu sense opcions addicionals. Haureu d’introduir la contrasenya del compte root. Això no és tot el que fa l'ordre su, però, podeu utilitzar-lo per canviar a qualsevol compte d'usuari. Si executeu el fitxer su bob , se us demanarà que introduïu la contrasenya de Bob i l’intèrpret d’ordres canviarà al compte d’usuari de Bob.
Un cop hàgiu acabat d'executar ordres a l'intèrpret d'ordres de l'arrel, heu d'escriure sortir per deixar l'intèrpret d'ordres de l'arrel i tornar al mode de privilegis limitats.
Sudo executa una sola ordre amb privilegis d'arrel. Quan executis ordre sudo, el sistema us demanarà la contrasenya del compte d’usuari actual abans d’executar-la comandament com a usuari root. Per defecte, Ubuntu recorda la contrasenya durant quinze minuts i no tornarà a demanar cap contrasenya fins que passin els quinze minuts.
Aquesta és una diferència clau entre su i sudo. Su us canvia al compte d’usuari root i requereix la contrasenya del compte root. Sudo executa una sola ordre amb privilegis d’arrel: no canvia a l’usuari root ni requereix una contrasenya d’usuari root diferent.
Ubuntu vs. Altres distribucions de Linux
L'ordre su és la forma tradicional d'adquirir permisos d'arrel a Linux. L'ordre sudo existeix des de fa molt de temps, però Ubuntu va ser la primera distribució popular de Linux que va ser només sudo per defecte. Quan instal·leu Ubuntu, es crea el compte root estàndard, però no se li assigna cap contrasenya. No podeu iniciar la sessió com a root fins que no assigneu una contrasenya al compte root.
Hi ha diversos avantatges en utilitzar sudo en lloc de su per defecte. Els usuaris d'Ubuntu només han de proporcionar i recordar una sola contrasenya, mentre que Fedora i altres distribucions requereixen que creeu contrasenyes de compte d'usuari i d'arrel separades durant la instal·lació.
Un altre avantatge és que desaconsella als usuaris iniciar la sessió com a usuari root (o utilitzar su per obtenir un intèrpret d'ordres root) i mantenir el intèrpret d'ordres obert per fer el seu treball normal. Executar menys ordres a mesura que l'arrel augmenta la seguretat i evita canvis accidentals a tot el sistema.
Les distribucions basades en Ubuntu, inclòs Linux Mint, també utilitzen sudo en lloc de su per defecte.
Alguns trucs
Linux és flexible, de manera que no cal molta feina perquè el seu funcionament sigui similar a sudo o viceversa.
Per executar una sola ordre com a usuari root amb su, executeu l'ordre següent:
su -c 'ordre'
Això és similar a l'execució d'una ordre amb sudo, però necessitareu la contrasenya del compte root en lloc de la contrasenya del compte d'usuari actual.
Per obtenir un intèrpret d'ordres interactiu complet amb sudo, executeu sudo –i.
Haureu d’indicar la contrasenya del compte d’usuari actual en lloc de la contrasenya del compte root.
Habilitació de l'usuari arrel a Ubuntu
Per habilitar el compte d'usuari root a l'Ubuntu, utilitzeu l'ordre següent per establir-ne una contrasenya. Tingueu en compte que Ubuntu ho recomana.
arrel sudo passwd
Sudo us demanarà la contrasenya del vostre compte d’usuari actual abans de poder establir una contrasenya nova. Utilitzeu la vostra nova contrasenya per iniciar la sessió com a root des d'un indicador d'inici de sessió del terminal o amb l'ordre su. No hauríeu d'executar mai un entorn gràfic complet com a usuari root; és una pràctica de seguretat molt deficient i molts programes es negaran a treballar.
Addició d'usuaris al fitxer Sudoers
Només els comptes de tipus administrador a Ubuntu poden executar ordres amb sudo. Podeu canviar el tipus d’un compte d’usuari des de la finestra de configuració de comptes d’usuari.
Ubuntu designa automàticament el compte d'usuari creat durant la instal·lació com a compte d'administrador.
Si utilitzeu una altra distribució de Linux, podeu concedir a un usuari permís per utilitzar sudo executant el fitxer visudo ordre amb privilegis d 'arrel (així executeu su primer o utilitzar su -c).
Afegiu la línia següent al fitxer substituint-la usuari amb el nom del compte d'usuari:
usuari TOT = (TOT: TOT) TOT
Premeu Ctrl-X i llavors Y per desar el fitxer. També podeu afegir un usuari a un grup especificat al fitxer. Els usuaris dels grups especificats al fitxer tindran automàticament privilegis sudo.
Versions gràfiques de Su
Linux també admet versions gràfiques de su, que us demanen la contrasenya en un entorn gràfic. Per exemple, podeu executar l'ordre següent per obtenir una sol·licitud de contrasenya gràfica i executar el navegador de fitxers Nautilus amb permisos root. Premeu Alt-F2 per executar l'ordre des d'un quadre de diàleg d'execució gràfica sense iniciar un terminal.
gksu nautilus
L’ordre gksu també té alguns altres trucs a la màniga: conserva la configuració actual de l’escriptori, de manera que els programes gràfics no quedaran fora de lloc quan els llanceu com a usuari diferent. Programes com ara gksu són la forma preferida d’iniciar aplicacions gràfiques amb privilegis d’arrel.
Gksu utilitza un backend basat en su o sudo, en funció de la distribució de Linux que utilitzeu.
Ara hauríeu d’estar preparats per trobar tant su com sudo! Els trobareu amb els dos si feu servir distribucions Linux diferents.