Portál AbcLinuxu, 17. července 2025 18:24


Dotaz: zmena prav souboru

26.7.2003 17:50 Jubbi | skóre: 4
zmena prav souboru
Přečteno: 182×
Odpovědět | Admin
Cau, obcas potrebuju zmenit prava nejakych souboru abych k dane veci mel pristup z uzivatelskeho uctu a chtel sem se zeptat jak mam poznat kterym souborum je potreba ty prava zmenit ? Kdyz napriklad mam hlasku:

Xlib: Client is not authorized to connect to Server

jak mam poznat kterym souborum je potreba zmenit prava ? Diky za odpoved
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.7.2003 18:48 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše zmena prav souboru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Snažíš se pouštět program pod X jako jiný uživatel, než je nalogovaný, nebo něco jiného? Na které soubory nemáš práva, to bys poznal pomocí strace -e trace=open příkaz, ale tohle je komunikace klient-server, takže by ti to nepomohlo.
26.7.2003 19:09 Jubbi | skóre: 4
Rozbalit Rozbalit vše zmena prav souboru
Mno tak v tom prikladu co sem uvadel sem se po rebootu lognul jako root a ve virtualni konzoli sem byl logly jako normalni user a tam mi to hodilo tohle.
26.7.2003 19:33 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše zmena prav souboru
Abys mohl dostat takovouhle hlášku, musíš spustit nějaký X program -- což je ale na konzole budeš dělat těžko (je minimálně třeba nastavit DISPLAY). Jestli si tedy rozumíme, co je virtuální konzole -- pro mě je to tty0, tty1, ..., až kolik jich máš. Jestli konzolí nazýváš terminál v X, tak to dává smysl, ale nedoporučuji to jakkoli měnit, protože (a) root nemá co pouštět X (b) [ještě horší] uživatel nemá co hrabat na rootova X, to bychom se dočkali pěkných věcí... -- a dělat to opačně. Ale nebudu se rozepisovat, když vlastně pořád nechápu, co chceš...
26.7.2003 21:01 RWS
Rozbalit Rozbalit vše zmena prav souboru
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zrovna v tomhle pripade je problem v tom, ze X server nedostal od klienta (nejakyho X programu) spravnou autorizaci. Bezne se ted pouziva autorizace pomoci MIT magic cookies, ktery se ukladaji (obvykle) do souboru $HOME/.Xauthority. Ty zaznamy se spravujou programem xauth (nastuduj detaily v man xauth).

V kratkosti jde o to, ze kdyz si pusti nejakej uzivatel Xka, tak si (udela to nejakej skriptik) zaroven do Xauthority vygeneruje nejaky cookie (obvykle programem cookie) pro zadanej screen. Zaznam (z xauth list) pak muzes obsahovat napr.

localhost/unix:1  MIT-MAGIC-COOKIE-1  c611f0634f743dd3d06605684cb6204f

protoze stejny soubor pouzivaji i X programy, tak kdyz stejnej user spusti nejakej X program, tak se vezme ten cookie a overi se na X serveru a protoze souhlasi, tak se program spusti. Kdyz bys ten program pustil pod jinym userem, nebo bys mel v promenne $XAUTHORITY nastavenej nejakej jinej soubor, a proste bys nemel v Xauthority spravny cookie pro screen (kterej je v $DISPLAY, nebo na kterej chces zobrazit program), tak to selze a vyhodi presne tu hlasku, co ti to vyhodilo. Obvykle se to stava, kdyz se clovek snazi spustit program do X z jinyho usera, kterymu jsi nedal stejny cookie. Vetsinou se to resi tak, ze si zobrazis cookie pro dany $DISPLAY (xauth list) a pak ho pod druhym userem vlozis pro ten screen

xauth auth :0 . c611f0634f743dd3d06605684cb6204f
(Zkontroluj promennou XAUTHORITY, jestli obsahuje spravny soubor, melo by to byt $HOME/.Xauthority = napr. /home/karel/.Xauthority)

Snad ti to pomuze. Rozhodne bych ale nemenil prava, kdyz to skutecne nepotrebujes. Hodne veci bys mel mit moznost spustit pod obyc userem. Nektere veci (napr. smbmount...) potrebujou bezet pod rootem, to ti vetsinou napise, ze nemas pravo nebo ti sam rekne, ze musi bezet jako root, potom je dobry pouzit program sudo. V ostatnich pripadech se snazis s nejvetsi pravdepodobnosti delat neco, co bys nemel a jeste jednou to promysli.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.