Muokataan sivua PATH

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 1: Rivi 1:
PATH on erityisesti [[komentorivi]]llä käytettävä [[ympäristömuuttuja]], joka määrittelee mistä [[hakemisto]]ista suoritettavia ohjelmatiedostoja oletuksena haetaan. Oletetaan esimerkiksi, että [[käyttäjä]] haluaisi suorittaa ohjelmatiedoston <tt>/usr/sbin/[[iwconfig]]</tt>. Jos <tt>/usr/sbin</tt>:iä ei ole PATH-muuttujassa, joutuu käyttäjä ohjelman käynnistääkseen kirjoittamaan sen koko polun <tt>/usr/sbin/iwconfig</tt>. Jos taas kyseinen hakemisto on PATH:issä, tarvitsee hänen kirjoittaa vain iwconfig.  
PATH on erityisesti [[komentorivi]]llä käytettävä [[ympäristömuuttuja]], joka määrittelee mistä [[hakemisto]]ista suoritettavia ohjelmatiedostoja oletuksena haetaan. Oletetaan esimerkiksi, että [[käyttäjä]] haluaisi suorittaa ohjelmatiedoston /usr/sbin/[[iwconfig]]. Jos /usr/sbin:iä ei ole PATH-muuttujassa, joutuu käyttäjä ohjelman käynnistääkseen kirjoittamaan sen koko polun /usr/sbin/iwconfig. Jos taas kyseinen hakemisto on PATH:issä, tarvitsee hänen kirjoittaa vain iwconfig.  


Toisin kuin DOS:issa, Linuxissa ja muissa Unix-tyyppisissä järjestelmissä [[työhakemisto]] (eli se hakemisto missä käyttäjä kulloinkin on) ei oletuksena ole PATH:issä. Jos käyttäjä haluaa suorittaa työhakemistossaan olevan ajettavan tiedoston, tulee siihen viitata muodossa
Toisin kuin DOS:issa, Linuxissa ja muissa Unix-tyyppisissä järjestelmissä [[työhakemisto]] (eli se hakemisto missä käyttäjä kulloinkin on) ei oletuksena ole PATH:issä. Jos käyttäjä haluaa suorittaa työhakemistossaan olevan ajettavan tiedoston, tulee siihen viitata muodossa
  ./ohjelma_nimi
  ./ohjelma_nimi
Tämä johtuu [[tietoturva]]syistä, jos jokin ilkeämielinen käyttäjä olisi vaikkapa sijoittanut <tt>/tmp</tt>-hakemistoon [[haittaohjelma]]n nimeltä <tt>[[ls]]</tt>, niin työhakemiston ollessa PATH:issä tämä ohjelma ajettaisiin oikean <tt>ls</tt>-komennon sijaan, kun suorittaa komennon <tt>ls</tt> kyseisessä hakemistossa.
Tämä johtuu [[tietoturva]]syistä, jos jokin ilkeämielinen käyttäjä olisi vaikkapa sijoittanut /tmp-hakemistoon [[haittaohjelma]]n nimeltä ls, niin työhakemiston ollessa PATH:issä tämä ohjelma ajettaisiin oikean [[ls]]-komennon sijaan, kun suorittaa komennon [[ls]] kyseisessä hakemistossa.


Käyttäjän PATH-muuttujan sisältö saattaisi näyttää vaikkapa seuraavalta (ilman rivinvaihtoja):
Käyttäjän PATH-muuttujan sisältö saattaisi näyttää vaikkapa seuraavalta (ilman rivinvaihtoja):
Rivi 15: Rivi 15:
Huomaa, että nämä muutokset eivät jää voimaan, ellet lisää niitä [[komentotulkki|komentotulkin]] rc-tiedostoon (esim. [[bash]]issa .[[bashrc]]).
Huomaa, että nämä muutokset eivät jää voimaan, ellet lisää niitä [[komentotulkki|komentotulkin]] rc-tiedostoon (esim. [[bash]]issa .[[bashrc]]).


Jos usein kaipaa tiettyä ohjelmaa, joka ei löydy PATH-muuttujasta, esim. <tt>/usr/sbin/iwconfig</tt> kuten yllä, parempi ratkaisu kuin koko tämän hakemiston lisääminen voi olla [[symbolinen linkki|symbolisen linkin]] tekeminen omasta <tt>[[kotihakemisto|~]]/bin</tt>-hakemistosta (tai vastaava järjestelmänlaajuisesti hakemistosta <tt>/usr/local/bin</tt>) ja tämän oman hakemiston lisääminen PATH-muuttujaan.
Jos usein kaipaa tiettyä ohjelmaa, joka ei löydy PATH-muuttujasta, esim. /usr/sbin/iwconfig kuten yllä, parempi ratkaisu kuin koko tämän hakemiston lisääminen voi olla [[symbolinen linkki|symbolisen linkin]] tekeminen omasta [[kotihakemisto|~]]/bin-hakemistosta (tai vastaava järjestelmänlaajuisesti hakemistosta /usr/local/bin) ja tämän oman hakemiston lisääminen PATH-muuttujaan.


  [[mkdir]] ~/bin
  [[mkdir]] ~/bin
Rivi 23: Rivi 23:
== Ohjelmahakemistot ==
== Ohjelmahakemistot ==
Hakemistoja, jotka usein sisältyvät PATH:iin
Hakemistoja, jotka usein sisältyvät PATH:iin
* <tt>/usr/bin</tt>: useimmat ohjelmat
* /usr/bin: useimmat ohjelmat
* <tt>/bin</tt>: ohjelmat joita saatetaan tarvita myös järjestelmää käynnistettäessä tai korjattaessa
* /bin: ohjelmat joita saatetaan tarvita myös järjestelmää käynnistettäessä tai korjattaessa
* <tt>/usr/sbin</tt>: [[palvelin|palvelimet]] ja ylläpito-ohjelmat, joita tarvitaan vain normaalissa ajossa
* /usr/sbin: palvelimet ja ylläpito-ohjelmat, joita tarvitaan vain normaalissa ajossa
* <tt>/sbin</tt>: ylläpito-ohjelmat, joita tarvitaan myös erikoistilanteissa
* /sbin: ylläpito-ohjelmat, joita tarvitaan myös erikoistilanteissa
* <tt>/usr/local/bin</tt>: paikallisesti pakettihallinnan ohi asennetut ohjelmat
* /usr/local/bin: paikallisesti pakettihallinnan ohi asennetut ohjelmat
* <tt>/usr/local/sbin</tt>: paikallisesti pakettihallinnan ohi asennetut ylläpito-ohjelmat
* /usr/local/sbin: paikallisesti pakettihallinnan ohi asennetut ylläpito-ohjelmat
* <tt>/home/*/bin</tt>: käyttäjien itsensä ilman ylläpito-oikeuksia asentamat ohjelmat
* /home/*/bin: käyttäjien itsensä ilman ylläpito-oikeuksia asentamat ohjelmat
* <tt>/opt/bin</tt>: ylläpidon asentamat ohjelmat, joita ylläpito jostakin syystä ei halua yllämainittuihin hakemistoihin; usein isoja paketinhallinnan ohi asennettuja ohjelmistoja
* /opt/bin: ylläpidon asentamat ohjelmat, joita ylläpito jostakin syystä ei halua yllämainittuihin hakemistoihin; usein isoja paketinhallinnan ohi asennettuja ohjelmistoja
* <tt>/usr/games</tt>: [[pelit]] joissakin jakeluissa (mm. [[Debian]] ja [[Fedora]])
* /usr/games: pelit, joissakin jakeluissa (mm. debian)
* <tt>/usr/X11R6/bi</tt>n: ennen [[X]]:n ohjelmat olivat eri hakemistoissa, nykyään hakemistossa <tt>/usr/bin</tt>
* /usr/X11R6/bin: ennen X:n ohjelmat olivat eri hakemistoissa, nykyään hakemistossa /usr/bin


Tavalliset käyttäjät eivät pääsääntöisesti tarvitse sbin-hakemistojen ohjelmia, mutta esimerkiksi [[Fedora]]ssa
Tavalliset käyttäjät eivät tarvitse sbin-hakemistojen ohjelmia, mutta esimerkiksi Redhatissa
ne ovat nykyään aina mukana [https://fedoraproject.org/wiki/Features/SbinSanity], jotta [[sudo]] yms. toimisi tavallisilla käyttäjillä (eikä siis tarvitse erottaa ylläpitäjiä ja muita). Yksittäisiä ohjelmia voi lisätä polkuun [[symbolinen linkki|symbolisilla linkeillä]] polussa olevista hakemistoista (katso yllä).
ne ovat nykyään aina mukana, jotta sudo yms. toimisi tavallisilla käyttäjillä (eikä siis tarvitse erottaa ylläpitäjiä ja muita). Yksittäisiä ohjelmia voi lisätä polkuun symbolisilla linkeillä polussa olevista hakemistoista (katso yllä).


Joskus voi olla tarvetta lisätä muitakin hakemistoja polkuun, lähinnä [[Portaali:Ohjelmistokehitys|ohjelmistokehityksen]] yhteydessä.
Joskus voi olla tarvetta lisätä muitakin hakemistoja polkuun, lähinnä [[Portaali:Ohjelmistokehitys|ohjelmistokehityksen]] yhteydessä.
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)
Noudettu kohteesta ”https://www.linux.fi/wiki/PATH