11 heinäkuuta, 2019

PTT: “su” -komento perii peruskäyttäjän PATH-rivin


Minun aikaisemmat Debian versiot ovat olleet niinkin vanhoja alustaltaan kuin 9.5, nyt kun päivitin palvelimen Busteriin, on muitakin muutoksia tapahtunut kuin vain verkkokorttini ajurin ongelmat.

Käytän usein root käyttäjään siirtymisessä “su” -komentoa, komento on hyvin vanha, se periaatteessa toimii kuten nykyisin useammin käytettävä “sudo” -komento mutta on käytännöllisempi silloin kun järjestelmästä löytyy oikea root -käyttäjä.

Huomasin Busterin päivityksen jälkeen sen ettei “su” -komento toimii enää kuten ennen, nimittäin mikään “sbin” hakemiston ohjelma ei löytynyt suoraan sitä pyydettäessä. Ongelma oli “su” -komennon muutos joka tapahtunut jossakin vaiheessa 9.5–10 versioiden välissä.

Tutkin tilannetta hetken aikaa ja huomasin että “su” -komennon kautta root käyttäjän “PATH “-rivi on vajavainen ja muistuttaa kovasti peruskäyttäjän omaavaa riviä. PATH-rivi on järjestelmämääritys, johon lisätään hakemistot, joissa olevia binäärejä voi ajaa mistä tahansa järjestelmästä, siten ettei koko hakemistorakennetta tarvitse antaa sovelluksen eteen.

Kysyin asiasta jälleen freenoden #debian -kanavalta ja sielläkin asiaa alettiin ihmettelemään ja lopputulokseksi saatiin se, että “su” perii sen käyttäjän PATH-rivin joka komennon käynnistää. Nykyinen tapa jolla saa rootin oman PATH-määrityksen käyttöön, on antaa komento seuraavanlaisesti:

“su -”

Tuo “ -” merkki on tärkeä, se kertoo järjestelmälle, että käyttäjä haluaa pyydetyn käyttäjän kaikki määritysasetukset käyttöönsä kun kirjautuminen sille tehdään.

Ei kommentteja: