Instaliranje LAMP-a (Linux, Apache, MySQL, PHP i PhpMyAdmin) u Gentoo Linux


Maksimalna izvedba postignuta kompajliranjem softvera iz izvora s Gentooom ima minimalan utjecaj, ako kao referencu uzmemo današnju obradu snage hardvera. Koja je onda svrha korištenja Gentooa kao platforme web poslužitelja, mogli biste se zapitati? Pa, najvažniji atribut koji ima Gentoo je njegova ekstremna fleksibilnost koju Portage može isporučiti na određenim zadacima i potpuna kontrola koju krajnji korisnik može postići nad cijelim sustavom, zbog činjenice da je Gentoo kompajliran i gradi iz izvora i ne koristi unaprijed zapakirane binarne datoteke kao većina distribucija Linuxa.

Ovaj vodič pruža postupak instalacije korak po korak za poznati LAMP stog (Linux, Apache, MySQL i PHP/PhpMyAdmin) koristeći minimalno Gentoo instalacijsko okruženje.

Zahtjevi

  1. Instalirano minimalno Gentoo Linux okruženje kao u ovom vodiču (Instalirajte Gentoo Linux)

Korak 1: Konfigurirajte statičku IP adresu

1. Prije nego nastavimo s instaliranjem LAMP skupa, sustav mora biti konfiguriran sa statičkom IP adresom, što je “obavezno” u slučaju poslužitelja. No, prije nego počnemo konfigurirati mrežne statičke postavke, upotrijebite naredbu ifconfig za prikaz imena kartica mrežnog sučelja.

ifconfig -a

Kao što vidite, naziv NIC-a može se razlikovati od ostalih uobičajenih naziva koji se koriste u Linuxu kao što su ethX, ensXX ili drugi, pa zabilježite ovo ime za daljnje postavke.

2. Ako ste prethodno koristili DHCP poslužitelj za svoju mrežu, svakako srušite i onemogućite DHCP klijent na vašem sustavu pomoću sljedećih naredbi (zamijenite IP adrese i uređaje svojim postavkama).

rc-update del dhcpcd default
/etc/init.d/dhcpcd stop
ifconfig eno16777736 down
ifconfig eno16777736 del 192.168.1.13 netmask 255.255.255.0
emerge –unmerge dhcpcd

3. Zatim stvorite simboličku vezu s mrežnog povratnog uređaja s nazivom povezanog sučelja vašeg NIC-a i izradite statičku konfiguracijsku datoteku za ovaj uređaj u /etc/conf.d/ staza.

ln -s /etc/init.d/net.lo  /etc/init.d/net.eno16777736
sudo nano /etc/conf.d/net.eno16777736

Uredite ovu datoteku uređaja sa sljedećim konfiguracijama.

config_eno16777736="192.168.1.25 netmask 255.255.255.0 brd 192.168.1.255"
routes_eno16777736="default via 192.168.1.1"
dns_servers_eno16777736="192.168.1.1 8.8.8.8"

4. Nakon završetka uređivanja statičkih konfiguracija NIC-a, pokrenite mrežno sučelje i provjerite mrežne postavke i vezu koristeći naredbe ifconfig i ping i je li sve uspješno konfigurirano dodajte ga za pokretanje procesa.

/etc/init.d/net.eno16777736 start
ifconfig
ping -c2 domain.tld
rc-update add net.eno16777736 default

Ako želite da DNS poslužitelji imena budu konfigurirani za cijeli sustav, uredite datoteku /etc/resolv.conf i dodajte niz poslužitelja imena za svaku DNS IP adresu.

Korak 2: Instalirajte LAMP

5. Nakon što završite s mrežnim postavkama, nastavite s instaliranjem LAMP stoga, ali ne prije nego što potvrdite Gentoo profile i ažurirate Portage stablo i sustav.

Za poslužitelj okrenut prema Internetu sa sigurnosnim zakrpama vjerojatno ćete htjeti koristiti Hardened profil koji mijenja postavke paketa za cijeli vaš sustav (maske, USE zastavice, itd.). Koristite sljedeće naredbe za popis i promjenu vašeg profila.

sudo eselect profile list
sudo eselect profile set 11

6. Nakon što postavite profil koji vam najviše odgovara, ažurirajte svoj sustav i Portage stablo.

sudo emerge --sync
sudo emerge --update @world

7. Sada je vrijeme da nastavite s instalacijom LAMP-a. Provjerite dokumentaciju Apache web poslužitelja za USE zastavice pomoću emerge –pv prekidača naredbe, zatim uredite Portage make.conf datoteku sa potrebnim USE zastavicama prije pokušaja instalirajte ga.

emerge -pv apache
nano /etc/portage/make.conf

8. Odaberite svoje USE zastavice za proces kompajliranja (možete ostaviti kako jest ako vaš poslužitelj ne zahtijeva određene module), zatim instalirajte Apache pomoću sljedeće naredbe.

emerge --ask www-servers/apache

9. Prije pokretanja usluge Apache pokrenite sljedeću naredbu da biste izbjegli pogrešku Naziv poslužitelja, zatim pokrenite httpd demon.

echo “ServerName localhost” >> /etc/apache2/httpd.conf

service apache2  start

OR

/etc/init.d/apache2 start

10. U sljedećem koraku instalirajte PHP dinamički skriptni jezik. Zbog bogatstva PHP modula, ovaj vodič će vam predstaviti veliki popis modula koji se koriste kao USE oznake, ali trebali biste se držati onih koje zahtijeva konfiguracija vašeg poslužitelja.

Prvo uzmite USE specifične zastavice za PHP pomoću donje naredbe.

emerge -pv php

11. Zatim uredite /etc/portage/make.conf datoteku i koristite sljedeće USE oznake za PHP5.5 (USE oznake moraju biti u jednom retku).

USE="apache2 php pam berkdb bzip2 cli crypt ctype exif fileinfo filter gdbm hash iconv ipv6 json -ldap nls opcache phar posix readline session simplexml spell ssl tokenizer truetype unicode xml zlib -bcmath calendar -cdb cgi -cjk curl -debug -embed -enchant -firebird -flatfile -fpm (-frontbase) ftp gd -gmp imap -inifile -intl -iodbc -kerberos -ldap-sasl -libedit libmysqlclient -mhash -mssql mysql mysqli -oci8-instant-client -odbc -pcntl pdo -postgres -qdbm -recode (-selinux) -sharedmem -snmp -soap -sockets -sqlite (-sybase-ct) -systemd -sysvipc -threads -tidy -wddx -xmlreader -xmlrpc -xmlwriter -xpm -xslt zip jpeg png pcre session unicode"

PHP_TARGETS="php5-5"

Druga metoda koju možete koristiti je ponavljanje USE zastavica za uključivanje željenih PHP modula i opcija u datoteku /etc/portage/package.use.

echo “dev-lang/php apache2 cgi ctype curl curlwrappers -doc exif fastbuild filter ftp hash inifile json mysql mysqli pdo pic posix sockets spell truetype xml zip” >> /etc/portage/package.use

12. Nakon što ste odabrali potrebne USE zastavice pomoću jedne od dvije predstavljene metode, instalirajte PHP sa sljedećom naredbom.

emerge --ask dev-lang/php

13. Proces nastanka PHP-a može potrajati, ovisno o resursima vašeg sustava, a nakon što završi recite Apacheu da koristi PHP module uređivanjem /etc/conf.d/apache2 datoteke i dodajte PHP5 na direktivu APACHE2_OPTS.

nano /etc/conf.d/apache2

Neka linija APACHE2_OPTS izgleda ovako.

APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D SSL -D SSL_DEFAULT_VHOST -D LANGUAGE -D PHP5"

Za dobivanje popisa instaliranih modula koristite sljedeću naredbu.

ls -al /etc/apache2/modules.d/

14. Za testiranje dosadašnje konfiguracije poslužitelja, kreirajte datoteku phpinfo u korijenskom direktoriju lokalnog hosta (/var/www/localhost/htdocs/) i ponovno pokrenite uslugu Apache, zatim usmjerite svoj preglednik na http://localhost/info.php ili http://system_IP/info.php.


echo "<!--?php phpinfo(); ?-->"  /var/www/localhost/htdocs/info.php
service apache2  restart

OR

/etc/init.d/apache2  restart

Ako dobijete isti rezultat kao na gornjoj slici, vaš poslužitelj je ispravno konfiguriran. Dakle, možemo krenuti naprijed s MySQL bazom podataka i instalacijom PhpMyAdmina.

15. Prije instaliranja MySQL baze podataka provjerite paket USE flags i uredite Portage make.conf ako je potrebno. Koristite sljedeće naredbe za provjeru i instalaciju baze podataka MySQL poslužitelja.

emerge -pv mysql
emerge --ask dev-db/mysql

16. Prije pokretanja MySQL poslužitelja provjerite je li MySQL baza podataka instalirana na vašem sustavu pomoću sljedeće naredbe.

/usr/bin/mysql_install_db

17. Sada pokrenite MySQL bazu podataka i osigurajte je koristeći mysql_secure_installation promjenom root lozinke, onemogućite root prijavu izvan lokalnog hosta, uklonite anonimnog korisnika i testirajte bazu podataka.

service mysql start
mysql_secure_installation

18. Za testiranje funkcionalnosti baze podataka prijavite se na MySQL izdavanjem naredbe u nastavku i izađite iz baze podataka s naredbom za izlazak.

mysql -u roo -p
mysql> select user,host from mysql.user;
mysql> quit;

19. Ako vam je potrebno grafičko sučelje za upravljanje MySQL poslužiteljem, instalirajte paket PhpMyAdmin pokretanjem ovih naredbi.

emerge -pv phpmyadmin
emerge  dev-db/phpmyadmin

20. Nakon što je paket kompajliran i instaliran, kreirajte konfiguracijsku datoteku za PhpMyAdmin kopiranjem njegove datoteke predloška i zamijenite zaporku blowfish_secret proizvoljnim nizom.

cp /var/www/localhost/htdocs/phpmyadmin/config.sample.inc.php  /var/www/localhost/htdocs/phpmyadmin/config.inc.php
nano /var/www/localhost/htdocs/phpmyadmin/config.inc.php

21. Testirajte proces prijave na PhpMyAdmin otvaranjem preglednika i korištenjem sljedećeg URL-a.

http://localhost/phpmyadmin

22. Ako je sve na svom mjestu, možda biste trebali automatski pokrenuti svoje usluge nakon ponovnog pokretanja tako da ih učinite dostupnima u cijelom sustavu pomoću sljedećih naredbi.

rc-update -v add apache2 default
rc-update -v add mysql default

To je sve! Sada imate dinamičko web okruženje s Apacheom, PHP skriptnim jezikom i relacijskom MySQL bazom podataka na visoko fleksibilnoj i prilagodljivoj poslužiteljskoj platformi koju osigurava Gentoo.