Титла: Малко за env и root Публикувано от: never_mind в Feb 11, 2008, 22:39 Имам въпрос: това ми е env при редовен потребител
а това след su
Защо повечето неща при env за root сочат към invisible ( редовният ми потребител ) и защо при root в PATH липсва /usr/local/sbin ? Титла: Малко за env и root Публикувано от: neter в Feb 11, 2008, 23:55 Да позная. Щом в env след su пише LOGNAME=invisible, значи системата ти е някоя RedHat производна. Все пак, казвай ги тези неща. Но и в Debian производните има доста променливи, които root придобива от потребителя, който е изпълнил su. Причината е точно тази, че този потребител е изпълнил su, затова тези променливи водят към него. Променливите на root се пригаждат към средата, в която влиза root, за да може да работи с тази среда. Ако излезеш от invisible и влезеш начисто като root, ще забележиш че променливите на root са други и си сочат само към него. Както ти самия би изглеждал и би се държал различно, ако влезеш в някоя стая и там намериш или не намериш гола жена. Средата е различна и ти се пригаждаш към нея, независимо че ти си си все ти и стаята е една и съща
![]() ![]() edit0: Забравих да ти кажа да си добавиш /usr/local/sbin в /root/.bashrc за променливата PATH щом ти трябва. edit1: Всъщност сега забелязах, че си сложил темата си в BSD секцията. Наистина ли си с някоя BSD производна или да преместим темата ти? Въпреки това, логиката която ти описах важи и за BSD производните, а и в тях LOGNAME е равно на потребителя, от който е изпълнена командата su. Титла: Малко за env и root Публикувано от: never_mind в Feb 12, 2008, 20:28 Да, с OpenBSD съм, /usr/local/sbin го има в /root/.kshrc ... и пак не става... а това със средата го разбрах... всъщност било нормално при su root да наследява env от предния потребител, за чист root трябва "su -" ... след "su -" вече си имам /usr/local/sbin в $PATH, но въпроса остава защо го нямам след "su" само, след като в env на invisible го има?
Титла: Малко за env и root Публикувано от: neter в Feb 13, 2008, 02:26 Хмм... за съжаление не съм разучавал какво е положението с разликите в променливите в OpenBSD при изпълнение на "su" или "su -". Провери дали shell-а на root не е различен при изпълнение на "su" и при изпълнение на "su -". Ако е различен, в зависимост от това за кои shell-ове става дума, rc файлът със системните променливи може да е различен и в отделните файлове да са описани различни пътища. За момента не мога да те упътя за друг вариант.
Титла: Малко за env и root Публикувано от: Hapkoc в Feb 13, 2008, 11:32 Това е нормално поведение. И под linux е така. Вярвам, че never_mind вече го е установил. Описано е в su(1).
Титла: Малко за env и root Публикувано от: romeo_ninov в Mar 01, 2008, 07:43
И не само по линукс, но и под Юникс. без тирето се променя само UID, докато с тире е еквивалентно (почти) на логин с този потребител. |