Asennan LAMP-pakettia tämän ohjeen mukaan https://linuxconfig.org/how-to-install-lamp-ubuntu-18-04-bionic-beaver-linux-apache-mysql-php
Tuossa kiinnitti huomiota bash-komennon käyttö kohdassa "Test your LAMP Install".
sudo bash -c "echo -e '<?php\nphpinfo();\n?>' > /var/www/html/phpinfo.php"
Miksi tuo bash-komento on tuossa välissä? Eikö saman olisi saanut ilmankin? Kokeilin ajaa pelkän bash-komennon ilman parametrejä, ja se ei tehnyt mitään.
Mitä komento 'bash' tekee?
11
245
Vastaukset 11
- jokuvaan11
bash on komentotulkki ja sen kanssa ajetaan skriptejä.
- pois-se-bash
Bourne-Again SHell.
Turhaa kikkailua tuossa. Tyypillistä joillekin linuxhörhöille. Saman olisi voinut tehdä pelkällä echolla:
echo "<?php phpinfo(); ?>" >/var/www/html/phpinfo.php
Mahdollisesti sudo tuohon eteen, jos ei ole hakemistoon tarvittavia käyttöoikeuksia.
- Turbo-Urpo1
On siinä tiedoston sisällössä hiukan ero, tehdessä ohjeen mukaan tai lyhyemmällä tavalla.
𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘
OHJE OLI TÄMÄ
sudo bash -c "echo -e '<?php\nphpinfo();\n?>' > /var/www/html/phpinfo.php"
TULOS OLI TÄMÄ
<?php
phpinfo();
?>
𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘
LYHYT MUOTO
echo "<?php phpinfo(); ?>" >/var/www/html/phpinfo.php
TULOS TÄMÄ
<?php phpinfo(); ?>
𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘𐄘
Mutta käytännössä molemat "phpinfo.php" tiedostot toimivat samalla tavalla, vaikka oikeaoppinen rivitys lyhyt versiosta jääkin pois. Toinen asia johon kiinnitin huomiota oli tuo vanhahtava polku-määrittely ( /var/www/html/ ). Tässä ihan lähi päivinä pistän LAMP:an taas pystyyn ja samalla verestyy noinko se menee vieläkin.
Tuon "tasksel" avustajan käyttöä en suosittele, jota tuossa "bash-juttu" avaajan antaman linkin takana heti alussa esiteltiin. Tämä avustajahan sisältää nykyään 40 eri ohjelman asennus-scriptin, joista mikään ei taida olla loppuun asti viety. Tuon avustajan asennus:
ASENNUS
sudo apt install tasksel
KÄYTTÖ
tasksel
POISTO
sudo apt-get purge --auto-remove tasksel- tasksel.on.vakiovaruste
Tasksel tulee automaattisesti ainakin mini.isolta asennetun Ubuntun mukana. Sillä asensin itsekin viimeksi LAMP:n. Hyvin tuntuu toimivan. Ainakin itse uskallan sitä suositella. Ei tarvinnut asentaa erikseen mitään. Vaivattomampi tapa kuin asennella erikseen jokainen palikka. Mutta kukin tyylillään.
sudo bash -c .... bash ei välttämättä ole oletuskomentotulkki kaikissa järjestelmissä. Muita komentotulkkeja on sh, csh, zsh ja ksh. tcsh myös paljon käytössä. Voit kokeilla mitä !! tai !sudo tekee.
- oikeudet_kuntoon
Juu, lisäksi putkitus tiedostoon on vähän hankala. Ilman tuota bash-komennon ajoa tiedoston oikeudet ei välttämättä mene samalla käyttäjälle, kuin millä ohjelma ajettiin, vaan esim. apt-käyttäjälle, koska putkitus ei mene läpi sudo:lta tietoturvallisuuden vuoksi. Lisäksi syntaktisesti se olisi kaameaa sotkua. Nyt komennot, mitkä ajetaan sudo:n alla on selkeästi lainausmerkkien välissä.
oikeudet_kuntoon kirjoitti:
Juu, lisäksi putkitus tiedostoon on vähän hankala. Ilman tuota bash-komennon ajoa tiedoston oikeudet ei välttämättä mene samalla käyttäjälle, kuin millä ohjelma ajettiin, vaan esim. apt-käyttäjälle, koska putkitus ei mene läpi sudo:lta tietoturvallisuuden vuoksi. Lisäksi syntaktisesti se olisi kaameaa sotkua. Nyt komennot, mitkä ajetaan sudo:n alla on selkeästi lainausmerkkien välissä.
Helpompi kirjautua root- käyttäjäksi. Silloin putkitus helpompaa. Vaihtoehtona voi käyttää tee-komentoa jolloin saa oikeudet säilymään. Silloin tulee komennoista myös helposti pitkiä. Rootiksi pääsee sudo su - . Tuo "-" tärkeä. Miksi?
- lisää_tietoa
man su antaa tämän:
-, -l, --login
Tarjoa samankaltainen ympäristö kuin käyttäjä saisi
kirjautuessaan suoraa sisään.
En nyt tullut hullua hurskaammaksi, mitä tuo auttaa? Itselläni ainakin polkumäärittely vaihtuu myös ilman tuota, minkä arvelin olevan em. kommentin syynä? En ole koskaan käyttänyt tuota, vaikka "sudo su" on varsin yleinen komento. - Env_
lisää_tietoa kirjoitti:
man su antaa tämän:
-, -l, --login
Tarjoa samankaltainen ympäristö kuin käyttäjä saisi
kirjautuessaan suoraa sisään.
En nyt tullut hullua hurskaammaksi, mitä tuo auttaa? Itselläni ainakin polkumäärittely vaihtuu myös ilman tuota, minkä arvelin olevan em. kommentin syynä? En ole koskaan käyttänyt tuota, vaikka "sudo su" on varsin yleinen komento.su - määritys tarjoaa ko. käyttäjän (tässä tapauksessa root:in) ympäristömuuttujat. Ympäristömuuttujat voi tarkistaa komennolla env. Erityisesti kannattaa kiinnittää huomionsa PATH-muuttujaan sekä muuttujaan HOME.
Esim. echo $PATH ja echo $HOME su - vaihtaa kotihakemistoksi /root ja antaa root-käyttäjän polkumääritykset käyttöön. Jos käyttäjän kotihakemistoon kirjoitetaan tiedostoja root-oikeuksin se voi aiheuttaa outoja virheitä. sudo on yleinen, mutta on vielä systeemejä, joissa root-oikeudet saa su - komennolla. Miten sudo komennolla kotihakemistoksi /root käyttäjän kansion sijaan?
- eiavaaturhia
Mikko_Tku kirjoitti:
su - vaihtaa kotihakemistoksi /root ja antaa root-käyttäjän polkumääritykset käyttöön. Jos käyttäjän kotihakemistoon kirjoitetaan tiedostoja root-oikeuksin se voi aiheuttaa outoja virheitä. sudo on yleinen, mutta on vielä systeemejä, joissa root-oikeudet saa su - komennolla. Miten sudo komennolla kotihakemistoksi /root käyttäjän kansion sijaan?
sudo -s on paras rootille.
Ketjusta on poistettu 1 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1791681
- 81896
Ei enää ulkoteltta ruokaa.
Se oli sitten viimmeinen kerta kun tuonne teltalle menen.Laatu heikkenee joka vuosi ja annokset pienenee.Ei enää kiitos,39862En ole hetkeen sinulle kirjoittanut nainen
Vieläkin ajattelen sinua, jos voit uskoa. Tunteet minussa huutavat toivoa ja rakkautta, kun kylmä loogisuus taas pistää56801- 60658
Mitä eroavaisuuksia sinulla on
kaivattusi kanssa? Esim. luonteessa. Haittaavatko erot vai ovatko vain rikkaus?69620Olet niin tärkeä
Et edes tiedä sitä, tai ehkä tunnet sen… Sinussa on jotakin pysyvää, tuttua, turvallista, kodikasta.19561Mä olen tosi
Ylpeä sinusta 🫂 Ajatuksissani pyydän sulle paljon suojelusta ja varjelusta. Sinua rakastettaan ja susta välitetään. Mui38526Jos sussa toisessa on yhtään miestä
Ja kadut tekemisiäsi niin menet poliisin puheille, paljastat kaiken oman osuutesi ja kerrot mitä kaikkea se toinen on te36521- 19511