MC po su ukládá konfiguraci do nesprávného adresáře

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Dobry den.

Mam cerstvou instalaci Sparky Linuxu. Problem je v tom, ze Midnight Commander mi uklada konfiguraci kam nema, pokud si povysim prava na roota pomoci su.

Kdyz se prihlasim jako jarda, konfigurace MC se uklada do ~/.config/mc .

Po su se konfigurace ale uklada tamtez, (MC pise, ze ulozil konfiguraci do /home/jarda/.config/mc . Nasledne uzivatel jarda jiz nemuze ulozit konfiguraci, protoze mu MC bezici pod rootem na ni nastavil vlastnika root:root a prava jsou pouze pro cteni.

Pokud se na roota povysim pomoci su -, sudo bash nebo se tam prihlasim pres ssh jako jarda a nasledne zavolam su (i bez pomlcky), uklada se konfigurace do ~/.config/mc , tedy spravne do adresare /root......

Na vsech distrech, ktera jsem kdy mel, se MC choval po su podle ocekavani, tedy ukladal konfiguraci do /root.... Minimalne na Lubuntu a Debianu a nedavno na Manjaru to tak chodi.

Predpokladam, ze se jedna o nejake nastaveni prostredi, nedari se mi ale najit, kde je to nastavene.

V cem je tedy rozdil mezi Sparky a napriklad Debianem, ze na jednom to nechodi a na druhem ano? Nebo cim je zpusoben rozdil v prostredi mezi su a su - a kde to lze zmenit? Proc su (bez pomlcky) funguje jinak v lokalu a jinak pres ssh?

Diky za napady.
« Poslední změna: 26. 05. 2014, 17:56:48 od Petr Krčmář »


Lol Phirae

Re:MC po su uklada konfiguraci do nespravneho adresare.
« Odpověď #1 kdy: 26. 05. 2014, 10:36:29 »
Nebo cim je zpusoben rozdil v prostredi mezi su a su - a kde to lze zmenit? Proc su (bez pomlcky) funguje jinak v lokalu a jinak pres ssh?

Opravdu kvůli tomu bylo nutné zakládat vlákno?! RTFM  ::)

Citace
  -, -l, --login
         make the shell a login shell

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:MC po su uklada konfiguraci do nespravneho adresare.
« Odpověď #2 kdy: 26. 05. 2014, 10:47:48 »
Opravdu kvůli tomu bylo nutné zakládat vlákno?! RTFM  ::)

Citace
  -, -l, --login
         make the shell a login shell

Dekuji, manual si umim precist take, nicmene z "make the shell a login shell" jaksi nevyplyva, kde vznika rozdil v nastaveni prostredi mezi su a su - ve Sparky a proc takovy rozdil neni v Ubuntu, Debianu, Manjaru.... Taktez z toho nevyplyva, kde to muzu zmenit tak, aby se to chovalo ve Sparky stejne, jako ve vyjmenovanych distrech, abych nemusel furt myslet na psani pomlcky, jinak si domrsim konfiguraci MC uzivatele jarda.

Lol Phirae

Re:MC po su uklada konfiguraci do nespravneho adresare.
« Odpověď #3 kdy: 26. 05. 2014, 11:17:53 »
Dekuji, manual si umim precist take, nicmene z "make the shell a login shell" jaksi nevyplyva, kde vznika rozdil v nastaveni prostredi mezi su a su

Ne, evidentně neumíš. 6.2 Bash Startup Files, event. viz dokumentace k tvému alternativnímu shellu.

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:MC po su uklada konfiguraci do nespravneho adresare.
« Odpověď #4 kdy: 26. 05. 2014, 16:56:14 »
Bash startup files s tim zretelne nesouvisi. BTW, jsem se do nich koukal a nic nevykoukal, az mi sly oci sejdrem z porovnavani souboru.

Vec s MC se ma tak, ze: "WARNING: Configuration files was moved from your $HOME/.mc directory into XDG_CONFIG_* directories to respect ​FDO standard." Otazka je tedy spis opacna: Proc to funguje po staru na Blbuntu, kde je verze 4.8.1 a proc to funguje po novem zpusobu na Sparky, kde je 4.8.12, kdyz uvedena zmena mela nastat s verzi MC 4.8.0-pre1?

Konkretne MC se ridi promennou XDG_CONFIG_HOME, ktera prezije su, ale ne su - . Po su - je nedefinovana a MC asi najde na stare zvyky.

Takze to bude chtit nejakou obchcavku, ktera by nedala moc prace a fungovala obecne, treba i v pripade su z roota na uzivatele. Mozna vynulovat XDG_CONFIG_HOME z .bashrc nebo nastavit alias su na su - . Otazka je, jestli se tim neco pokazi a cim se pokazi vic. Pri vynulovani XDG_CONFIG_HOME by zase mohly mit problem aplikace spustene z terminalu. Cili nejlip asi nastavit XDG_CONFIG_HOME z .bashrc, ktery by se mel spustit po su a dat to do /etc/skel.


x14

  • ***
  • 182
    • Zobrazit profil
    • E-mail
Re:MC po su ukládá konfiguraci do nesprávného adresáře
« Odpověď #5 kdy: 27. 05. 2014, 23:57:17 »
Vypadá to na jinak nastavené sudo - mě dává sudo -s env | grep HOME
různé výsledky: HOME=/home/x14 a HOME=/root
a to podle toho, co je nastavené ve visudo hned na prvním funkčním řádku
Defaults        env_reset
nebo
Defaults        always_set_home

Hoď tam to druhé a uvidíš  :)

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:MC po su ukládá konfiguraci do nesprávného adresáře
« Odpověď #6 kdy: 28. 05. 2014, 00:52:38 »
Prikaz su snad na /etc/sudoers dlabe, ne?

x14

  • ***
  • 182
    • Zobrazit profil
    • E-mail
Re:MC po su ukládá konfiguraci do nesprávného adresáře
« Odpověď #7 kdy: 28. 05. 2014, 12:50:55 »
Prikaz su snad na /etc/sudoers dlabe, ne?
ouje, pravdu máš, byla půlnoc a já se zasekl na tom sudo  :) nicméně, takto to funguje u suda a tak tipuji, že to půjde nastavit i pro su (akorát někde jinde)

Re:MC po su ukládá konfiguraci do nesprávného adresáře
« Odpověď #8 kdy: 29. 05. 2014, 09:36:54 »
su není to samé co su - - samotným su se přihlásíš jako root, ale nepřebereš jeho cesty, jeho profil, nic. su -l ti převezme komplet prostředí daného uživatele. To, že ti to v daných distribucích funguje su stejně jako su -, bych bral spíše jako použití aliasů nebo něčeho podobného. Ve Fedoře mi taky funguji příkazy l - ls a ll - ls -la.

Když si vytvoříš alias, tak si myslím, že tím nic nepokazíš, protože nevidím jediný důvod, proč používat čistě su, ale tak zběhlý v tomhle nejsem. Našel jsem k tomu tohle, tam je sice důvod uveden, ale nějak mi to hlava nebere.

http://forums.anandtech.com/showthread.php?t=692444

JardaP .

  • *****
  • 11 064
    • Zobrazit profil
    • E-mail
Re:MC po su ukládá konfiguraci do nesprávného adresáře
« Odpověď #9 kdy: 29. 05. 2014, 10:32:57 »
@Withy14: Ano, to vim. Jen jsem neprisel na to, v cem je rozdil mezi Sparky a Debianem/Blbuntu, ze se tam su tvari spis jako su -. Alias jsem tam nastaveny nenasel, tak tim to asi nebude. Ale uz jsem to prebastlil. Rootovi jsem v .bashrc natvrdo nastavil XDG_CONFIG_HOME na /root/.config a do /etc/skel jsem narval modifikovany .bashrc, kde se to nastavuje na $HOME/.config. Cili to tak zdedi kazdy novy uzivatel a melo by byt vystarano.