Fórumok
Telepítettem a Debian Linux 11 grafikus verzióját. A terminal ablakban szerkeszteni szeretném az /ETC/sudoers állományt.
Telepítéskor megadtam a root jelszót és létrehoztam egy új felhasználót is akit be szeretnék tenni a suduers állományba, amihez nincs jogosultságom. Nem engedi szerkeszteni a fenti állományt.
Mi ennek az oka és hogy tudom a létrehozott felhasználónak megadni, hogy root legyen ?
A grafikus telepítésnek van ehhez köze ?
Köszönöm a segítséget
Hozzászólások
Ha visudot akarsz nyitni, mi történik? Mi az, hogy nem engedi, mi a hibaüzenet? Gondolom még rootként akarod szerkeszteni.
/ETC/sudoers fájl biztos nem létezik, esetleg a /etc/sudoers.
Akkor telepítéskor megadtál egy root jelszót, akkor sok értelme nem volt, ha a felhasználónak meg sudo jogosultságokat akarsz létrehozni, mert mindegy lett volna, ha nem engeded a root felhasználót belépni, így a korábban megadott felhasználónak a telepítő automatikusan sudo jogot adott volna.
Amúgy meg a terminálban jelentkezz be root-ként: su - és aztán add meg a megadott root jelszót. Azután meg visudo.
Így van, a fájl/mappanevek kis/nagybetűkre érzékenyek, ez nem Windows. Akár még kötőjel se kell a su után, egymagában su parancs is épp úgy root shellt ad. Kezdőket az is frusztrálni szokta, hogy a visudo alapból vi-t használ, amit nem tudnak kezelni, de ez is megkerülhető, root shellben EDITOR=nano vagy amit akar az ember (mceedit, micro, jed, joe, emacs, mg, ne, bármilyen nem GUI-s editor lehet), és máris a visudo azt használja majd szerkesztésre.
Elméletileg nem csak visudo-val lehet szerkeszteni, hanem bármilyen text editorral, akár GUI-sal is, de akkor arra kell figyelni, hogy ne ejtsen az ember szintaxishibát, hiszen elég egy karaktert melléütni, és bukja az ember az egész sudo-ságot. A visudo egy script, ami szintaxisellenőrzést is végez, így biztonságosabb, és ajánlottabb.
“A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)
Bár jelen esetben kb mindegy, de a su egymagában nem "épp olyan" root shellt ad...
Valóban van egy kis különbség, az su - nem csak a root felhasználót engedélyezi, de az egymagában kiadott su paranccsal ellentétben extraként betölti a root környezeti változóit és a root home mappájába landoltat. De jelen esetben, ha csak egy visudo kiadása a cél, akkor kb. mindegy. Akár még Ctrl+Alt+F_akármennyivel is lehetne nyitni egy konzolt, ahol az ember root + rootjelszóval bejelentkezik, és nyomatja onnan.
Egyébként Debian, Arch, Void, Slackware, Gentoo, stb. ezért nem való kezdőknek. Nem azért, mert annyira nehéz lenne, vagy elitista, hanem már otthon kell lenni hozzá valamennyire Linuxban, otthonosan kell mozogni a terminálban, konzolban hozzájuk, ismerni alap parancsokat, csomagkezelést, csomagneveket. Semmi abszolválhatatlan, meg nem kell hozzá informatikusi diploma, de aki teljesen kezdő, azokat frusztrálhatják, ha mindenhez shellben kell mókolni. Ezért kezdő usernek ajánlottabbak a Mint, Ubuntu, PopOS, MX, esetleg még akár a Manjaro, Fedora is ajánlottabb, mert ezek alapból engedélyeznek egy csomó „felhasználóbarát” feature-t, pl. a grafikus telepítőben hozzáadott felhasználó automatikusan bekerült a wheel csoportba, meg a wheel-nek a sudoers-ben automatikusan engedélyezve van a sudo, és ez nyilván kényelmesebb egy kezdőnek, hogy alap dolgokért nem kell elkezdnie fetrengeni, alapból működik a sudo, automata felcsatolása meghajtóknak, mindenhez van GUI frontend, beállított alap alkalmazás, komplett DE, grafikus login manager, CUPS, trim, polkit, stb., és nem kell nekikezdeni visudo-zni, meg az su paraméterezését elemezgetni, xinit-ezni, fstab-ot szerkeszteni, stb..
Épp ezért kezdők körében elterjedt tévhit, hogy a haladó/KISS disztrókban azért nincs semmi engedélyezve, meg azért nincs installer, hogy a kezdőket szopassák. Nem, nem azért. Hanem hogy a haladónak ne próbálják előre per deafult kitalálni, hogy mi is kell nekik, hogy utána a default, bicikli pótkerekes beállításokat ne kelljen visszacsinálniuk, meg a rendszerből előtelepített szemetet kiszedegetniük. Ugyanis egy haladó nem biztos, hogy akar sudo-t, lehet biztonsági okból kerüli, és csak su-t vagy doas-t használ majd helyette, de ha még sudo-zik is, akkor sem biztos, hogy akarja a default wheel garázdálkodhat a sudo-val című beállításokat, hanem szűkebb, egyedi engedélyezéseket akar majd. Hiszen a Linux pont erről a szabadságról szól, hogy az embernek teljes kontrollja van a rendszer felett, már a telepítéstől elkezdve egyedien és modulárisan alakítja a rendszert, és nem kötelező úgy használnia a rendszert, ahogy egy céges, öltönyös-nyakkendős trendidióta megálmodta „felhasználói élmény” részeként, hülyebiztos alapon.
“A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)
"Valóban van egy kis különbség, az su - nem csak a root felhasználót engedélyezi, de az egymagában kiadott su paranccsal ellentétben extraként betölti a root környezeti változóit és a root home mappájába landoltat."
Ja, és általában login shellt akarsz, mert különben mindenféle hülyeségek tudnak történni, szóval kezdőnek inkább ne javasoljuk, ha már egysze valaki mondta neki, hogy "su -", jó azt úgy megtanulni.
Kezdő, nem kezdő ügybe nem szeretnék belebeszélni :)
De itt nem általában beszélünk, hanem csak egyszeri alkalomra kell egy rendszerfájlt szerkeszteni. Amit normálisan egyébként sudoedit-ttel vegy doasedit-tel lenne legjobb, de most jelen esetben pont az a poén, hogy nincs se sudo, se doas. Így marad a su megoldás. Mint írtam, az su - vagy sudo --login valóban precízebb, de kezdőnek azért nem szoktam ilyenkor erőltetni, mert csak félregépeli, aztán meg azon megy a morfondír, hogy miért nem megy, jajj, segítség, kiír valamit, de már nem tudja mit, bezárta, sóval is behintette a helyét, nem fért el a képernyőn.
Amit még lehet csinálni ilyenkor egy kezdőnek, hogy vagy pkexec-kel indít el egy GUI text editort (megint nem evidens), vagy ha olyan DE-t használ, amiben van gvfs telepítve és GVFS-kompatibilis text editor (pl. gedit), akkor admin:///etc/sudoers formájában is tudja szerkeszteni (akkor, ha, túl sok a ha). Emacs is tud rendszerfájl mentéséhez jogosultsági szintet emelni, sudo nélkül (nem nyomoztam ki hogy csinálja, amúgy is vim-et használok), csak ez megint az a toolset, hogy nem a kezdők kenyere. Van rá sok megoldás (visudo, konzolban root-ként bejelelentkezés, akár még egy másik vagy live rendszer alól is lehet szerkeszteni a szóban forgó fájlt), de mindenek között egy sima su ilyenkor a legegyszerűbb, leggyorsabb, legbiztosabb. Ha meg majd hosszabb távon lesz az illetőnek tapasztalata a Linuxszal, akkor majd megtanulja, hogy az su - miben jobb, milyen hibalehetőségeket lehet vele elkerülni egyes helyzetekben (az nem fog létrehozni más felhasználó mappájába root által tulajdonolt fájlokat, stb..). Nekem pl. még majd 8 év alatt egyszer se kellett az su -, bármilyen szituban megfelelt a sima su, és nem ért miatta hatrány, nem volt hátrányos következménye. Az su - megoldást is csak azért ismerem, mert anno kezdőként leírásokban láttam, hogy mindenki az su - megoldást erőlteti, akkor nem értettem mi az, és utánaolvastam, hogy miben különbözik.
A kezdő, nem kezdő ügy nem attól függ, hogy akarsz-e róla beszélni. Hanem ezek a dolgok tényleg fontosak, nem véletlen, hogy a kezdőbarát disztrók az ilyenekre figyelnek, ezért is népszerű az Ubuntu és a társai. Neked, nekem, meg sok embernek itt a topikban is nem fontos, de egy kezdőt nagyon frusztrálni tudják ezek a dolgok, hogy mindjárt ilyel alap szopásokkal indít, nem megy a sudo (mert be kell állítani), meg nem megy a Wi-Fi (persze, mert a hozzá való firmware a non-free tárolóban van, amit engedélyezni kéne először), stb., és mikor idegbajt kapnak a frusztrált userek, akkor az lesz, hogy szaralinux, nem fehér embernek való, és nem fogja érdekelni, hogy su vagy su -, hanem dühtől rángó szemmel már pattintja is vissza a Win10/11-et, mert az legalább „megy”, ott nem kell terminálban mindenféle fekete mágiát művelni, meg itt a - ott a - táncot járni.
“A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)
Szóval te is érted, hogy precízebb, tisztában vagy vele, hogy általában ha egy shellt akarok, akkor jobb egy login shell, de mégis, magyarázat nélkül azt mondod egy kezdőnek, hogy elég a su, hátha rögzül neki a hülyeség (és ha neked még semmi bajt nem okozott, akkor vagy rohadt szerencsés vagy, vagy csak nem vetted észre, vagy jöttél rá, hogy az okozza, vagy lendületből javítottad. Az elsőre szerintem kevés esély van).
Nem, attól az függ, hogy én akarok-e róla beszélni. :) És mivel nekem válaszul írtál egy hosszú litániát ilyesmiről, ezért jeleztem, hogy bocs, de ez engem nem érdekel, nem fogok rá reagálni. Én csak szóltam, hogy ez ne rögzüljön, bár tény, hogy nem artikuláltam valami jól, szóval kedves topicnyitó, tessék megjegyezni, hogy nem "su", hanem "su -".
Egyébként életemben nem használtam se sudoeditet, se doast (na jó, lehet hogy volt olyan, ahol épp ez volt), abban teljesen biztos vagyok, hogy nem azokkal a "legjobb" ezt csinálni. Igazából egy desktop gépen az is teljesen mindegy, hogy su, vagy sudo (vagy akármelyik alternatívája, ami a usernek enged szabályrendszer alapján root accesst), vagy simán egy új terminálba belépek direkt roottal, nincs érdemi különbség, a root ilyen környezetben valójában nem shared, nem vesztek semmit, ha van neki jelszava és használom.
A sudoedit, doasedit azért jobb, mert olyankor a text editor nem fut emelt jogosultsággal, csak a szerkesztendő fájlt éri el, csinál róla nem emelt jogosultságú ideiglenes másolatot, azt szerkeszti, és kilépéskor, ha a fájl változtot, akkor emelt jogosultsággal visszamásolja a helyére. Ha su-val meg su - segítségével szerkeszted, akkor az egész shell, környezet, text editor emelt jogosultságokkal fut, feleslegesen, de ez itt most szükséges kényszer, mert más eszköz nem nagyon áll a rendelkezésre. Épp ez a lényeg, hogy ilyen kényszerhelyzetben mindegy mit használsz egyszeri szerkesztésre, mert nem lényeges. A szakmai ajánlások is csak hosszabb távú használatra szólnak, szóval igen, hosszú távú használatra ajánlottabb az su - mint a sima su. De itt nem hosszú távról van szó, csak egyetlen egy fájl szerkesztéséről. Igen, lustaság egy - karaktert lespórolni, de van, akinek ez is sokat jelenthet, főleg, ha a linuxos pályafutásának az elején van, vagy még nem használt haladóbb disztrót. Akkor az egyszerűsítés sokszor többet jelent, mint az abszolút szakmai korrektség, nyilván csak egy szintig, mert ha az ember fejlődni akar, meg nem akar normi maradni, akkor javasolt inkább szakmailag korrekten, tisztábban, elegánsabban megoldani dolgokat, de az csak később jön.
“A computer is like air conditioning – it becomes useless when you open Windows.” (Linus Torvalds)
Egs :-)
A sudoers file root-kent szerkesztheto, sima userkent nyilvan nem. Legyel root!
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség
Ahogy itt már többen is írták, a visudo-val célszerű szerkeszteni. Ha kézzel akarod, a /etc/sudoers.d-ben hozz létre bármilyen néven egy új fájlt, és abba írd bele a felhasználót és az ő paramétereit. A /etc/sudoers-t csak a visudo macerálhatja.
TheAdam
Világéletemben kézzel szerkesztettem, soha nem okozott semmilyen problémát.
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség
viszont ha valamit elírsz, nem fut le a syntax check -> nem működik az egész
a visudo is lefuttatja a syntax check-et.
emlékeim szerint a visudo is a default editor-t használja, szóval nem látom értelmét nem visudo-t használni
megszokás kérdése.
Nem szoktam elírni.:)
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség
Én sem "szoktam" de sajnos fordult már elő. Rondán elárasztotta a teljes informátikát levelekkel. :D
"A megoldásra kell koncentrálni nem a problémára."
Még nem bökted el... Kolléganő, AIX, kézzel matatta a sudoers.d/ alatti fájlokat, aztán valamit elbökött - és kilépett a root shellből. És onnantól kezdve természetesen senkinek nem volt sudo joga... Ha jól emlékszem, egy kolléga épp bent volt sudo-val, úgyhogy ő lett a megmentő, mert egyébként maradt volna a jegyzőkönyvezett borítékbontás és a magyarázkodás.)
Jó, megígérem, majd ha egyszer én is így járok, akkor elkezdem használni (vagy csak még jobban odafigyelek utána, még nem döntöttem el.) :)
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség
Amíg nem fegyelmi terhe mellett bacod el, addig úgy csinálod, ahogy akarod. Csak ha egyszer el...od, akkor lesz -Murphy- a legfontosabb, hogy legyen működő sudo, és ne kelljen borítékot bontani. Adott helyen az emelt szintű általános hozzáférés sem volt megengedve, csak néhány embernek volt ilyen joga - a direkt root logint (ami ugye nem nevesített bejelentkezés, tehát nem köthető személyhez) meg jegyzőkönyvezni, "magyarázni" kellett volna, ezért volt kellemetlen a dolog. Ha nálatok ilyen esetre "csak" annyi a dolog, hogy "grep gepnev rootjelszavak.txt", akkor kevésbé problémás a dolog -bár ha sudo-val működő dolgok is vannak a rendszerben, akkor azért igen :-P
Nagyon be van akadva nálad ez a jegyzőkönyvezés/borítékozás, pedig közel sem annyira általános, mint véled (nem, bankban sem).
Adott helyen az volt, maradjunk ennyiben. Sőt n+1 olyan rendszer/gép is volt, amit kifejezetten tiltott volt központi authentikációba bevonni, mert az ugye egy újabb működési kockázat.
Ezt el is hiszem neked, de az adott hely nem egyenlő az általánossal. Én is dolgoztam olyan helyen, ahol így volt, meg aztán számos másikon, ahol meg nem.
Én örülök neki, hogy így aggódik értem. :)
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség
Mondjuk ha sudo-val lehet a sudo beállításait szerkeszteni, akkor szintén minden korlát nélkül bármit meg tud csinálni az ember, legfeljebb kell pár extra lépés. Ilyen helyen a root jelszó szigorú védelme már nem csak halottnak a csók?
disclaimer: ha valamit beidéztem és alá írtam valamit, akkor a válaszom a beidézett szövegre vonatkozik és nem mindenféle más, random dolgokra.
Sudo-val "any" joga csak néhány embernek volt, egy szerkesztette (és elqfta), egy még épp be volt jelentkezve, és volt kéznél root shellje - akinek még volt ilyen joga, az meg nem játszott, mert nem volt épp futó root shellje. Az, hogy "lehetősége van" szerkeszteni, az nem jelenti azt, hogy bármit belevéshet (vannak rá kontrollok, amiket nem részleteznék), úgyhogy a kellő gondossággal voltak kiosztva a jogok - ezért volt szükség arra, hogy kifejezetten összetett és részletes sudoers legyen a gépen/gépeken.
Szerintem egy kicsit több bizalmad lehetne benne, hogy felnőtt emberek tudják hogy mit csinálnak és ha mégsem, akkor pedig úgyis viselik a következményeit. :)
"Nem akkor van baj amikor nincs baj, hanem amikor van!"
Népi bölcsesség
Köszönöm az eddigi hozzászólásokat.
A gondom az, hogy miután telepítettem a Debian linuxot.
Konzolt nyitok, és cat etc/sudoers parancs :- nincs jogosultsága - nem látom mi van az állományban
oké sudo cat etc/sudoers : bekéri a jelszót ahol megadom a telepítéskor megadott root jelszót : a peterv felhasználó nem szerepel a sudoers állományban- vagyis nem enged hozzá a tartalmához
Jó akkor szerkeszteném az állományt hogy a peterv használhassa a sudo vagy su utasítást
És itt a gondom mert szeretnék mondjuk telepíteni egy disk kezelőt vagy másik bármilyen appot amihez ugye root privilégium kell de nem tudok mert nincs hozzá jogom úgy se hogy tudom a root jelszót- nem tudok root lenni
A visudo - vi parancs se fut le...
konzolt nyitsz, beírod, hogy "su -", enter, a telepítéskor megadott root jelszó (ami vagy ugyanaz lett mint a peterv jelszava, vagy valójában amikor itt azt mondtad, hogy a root jelszót adtad meg, akkor peterv userét adtad meg (különben nem azt mondta volna, hogy peterv nincs a sudoerben, hanem azt, hogy "sorry, try again".)
Ekkor root leszel, aztán csesztetheted a sudoers filet, ahogy akarod.
Ennyi idő alatt újra húzhattad volna a root jelszó kihagyásával és lenne rendes sudo a rendszereden. Nem kéne hákolni, meg világosan le van írva a telepítőben a root jelszónál, ha nem adsz meg semmit. A felhasználódnak lesz sudo joga.
Az nem "rendes", hanem "veszélyes".
Értem, hogy csak egy asztali gép, de az üres root jelszótól, és a nyakló nélküli sudo jogtól kiráz a hideg... :)
Én inkáább "hákolnék", de talán "megfontolt, és finomhangolt jogosultságkezelés"-nek nevezném hákolás helyett.
"A megoldásra kell koncentrálni nem a problémára."
Ez egy Linux kezdőnek hákolás, mert nem érti mi-miért merre hány méter. Neked más az inger küszöböd, nem is vagy kezdő. Viszont a Debian telepítőben benne van a lehetőség, igaz tájékoztat is a folyamatról. Olvasni kellet volna csak.
Hákolásnak éli meg, mert nem érti még, nem tudja még. Miért visudo-val kell a sudoers-t szerkeszteni. Megnyílik neki egy olyan text editor, amit soha nem látott még. Legyen az vi vagy nano, mindegyiket máshogy kell kezelni.
Nem vitatom az álláspontodat, csak ezt egy kezdő még nem tudja.
Végülis igazad van. Csak ne nevezzük hákolásnak, mert véletlenül akként marad meg a fejében akkor is mikor már komolyan nyomja.
De pont a visudo az ami egy "general tuning" vi editort ad szerkesztésre. És tudjuk, hogy kezdők esetében a vi igen riasztó tud lenni. :)
(Én ugyan a vim-et használom minden szerkesztéshez, de például a joe-tol rángógörcsöm van. Ízlések, és pofonok...)
"A megoldásra kell koncentrálni nem a problémára."
Oké, legyen így idézőjelben "hákolás". Kiegyezel vele?
Megegyeztünk. :)
"A megoldásra kell koncentrálni nem a problémára."
Pacsi. :-)
Es mar ez sem feltetlenul igaz :)
https://linux.die.net/man/8/visudo
Egyebkent ez a lenyege:
A visudo a rendszerszinten vagy a környezeti változóban beállított editort adja szerkesztésre. Amely persze lehet vi.
Hogy akarsz sudo-zni, ha nem állítottad még be?
A sudo és a su teljesen máshogy műküdik. A sudo-nál a user jelszavát kéri (ha már ő be van állítva a sudoers file-ba). A su pedig a root jelszavát kéri és válsz utána root-tá, amivel szerkesztheted akár a sudoers-t is. Ez az első lépés.
sudo adduser -aG peterv sudo
rekurzió: fn. lásd rekurzió
Valahogy így kell kinéznie a su root majd jelszó megadása után:
Nem egyszerűbb simán a /etc/group -ban a sudo:.... sor végére odaírni a felhasználónevét?
Az es root jogot igényel, ha a usermod -a -G sudo pistike parancsot szeretné... :-P Persze egy grub menüben megfogott, és a linux... satöbbi sor végére biggyesztett init=/bin/bash módon bootolt OS-ben egy remount -o rw / után megcsinálhatja, csak aztán a sync; remount -o ro / ne maradjon el, mielőtt resettel újrarúgja a gépet :-P
Akkor egy egyszerusitett windowsos analogia (igen tudom, hogy lehet tok mas user neveben is futtatni su-val is, meg sudoval is, de most azt a reszt engedjuk el.):
sudo
= Futtatas adminisztratorkent (Windows itt feldob egy Megerosito ablakot, igen/nem, nem kell tudnod senki mas jelszavat.)su -
= Futtatas masik felhasznaloval -> Administrator (Itt keri az adott felhasznalo jelszavat, ha Administrator userrel szeretned, akkor elotte engedelyezni kell az Administrator user belepest, es jelszot beallitani, stb. Kellemes regedit turkalas emlekeim szerint.)Elnézést hogy csak most írok, ünnepek alatt nem voltam gépközelben.
Köszönöm mindenkinek a hozzászólást azt gondolom rengeteg hasznos infót kaptam átnéztem őket.
Fogalmi hiányaim voltak azzal kapcsolatban mit a különbség a su - és a sudo között.
sikerült szerkesztenem nano-val és felhasználóként tesztelek és ha kell -igény esetén! nem állandóan - szeretnék root privilégiumal telepíteni konfigolni - tesztelni -tanulni.
Ez volt a cél nem éles rendszeren ügyködöm egyenlőre. :)