Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Operativni sistemi
  • Kako pronaći listu Linux procesa pomoću komandne linije. Osnovne Linux komande

Kako pronaći listu Linux procesa pomoću komandne linije. Osnovne Linux komande

Systemd je sistemski i servisni menadžer za Linux operativni sistem. Dizajniran je da bude kompatibilan unatrag sa SysV init skriptama i da pruži korisne funkcije kao što su paralelno pokretanje sistemskih usluga u vrijeme pokretanja, aktiviranje demona na zahtjev, podrška snimaka stanja sistema i logika upravljanja uslugama zasnovana na zavisnosti. U CentOS-u 7, systemd zamjenjuje Upstart kao zadani init sistem.

U ovom članku ćemo pogledati proces upravljanja uslugama u systemd-u za korisnika CentOS 7. Ovo znanje će biti korisno u drugim distribucijama, jer se systemd već dugo koristi u Fedori i planira se u Ubuntu 14.10 i Debianu 8 Bilo da je ovo dobro ili ne, ostavićemo to iza scene.

U procesu čitanja ovog članka, možete isprobati systemd na klasičnom VPS-u i cloud VPS-u iz Infobox-a. Nastojimo da blagovremeno dodamo podršku za savremene operativne sisteme kako biste mogli da koristite najnovije tehnologije za efikasniji rad. Sama ideja o pisanju članka rodila se nakon još jednog pitanja korisnika o korištenju servisa u CentOS 7.

Uvod

Systemd donosi koncept systemd jedinica. Jedinice su predstavljene konfiguracijskim datotekama koje se nalaze u jednom od direktorija:
  • /usr/lib/systemd/system/- jedinice iz instaliranih RPM paketa.
  • /run/systemd/system/- Jedinice kreirane u toku rada. Ovaj direktorij ima prioritet nad direktorijem s instaliranim jedinicama iz paketa.
  • /etc/systemd/system/- jedinice koje kreira i kojima upravlja sistem administrator. Ovaj direktorij ima prednost u odnosu na direktorij jedinica kreiranih u vrijeme izvođenja.
Jedinice sadrže informacije o sistemskim uslugama, utičnicama za slušanje, sačuvanim snimcima stanja sistema i drugim objektima koji se odnose na init sistem.

Systemd tipovi jedinica:

  • .servis– sistemski servis
  • .target- grupa sistemskih jedinica
  • .automoun t - tačka automatskog montiranja sistema datoteka
  • .uređaj– fajl uređaja prepoznat od strane kernela
  • .mount- tačka montiranja sistema datoteka
  • .put- datoteka ili direktorij u sistemu datoteka
  • .scope- vanjski proces
  • .slice- grupa hijerarhijski organizovanih jedinica koje upravljaju sistemskim procesima
  • .snapshot- sačuvano stanje systemd menadžera
  • .socket– međuprocesna komunikaciona utičnica
  • .swap– Zamijenite uređaj ili zamijenite datoteku (paging file)
  • .timer- systemd tajmer

Glavne karakteristike systemd-a u CentOS-u 7

  • Aktivacija zasnovana na utičnici. Tokom pokretanja, systemd osluškuje utičnice za sve sistemske usluge, podržava ovu vrstu aktivacije i prosljeđuje utičnice ovim servisima čim servisi počnu. Ovo omogućava systemd-u ne samo da paralelno pokreće usluge, već daje i mogućnost ponovnog pokretanja usluga bez gubitka poruka koje su im poslane dok usluge nisu bile dostupne. Odgovarajuća utičnica ostaje dostupna i sve poruke su u redu čekanja.
  • Aktivacija bazirana na D-Bus-u. Sistemske usluge koje koriste D-Bus za međuprocesnu komunikaciju mogu se pokrenuti na zahtjev kada klijentska aplikacija pokuša komunicirati s njima.
  • Aktivacija zasnovana na uređaju. Sistemske usluge koje podržavaju aktivaciju zasnovanu na uređaju mogu se pokrenuti kada se određeni tip hardvera poveže ili postane dostupan.
  • Aktivacija zasnovana na putu. Sistemske usluge mogu podržati ovu vrstu aktivacije ako se promijeni stanje foldera ili direktorija.
  • Snimci stanja sistema. Sistem može sačuvati stanje svih jedinica i vratiti prethodno stanje sistema.
  • Upravljanje tačkama montiranja i automatskim montiranjem. Systemd prati i upravlja tačkama montiranja i automatskim montiranjem.
  • Agresivna paralelizacija Systemd paralelno pokreće sistemske usluge zbog upotrebe aktivacije zasnovane na utičnici. U kombinaciji sa uslugama koje podržavaju aktivaciju na zahtjev, paralelna aktivacija značajno smanjuje vrijeme pokretanja sistema.
  • Logika aktivacije transakcijske jedinice. Prije aktiviranja i deaktiviranja jedinica, systemd izračunava njihove ovisnosti, kreira privremenu transakciju i provjerava integritet ove transakcije. Ako je transakcija nedosljedna, systemd automatski pokušava da je popravi i ukloni nepotrebne poslove iz nje prije nego što se generiše poruka o grešci.
  • Unatrag kompatibilan sa SysV inicijalizacijom. SystemD u potpunosti podržava SysV init skripte kao što je opisano u specifikaciji Linux Standard Base (LSB), što olakšava migraciju na systemd.

Upravljanje uslugama

Prethodne verzije CentOS-a koristile su SysV ili Upstart. Skripte za inicijalizaciju nalazile su se u direktoriju /etc/rc.d/init.d/. Takve skripte su obično bile napisane na Bashu i omogućavale su administratoru da kontroliše stanje usluga i demona. U CentOS-u 7, init skripte su zamijenjene servisnim jedinicama.

Korištenjem servisnih jedinica .servis liče na init skripte. Za pregled, pokretanje, zaustavljanje, ponovno pokretanje, omogućavanje ili onemogućavanje sistemskih usluga, koristite naredbu systemctl. Timovi usluga I chkconfig i dalje su uključeni u sistem, ali samo iz razloga kompatibilnosti.


Kada koristite systemctl, navođenje ekstenzije datoteke nije obavezno.

Ispod su glavne komande systemctl:

  • systemctl start name.service- početak servisa.
  • systemctl stop name.service- servis stop
  • systemctl restart name.service- restart servisa
  • systemctl pokušaj ponovnog pokretanja name.service- restartujte uslugu samo ako je pokrenuta
  • systemctl ponovno učitavanje name.service- ponovno učitavanje konfiguracije usluge
  • systemctl status name.service- provjerite da li servis radi sa detaljnim izlazom statusa usluge
  • systemctl je-aktivno ime.usluga- provjerite da li servis radi jednostavnim odgovorom: aktivan ili neaktivan
  • systemctl list-jedinice --tip usluga --sve– prikaz statusa svih usluga
  • systemctl omogući name.service– aktivira uslugu (omogućava joj da se pokrene tokom pokretanja sistema)
  • systemctl onemogućuje name.service- deaktivirati uslugu
  • systemctl ponovo omogući name.service– deaktivira uslugu i odmah je aktivira
  • systemctl je omogućen name.service- provjerava da li je usluga aktivirana
  • systemctl list-unit-files --type service– prikazuje sve usluge i provjerava koje su aktivirane
  • systemctl maska ​​name.service- zamjenjuje servisni fajl simboličkom vezom na /dev/null, čineći jedinicu nedostupnom za systemd
  • systemctl demaskirati name.service- vraća servisni fajl, čineći jedinicu dostupnom za systemd

Rad sa Systemd ciljevima

Prethodne verzije CentOS-a sa SysV init ili Upstart uključivale su unapred definisani skup nivoa pokretanja, koji je predstavljao specifične modove za operacije, označene brojevima od 0 do 6. U CentOS-u 7, koncept nivoa pokretanja zamenjen je sistemskim ciljevima.

systemd ciljne datoteke .target su namijenjene da budu grupisane od strane drugih sistemskih jedinica putem lanca zavisnosti. Na primjer jedinica grafički.cilj, koji se koristi za pokretanje grafičke sesije, pokreće sistemske usluge GNOME Display Manager ( gdm.service) i Usluge računa ( accounts-daemon.service) i aktivira se multi-user.target. Zauzvrat multi-user.target pokreće druge sistemske usluge kao što je Network Manager ( NetworkManager.service) ili D-Bus ( dbus.service) i aktivirati druge ciljne jedinice osnovni.cilj.

CentOS 7 ima unapred definisane ciljeve, slične standardnom skupu nivoa pokretanja. Iz razloga kompatibilnosti, oni također imaju pseudonime za ove ciljeve koji se mapiraju direktno na SysV nivoe pokretanja.

  • poweroff.target (runlevel0.target)– gašenje i gašenje sistema
  • rescue.target (runlevel1.target)- podešavanje shele za oporavak
  • višekorisnički.target (runlevel2.target, runlevel3.target, runlevel4.target)- postavljanje negrafičkog višekorisničkog sistema
  • graphical.target (runlevel5.target)– postavljanje grafičkog višekorisničkog sistema
  • reboot.target(runlevel6.target)- gašenje i ponovno pokretanje sistema
Naredbe runlevel i telinit su i dalje dostupne, ali su ostavljene na sistemu zbog kompatibilnosti. Preporučuje se korištenje systemctl za promjenu ili prilagođavanje sistemskih ciljeva.

Da biste odredili koja se ciljna jedinica koristi po defaultu, korisna je sljedeća naredba: systemctl get-default.

Za pregled svih učitanih ciljnih jedinica koristite naredbu systemctl list-jedinice --tip cilj, i za pregled svih ciljnih jedinica općenito pomoću naredbe: systemctl list-jedinice --tip cilj --sve.

Za promjenu zadanog cilja, komanda će pomoći systemctl set-default name.target.

Da promijenite trenutni cilj: systemctl izolirati name.target. Komanda će pokrenuti ciljnu jedinicu i sve njene zavisnosti i odmah zaustaviti sve ostale.

U CentOS-u 7, systemctl zamjenjuje značajan broj komandi za upravljanje napajanjem. Stare komande se čuvaju radi kompatibilnosti, ali se preporučuje korištenje systemctl:
systemctl stop- zaustavlja sistem
systemctl poweroff- isključuje sistem
systemctl ponovno pokretanje- ponovo pokreće sistem

Kontroliranje systemd-a na udaljenoj mašini

Systemd vam omogućava da kontrolišete udaljenu mašinu preko SSH-a. Za upravljanje koristite naredbu:
systemctl --host [email protected] _name komanda, gdje je user_name ime korisnika, host_name je ime hosta kojim se daljinski upravlja, a komanda je systemd naredba koju treba izvršiti.

Tipičan systemd .service

Ovaj odjeljak će vam pomoći ako trebate brzo implementirati podršku za upravljanje uslugama iz systemd-a. Detaljne informacije o svim parametrima .service datoteke mogu se naći u odgovarajućem odjeljku Systemd dokumentacije.

Opis=Daemon za otkrivanje pada aplikacija After=syslog.target ExecStart=/usr/sbin/abrtd Type=forking WantedBy=multi-user.target
Pogledajmo dio . Sadrži opšte informacije o usluzi. Takav odjeljak postoji ne samo u servisnim jedinicama, već iu drugim jedinicama (na primjer, kada se upravlja uređajima, točkama montiranja itd.). U našem primjeru dajemo opis usluge i ukazujemo na to da bi demon trebao biti pokrenut nakon Syslog-a.

U sljedećem dijelu direktno sadrži informacije o našoj usluzi. Korišteni parametar ExecStart ukazuje na izvršnu datoteku našeg servisa. IN tip specificiramo kako usluga obavještava systemd kada završi s radom.

Završni dio sadrži informacije o cilju u kojem bi usluga trebala započeti. U ovom slučaju kažemo da se usluga treba pokrenuti kada je cilj aktiviran. multi-user.target.

Ovo je minimalni radni systemd servisni fajl. Nakon što napišete svoj, kopirajte ga u /etc/systemd/system/service_name.service za testiranje. Izvršite komande systemctl daemon-reload. Systemd će znati za uslugu i možete je pokrenuti.

Dodatne informacije

Odličan vodič za systemd iz RedHata, koji je osnova ovog članka.
Dokumentacija za pisanje vlastite systemd servisne jedinice.
"Systemd za administratore" od programera systemd na ruskom.

Zaključak

U ovom članku smo naučili kako upravljati uslugama CentOS 7. Naravno, ovo nije jedina karakteristika systemd-a, a drugi aspekti će biti razmatrani u budućnosti. Sam OS je dostupan skoro od kada je objavljen na klasičnom VPS-u i cloud VPS-u iz Infobox-a. Probajte systemd odmah. Ovo znanje će biti korisno u vezi sa tranzicijom mnogih distribucija na systemd.

Ako nađete grešku u članku, autor će je rado ispraviti. Molimo napišite PM ili email o tome.
U slučaju da ne možete ostaviti komentare na Habréu, možete ih napisati na blogu

Sistem linux je operativni sistem za više zadataka i više korisnika, što znači da značajan broj ljudi može pokrenuti mnogo različitih aplikacija u isto vrijeme na istom računaru. Ovaj sistem linux razlikuje se od MS-DOS sistema, na primjer, gdje samo jedna osoba može raditi na računaru u isto vrijeme.

Opcije Linux komande obično počinju sa znakom - , nakon čega možete odrediti nekoliko opcija odjednom. Na primjer, umjesto ls -l -F, možete upisati ls -lF.

Kao komandni argumenti linux mogu biti liste imena datoteka ili direktorija. Na primjer, argumenti naredbe cp su imena datoteka koje treba kopirati. Lista datoteka za kopiranje završava se imenom datoteke (ili direktorija) u koji će datoteke biti kopirane. Kada kopirate više datoteka, ime direktorija mora biti na kraju.

Kreirajte korisničko ime

Prije početka rada na svježe instaliranom sistemu linux, morate sebi kreirati ime za svakodnevni rad. Za ovo je nepoželjno koristiti root ime, koje je rezervirano za izvršavanje posebnih naredbi i za rad na održavanju sistema.

Da kreirate korisničko ime, prijavite se kao root i koristite naredbu useradd (ili adduser).

Ulogovati se

Obično, kada se prijavite, na ekranu se pojavljuje sljedeći upit:

Nakon unosa korisničkog imena i pritiska na tipku Enter Od vas će biti zatraženo da unesete lozinku:

localhost prijava: oleg Lozinka:

Nakon toga treba da unesete lozinku (upisani znakovi se ne vide na ekranu). Ako je lozinka unesena pogrešno, na ekranu će se pojaviti sljedeća poruka:

localhost prijava: oleg Lozinka: Prijava netočna prijava:

Nakon unosa ispravnog korisničkog imena i lozinke, sistem je prijavljen.

Virtuelna konzola

Sistemska konzola je monitor i tastatura direktno povezani sa računarom. Sistem linux, slično drugim verzijama sistema UNIX, omogućava pristup virtuelnim konzolama sa kojih se može istovremeno obavljati nekoliko sesija rada u sistemu.

Da biste se upoznali sa radom na virtuelnim konzolama, potrebno je da se prijavite na sistem i pritisnete kombinaciju tastera Alt-F2. Ponovo će se pojaviti upit za prijavu: (ovo je druga virtualna konzola). Da biste se vratili na prvu virtuelnu konzolu, morate pritisnuti kombinaciju tastera Alt-F1 (postoji povratak na već započetu sesiju).

Novoinstaliran sistem L inux omogućava, po pravilu, pristup do prvih šest virtuelnih konzola, kojima se može pristupiti kombinacijom tastera Alt-Fx. Tako, već u početnoj fazi, korisnik dobija moćan alat koji vam omogućava da radite u isto vrijeme u nekoliko sesija odjednom.

Školjke i komande

Najveći dio komunikacije sa sistemom linux se dešava kroz školjke (školjka). komandna školjka je program koji prihvata komande unete sa tastature i pretvara ih u uputstva za operativni sistem.

Nakon prijavljivanja, operativni sistem pokreće komandnu ljusku, nakon čega možete unositi komande. Naredba je prva riječ na komandnoj liniji. Sve ostalo na komandnoj liniji uzima se kao argument za ovu naredbu. Kao primjer, kreirajmo (mkdir) direktorij naredbi:

$ mkdir komande

Odjaviti se

Da biste se odjavili sa sistema, nakon prompta ljuske, unesite naredbu:

promijenite lozinku

Za promjenu lozinke unesite naredbu passwd. Naredba će od vas tražiti da unesete staru lozinku, a zatim novu. Tada će naredba tražiti da ponovo unesete novu lozinku za potvrdu:

Fajlovi i direktoriji

U operativnom sistemu linux koristi se pojam fajla ( fajl). Fajl je dio informacije koji ima svoje ime ( ime dokumenta). Trebali biste biti svjesni da se informacije pohranjuju na disku samo kao zasebne datoteke.

Uobičajeni nazivi datoteka u linux može imati do 255 znakova i sadržavati bilo koji znak osim znaka koda i / (kosa crta). Međutim, postoji veliki broj znakova koji se nalaze u ljusci školjka posebno značenje i koje se stoga ne preporuča uvrštavati u nazive. Ovo su sljedeći likovi:

! @ # $ & ~ % * () { } " " \ : ; >

Koncept datoteke je usko povezan s konceptom direktorija ( imenik). Direktorij je zbirka datoteka. Korisnici Windows Direktorij se naziva "fascikla", po analogiji s mapom koja sadrži mnogo različitih listova. Međutim, ova analogija je netačna, jer Direktorij ne sadrži stvarne datoteke, već veze do datoteka, kao i do drugih direktorija. Direktoriji imaju imena po kojima se mogu prepoznati. Pored toga, direktoriji formiraju strukturu stabla; drugim riječima, postoji jedan korijenski direktorij koji sadrži sve ostale direktorije unutar njega.

Prilikom pristupa datoteci, specificira se putanja (putanja), koja se može sastojati od naziva direktorija (imena direktorija ugniježđenih jedan u drugi), nakon čega slijedi naziv datoteke. Imena su međusobno odvojena kosom crtom (/). Na primjer:

U gornjem primjeru možete vidjeti da su imena odvojena znakom /. To je razlog zašto ga ne mogu zadržati.

Drvo imenika

U većini sistema linux koristi standardnu ​​lokaciju datoteke tako da je lako pronaći lokaciju ključnih sistemskih datoteka i programa. Direktoriji formiraju strukturu stabla koja počinje s / direktorij. Ovaj direktorij se također naziva korijenski direktorij. Direktno uz / direktorij su važni poddirektoriji /bin, /etc, /dev, /usr i drugi.

Trenutni imenik

U svakom trenutku, data naredba se odnosi na trenutni direktorij ( trenutni imenik). Kada se prijavite, vaš trenutni direktorij je postavljen na vaš početni direktorij (u našem slučaju, /home/oleg). Pozivajući se na datoteku, možete odrediti i punu putanju do ove datoteke i samo putanju iz trenutnog direktorija.

Prethodni primjer, kada se nađe, na primjer, u direktoriju /home/oleg/docs, izgledat će ovako:

$ manje mokshadharma/index.xml

Ako putanja datoteke (na primjer, mokshadharma/index.xml) počinje znakom koji nije / , tada se datoteka upućuje u odnosu na trenutni direktorij. Ovaj način postupanja se zove relativan način (relativni put).

Ako ime datoteke počinje sa / , onda sistem to tumači kao punu putanju, tj. putanju koja vodi do datoteke, počevši od korijenskog direktorija / (/home/oleg/docs/mokshadharma/index.xml) . Ovo se također zove apsolutni put (apsolutni put).

Pristup matičnom imeniku

U komandnoj ljusci bash uključeni u skoro sve novoinstalirane sisteme linux, početni direktorij se može označiti sa ~ . Na primjer, naredba:

$ manje ~/docs/mokshadharma/index.xml

je ekvivalentna naredbi:

$ manje /home/oleg/docs/mokshadharma/index.xml

Kretanje stablom direktorija

Komanda koja se koristi za kretanje kroz stablo direktorija je cd, skraćenica od promijeniti imenik(promjena imenika). Kao primjer korištenja naredbe cd, promijenite direktorij /home/oleg/docs/mokshadharma/:

$ cd ~/docs/mokshadharma

Sada iz trenutnog direktorija možete pristupiti datoteci sa sljedećom naredbom:

$ manje index.xml

Za promjenu u najbliži direktorij višeg nivoa, postoji naredba:

Da biste promijenili svoj početni direktorij, možete izdati naredbu cd bez argumenata:

Pregled sadržaja imenika

Naredba ls (skraćenica od lista) prikazuje listu datoteka i direktorija (opcija -F vam omogućava da dobijete potpunije informacije):

$ ls -F ~/docs/mokshadharma ch/ ch01.html ch02.html ch03.html cron.sh* docbook.xsl index.html index.xml pr01.html pt01.html style/

Na listi vidimo da je simbol / prikačen na kraj naziva poddirektorijuma, a simbol / na kraju naziva izvršne datoteke ( izvršni) je dodijeljen simbol * .

Kreiranje novih direktorija

Za kreiranje novog direktorija koristite naredbu mkdir (skraćenica za napravi direktorij). Na primjer, napravimo novi direktorij i unesemo ga:

$ mkdir primjer $ cd primjer

Kreiranje novih fajlova

Komande touch i cat se koriste za kreiranje datoteka.

Komanda touch kreira praznu datoteku:

$ dodirnite ime_datoteke

Da biste kreirali datoteku s naredbom cat, dizajniranu za preusmjeravanje izlaza, podaci sa standardnog ulaza (tastature) se šalju na njen ulaz, a izlaz naredbe se šalje u novu datoteku:

$ mačka > nova_datoteka

Nakon što se unese traženi tekst, pritisne se kombinacija tipki Enter i Ctrl-D ili Enter i Ctrl-C i sve uneseno će biti zapisano u new_file . Naravno, na ovaj način se kreiraju uglavnom kratki tekstualni fajlovi.

Promijenite vlasnika datoteke ili grupu datoteke

Samo superkorisnik može promijeniti vlasnika, vlasnik datoteke ili superkorisnik može promijeniti grupu. Da bi imao pravo na promjenu grupe, vlasnik dodatno mora biti član grupe kojoj želi dati prava na ovaj fajl.

Komanda rm (skraćenica od ukloniti):

$ rm index.xml $

Podrazumevano, naredba rm nije uvijek konfigurirana da izdaje upozorenja prije nego što se datoteka uništi.

Za uništavanje direktorija koristite naredbu rmdir, koja uništava samo prazan direktorij.

$ cd .. $ rmdir primjer $ ls -F $

Da biste uništili direktorije koji sadrže datoteke i poddirektorije, koristite naredbu rm -rf, koju treba koristiti izuzetno oprezno, jer. sadržaj je uništen bez upozorenja.

Pregled sadržaja datoteka

Naredbe more i cat se koriste za pregled sadržaja datoteka. Komanda more prikazuje sadržaj datoteke u komadima (jedan po jedan ekran), dok komanda mačka ispisuje cijelu datoteku odjednom. Poboljšana verzija više naziva se manje.

Za pregled sadržaja prikazanog komandom less, koristite tipke B i razmak (možete koristiti i Page Up i Page Down).

Dokumentacija ekrana

Gotovo svi sistemi porodice UNIX, uključujući sistem linux, imaju ekransku dokumentaciju ( man stranice). Njegovi tekstovi sadrže dokumentaciju o sistemskim komandama, resursima, konfiguracionim datotekama itd. i mogu se prikazati na ekranu tokom rada.

Za pristup dokumentaciji na ekranu koristite naredbu man (skraćenica od priručnik). Na primjer, da biste vidjeli opcije za naredbu ls, otkucajte naredbu.

Današnji članak u potpunosti je posvećen početnicima koji tek prave prve korake u fazi upoznavanja sa operativnim sistemom CentOS. U članku smo sakupili 20 najboljih naredbi koje će biti korisne u svakodnevnom radu, upravljanju serverom i osnovnom rješavanju problema.

Timovi

  • Početi uređivanje fajlova pritisnite O
  • Sačuvaj pritisnite Esc i :x!
  • Komanda cp (copy) se koristi za kopiranje datoteka. Kao primjer cp /etc/asterisk/extensions_custom.conf /home/admin/ . Ovo će dodati datoteku extensions_custom.conf u /home/admin direktorij.
  • Za promjenu vlasnika datoteke koristite chown (promjena vlasnika). Za promjenu vlasnika svih datoteka u /etc/asterisk direktoriju u korisnika asterisk dajte komandu chown –R asterisk:asterisk /etc/asterisk
  • Da biste dali određene dozvole datoteci, postoji naredba chmod. Na primjer, dajmo maksimalne dozvole datoteci /etc/asterisk/extensions_custom.conf pomoću chmod 777 /etc/asterisk/extensions_custom.conf komande.
  • Da biste kreirali "simboličku" vezu do datoteke, koristite naredbu ln. Na primjer, ln -s /storage/test /etc/test. Bitan! Datoteka /etc/test se ne smije kreirati prije nego što se naredba izvrši.
  • Direktorij /etc/init.d/ se koristi za ponovno pokretanje potrebnih servisa. Na primjer, /etc/init.d/httpd naredba restart će ponovo pokrenuti WEB server.
  • Da biste isključili određeni proces, možete koristiti njegov PID. Da biste ga pronašli, izdajte naredbu ps axu | grep -i zvjezdica | grep -v grep . PID procesa će biti u drugoj koloni.
  • Sada kada znate PID procesa, izdajte naredbu kill -0 #process_number. Kao primjer, ubijte -9 1738 .
  • Da biste saznali koji proces troši najviše CPU resursa, koristite naredbu top.
  • Ako trebate postaviti DNS server, uredite datoteku /etc/resolv.conf. Na primjer, otvorite datoteku sa vim /etc/resolv.conf i dodajte joj DNS server:
    • nameserver 8.8.8.8
  • Da vidite upotrebu RAM-a na CentOS-u, koristite naredbu free -m. Izlaz će biti prikazan u megabajtima, prikazujući ukupnu memoriju, iskorišteni i slobodni prostor.
  • Da biste provjerili korištenje memorije tvrdih diskova, izdajte naredbu df -h. Također ćete vidjeti ukupan, iskorišteni i slobodni prostor.
  • Da biste vidjeli veličinu određenog direktorija, koristite naredbu du. Na primjer, da odredite veličinu direktorija /etc/asterisk/, koristite du -sh /etc/asterisk/.
  • Ako trebate znati verziju instaliranog paketa, koristite naredbu rpm. Na primjer, provjere verzije yum dati naredbu rpm -qa | grep -i yum .
  • Često moramo instalirati razne programe. Sistem podrazumevano ima samo ono najosnovnije, a ako vam treba nešto specifično, moraćete ručno da instalirate programe. Instaliranje Linux programa je na neki način lakše nego na Windows. Ovdje se većina potrebnih programa nalazi u službenim spremištima, a da biste ih instalirali ili ažurirali, samo pokrenite nekoliko naredbi.

    U ovom članku ćemo pogledati kako se instaliraju paketi CentOS 7. Pogledajmo osnove rada sa yum menadžerom paketa, njegove mogućnosti, pronalaženje i rješavanje zavisnosti paketa.

    YUM (Yellowdog Updater Modified) je open source menadžer paketa koji je razvio RedHat za rukovanje RPM paketima. Omogućava korisnicima i administratorima sistema da instaliraju, uklanjaju i ažuriraju pakete na sistemima baziranim na RedHat-u.

    Program se distribuira pod GPL (General Public License) i svaki korisnik može pristupiti izvornom kodu ili čak poboljšati kod. Upravitelj paketa podržava povezivanje spremišta trećih strana i rješavanje zavisnosti za instaliranje paketa. Mogu se učitati različiti dodaci kako bi se poboljšalo Yumovo iskustvo.

    Uslužni program radi u konzoli, a njegova sintaksa je vrlo jednostavna:

    $ sudo yum options naredba ime paketa

    Prvo, pogledajmo osnovne naredbe upravitelja paketa:

    • instalirati- instalirati paket;
    • ažurirati- ažuriranje paketa ili sistema;
    • update-to- ažuriranje paketa na verziju;
    • ažuriranje minimalno- ažurirati samo ispravke grešaka;
    • nadograditi- kompletno ažuriranje sa obradom dodatnih karakteristika paketa i njihovih zavisnosti;
    • distro-sync- sinhronizacija stanja sistema ili paketa sa spremištem. Na primjer, ako je instalirana verzija 4 paketa, ali samo 3 u spremištu, tada će verzija biti degradirana;
    • ukloniti- ukloniti paket;
    • autoremove- očistiti više nepotrebnih paketa;
    • lista- prikazati listu paketa;
    • pruža- traženje paketa po funkcionalnosti;
    • traži- traženje paketa po imenu;
    • info- informacije o paketu;
    • cisto- očistite keš memoriju menadžera paketa;
    • grupe- upravljanje grupama paketa;
    • ponovo instalirati- ponovo instalirajte paket;
    • downgrade- nadogradite verziju paketa;
    • deplist- prikazati sve zavisnosti paketa;
    • repolist- prikazati listu spremišta;
    • fssnapshot- upravljanje snimcima stanja sistema;
    • provjeriti- provjerite integritet baze podataka paketa.

    Razmotrimo i dodatne opcije koje će vam možda trebati kada instalirate rpm CentOS:

    • -y- uvijek potvrdno odgovarati na pitanja komunalne službe;
    • -q- minimalni učinak;
    • -v- maksimalni učinak;
    • -OD- rad iz keša;
    • -x- ignorisati paket.

    Sada znate sve glavne značajke uslužnog programa, pogledajmo neke primjere rada s njim.

    Instaliranje paketa na CentOS 7

    Prije nego što pređete na instaliranje CentOS paketa, morate ažurirati listu spremišta i sistem na najnoviju verziju. Za ovo postoji naredba:

    Instaliranje CentOS paketa

    Da biste instalirali paket koji se nalazi u službenim repozitorijumima, samo trebate koristiti naredbu install. Samo upišite ovu naredbu i naziv paketa, na primjer za firefox:

    sudo yum instaliraj thunderbird

    Tokom instalacije, moraćete da potvrdite da želite da instalirate ovaj određeni program pritiskom na taster y. Da biste to izbjegli, koristite opciju -y:

    sudo yum -y instalirati thunderbird

    Za pregled informacija o instaliranom paketu koristite info komandu:

    sudo yum info thunderbird

    Za uklanjanje paketa koristite naredbu za uklanjanje:

    sudo yum uklonite thunderbird

    Pronalaženje CentOS paketa

    Ne znamo tačne nazive svih paketa. Ali yum podržava funkciju pretraživanja koja će vam pomoći da shvatite koji paket CentOS 7 da instalirate. Postoje dvije naredbe za pretraživanje. Prva je pretraga - omogućava vam da pronađete paket po imenu:

    sudo yum traži mysql

    Drugi vam omogućava da pronađete potreban paket pomoću naredbe koja vam je potrebna, u nekim slučajevima može biti vrlo zgodno:

    sudo yum pruža lspci

    Sada znate koji vam je paket potreban i instaliranje CentOS 7 rpm paketa sada se može obaviti vrlo brzo i ne morate otvarati mnogo foruma da biste pronašli informacije.

    CentOS grupe paketa

    Grupe paketa su takođe prilično zgodan alat. Uz to, ne možete instalirati pakete jedan po jedan, već instalirati cijelu grupu odjednom. Prvo pogledajte listu dostupnih grupa:

    sudo yum grupna lista

    sudo yum informacije o grupi "Standard Web Server"

    Onda. da instalirate grupu paketa, otkucajte:

    sudo yum group instalirajte "Standard Web Server"

    Slično, možete nadograditi grupu paketa tako da ne nadogradite cijeli sistem:

    sudo yum ažuriranje grupe "Standard Web Server"

    Ili uklonite:

    sudo yum group ukloni "Standard Web Server"

    Spremišta CentOS paketa

    Zvanični repozitoriji nemaju sve potrebne pakete. Ako se serverski programi tamo mogu pronaći bez poteškoća, onda će biti problema sa desktop programima, istim kodecima. Potrebno ih je instalirati iz spremišta trećih strana.

    Spremišta u CentOS se ne dodaju putem konfiguracijske datoteke, već se instaliraju preuzimanjem i instaliranjem rpm datoteke spremišta. Na primjer, jedno od najčešće korištenih spremišta treće strane je EPEL. Njegov instalater je u službenim spremištima, tako da da biste se povezali, samo pokrenite:

    sudo yum install epel-release

    Ali ova situacija nije sa svim repozitorijumima. Mnogi od njih drže instalacione datoteke kod kuće. Na primjer, spremište s različitim nux multimedijalnim softverom se drugačije instalira. Prvo morate preuzeti datoteku spremišta sa veze. Obavezno preuzmite najnoviju verziju inače ništa neće raditi.

    Na primjer, trenutno najnoviji

    wget http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

    Zatim instalirajte preuzeti paket sa yum:

    sudo yum install nux-dextop-release-0-5.el7.nux.noarch.rpm

    Zatim ažurirajte listu spremišta i možete instalirati pakete:

    sudo yum install vlc

    Pa, pogledajmo listu spremišta:

    sudo yum repolist

    Ovdje su prikazana sva dostupna spremišta. Da biste uklonili spremište, biće dovoljno ukloniti njegov paket.

    Instaliranje CentOS programa u GUI

    Ako ne volite da koristite terminal, instaliranje CentOS 7 softvera može se obaviti i preko grafičkog interfejsa. Ali ovdje su mogućnosti mnogo manje nego u terminalu. Koristite uslužni program "Programi", koji se nalazi u glavnom meniju:

    CentOS je besplatna distribucija zasnovana na izvornom kodu Red Hat Enterprise Linuxa, zapravo, napravljen je od ovih izvora bez skoro nikakvih promjena, programeri su samo izrezali sve Red Hat brendiranje. Ali za razliku od Red Hata, CentOS je potpuno besplatan i prima redovna ažuriranja kratko vrijeme nakon što su objavljeni za Red Hat, budući da su također napravljeni iz izvora.

    CentOS se vrlo često koristi kao operativni sistem za servere. U jednom od prethodnih članaka pogledali smo kako . Danas ćemo pogledati postavljanje CentOS 7 servera nakon instalacije. Pokrićemo sve osnovne postavke koje ćete morati promijeniti da biste pokrenuli svoj server.

    1. Postavljanje statičke IP adrese

    Prva stvar koju treba učiniti je postaviti mrežu. Personalni računari koriste DHCP za dobijanje IP adrese, a računar će imati drugu adresu svaki put kada se pokrene, server mora uvek da radi na istoj adresi, tako da mu dodeljujemo statičku IP adresu. Takođe morate da konfigurišete DNS i podrazumevani gateway. Ali prvo, instalirajte uslužni program net-tools:

    yum install net-tools

    Prvo, pogledajmo dostupna mrežna sučelja i trenutnu IP adresu:

    Sada možete nastaviti s konfiguracijom sučelja putem datoteke /etc/sysconfig/network-scripts/ifcfg-enp0s3, na primjer, koristeći vi editor:

    vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

    IPADDR = vaš_ip
    GATEWAY = gateway_to_access_the_network
    DNS1 = IP_adresa_DNS1
    DNS2 = IP_adresa_DNS2

    Nakon unošenja izmjena, ovaj fajl će izgledati ovako:

    Zatim ostaje ponovo pokrenuti mrežu kako biste primijenili nove postavke:

    restart servisne mreže

    Zatim, ako je potrebno, možete promijeniti IP adresu na isti način.

    2. Naziv računara

    Sledeća stvar koju treba da uradimo je da promenimo ime računara. Trenutni naziv računara je pohranjen u varijablu HOSTNAME:

    Da biste ga promijenili, trebate urediti datoteku /etc/hostname i zamijeniti staro ime hosta novim.

    vi /etc/hostname

    Također možete koristiti naredbu hostnamectl:

    hostnamectl set-hostname "hostname"

    3. Ažurirajte CentOS

    Nakon instalacije, uobičajeno je ažuriranje softvera na najnoviju verziju kako bi se instalirala sva sigurnosna ažuriranja. Da ažurirate listu paketa u spremištima i instalirate nove verzije, pokrenite sljedeću naredbu:

    yum update && yum upgrade

    4. Instalirajte pretraživač

    U mnogim slučajevima morate koristiti CentOS iz komandne linije bez GUI-ja, tako da će vam možda trebati pretraživač da pronađete nešto na Internetu ili provjerite zdravlje web lokacija iz komandne linije. Da instalirate pretraživač linkova, otkucajte:

    yum install links

    Možete pronaći druge pretraživače konzole za Linux, kao što su Lynx ili Elinks.

    5. Podešavanje vremenske zone

    Ispravna postavka vremenske zone je veoma važna za server. Ovo će ukloniti zabunu u zapisnicima i omogućiti vašim aplikacijama da prikažu tačan datum i vrijeme. Za konfiguraciju se koristi uslužni program timedatectl.

    Prvo nabavite listu vremenskih zona:

    timedatectl lista-vremenskih zona

    Zatim instalirajte onaj koji vam je potreban, na primjer, Europe/Kyiv:

    timedatectl set-timezone Europe/Kyiv

    Zatim provjerite:

    7. Podešavanje jezika

    Lokalizacija određuje jezik i kodiranje koji će se koristiti na vašem sistemu, na primjer, da biste omogućili ruski jezik, postavite vrijednost na ru_RU.UTF-8

    localectl set-locale LANG=ru_RU.UTF-8

    Onda da vidimo šta se desilo:

    Zatim postavite raspored tastature:

    localectl set-keymap us

    8. Onemogućite SELinux

    SELinux skup pravila namijenjen je kontroli pristupa datotekama na Linux sistemu, ali ako ih ne namjeravate koristiti, onda se ova funkcija može onemogućiti. Da biste to učinili, pokrenite:

    sed -i "s/(^SELINUX=).*/SELINUX=isključeno/" /etc/selinux/config

    Zatim ponovo pokrenite računar i proverite da li je funkcija zaista onemogućena:

    9. Kreirajte korisnika

    Nije bezbedno koristiti sistem kao superkorisnik, a još više nije bezbedno ostaviti otvoren pristup root nalogu preko ssh-a. Prvo kreirajte običnog korisnika i postavite lozinku za njega:

    useradd korisničko ime
    # lozinka za lozinku

    Zatim dodajte korisnika u grupu kotača kako biste omogućili korisniku da radi kao administrator:

    usermod -G wheel korisničko ime

    Sada ostaje da prilagodite sudo postavke, za ovo dodajte sljedeći red, ako već nije tamo:

    %točak SVE = (SVE) SVE

    10. Omogućite spremišta trećih strana

    Dodavanje spremišta treće strane na proizvodni server nije dobra ideja, au nekim slučajevima može dovesti do loših rezultata. Međutim, ponekad će vam možda trebati programi koji nisu u službenim spremištima. Stoga razmislite o tome kako dodati više spremišta.

    Za dodavanje Enterprise Linux spremišta (EPEL) pokrenite:

    yum instaliraj epel-release
    # rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

    10. SSH postavljanje

    Sa serverima najčešće moramo da radimo ne direktno, već preko mreže, preko SSH-a. Obično je SSH servis već instaliran i aktiviran, ali postoji nekoliko postavki koje je potrebno napraviti da bi ispravno radila. Prvo morate da konfigurišete upotrebu samo bezbednog protokola, da biste to uradili, otvorite datoteku /etc/ssh/ssh_config i uklonite liniju Protocol 2.1. I umjesto toga dodajte:

    Također morate onemogućiti prijavu kao superkorisnik:

    PermitRootLogin br

    11. Instalirajte Apache Web server

    Ako planirate da koristite mašinu kao web server, trebat će vam Apache. Pomoću njega možete hostirati web stranice, multimedijalni sadržaj, klijentske programe i još mnogo toga. Za instalaciju pokrenite:

    yum instaliraj httpd

    Kada je instalacija završena, prije nego što možete nastaviti s radom, morate dozvoliti HTTP u firewall-u:

    firewall-cmd --add-service=http
    # firewall-cmd -permanent -add-port=3221/tcp
    # firewall-cmd --reload

    Sada ostaje dodati Apache u startup:

    systemctl start httpd.service
    # systemctl omogućava httpd.service

    12. Instalirajte PHP

    PHP je moderna web aplikacija i skript jezik. Često se koristi kao programski jezik opšte namene. Da instalirate, pokrenite:

    Nakon instalacije, morate ponovo pokrenuti Apache:

    echo -e ""> /var/www/html/phpinfo.php

    Zatim otvorite generiranu datoteku u pretraživaču:

    linkovi http://127.0.0.1/phpinfo.php

    13. Instalacija baze podataka

    MariaDB je baza podataka bazirana na MySQL izvornom kodu. Red Hat distribucije Linuxa koriste MariaDB umjesto MySQL. Baze podataka su nezamjenjiva stvar na serveru, tako da bi postavljanje CentOS-a nakon instalacije trebalo uključivati ​​njegovu instalaciju. Da instalirate MariaDB, upišite:

    yum install mariadb-server mariadb

    Zatim pokrenite i dodajte startupu:

    systemctl start mariadb.service
    # systemctl omogući mariadb.service

    I dozvolite uslugu u firewall-u:

    firewall-cmd --add-service=mysql

    Ostaje pokrenuti konfiguracijsku skriptu:

    /usr/bin/mysql_secure_installation

    14. Instalirajte GCC

    GCC je skraćenica od GNU Compiler Collection i skup je kompajlera koji se smatraju standardom za kompajliranje programa na Linuxu. Ali se ne isporučuje sa CentOS-om prema zadanim postavkama, pa upišite:

    Zatim možete pogledati GCC verziju:

    15. Instalirajte Javu

    Java je opšte namene, objektno orijentisani programski jezik. Nije instaliran prema zadanim postavkama, tako da konfiguriranje CentOS 7 nakon instalacije može uključivati ​​njegovu instalaciju. Da biste to učinili, pokrenite:

    yum instaliraj java

    Zatim provjerite verziju:

    zaključci

    U ovom članku smo pogledali kako je server CentOS 7 konfigurisan nakon instalacije. Kao što vidite, postoji mnogo elementarnih radnji koje je poželjno uraditi prije korištenja servera u proizvodnji. Ako imate pitanja, pitajte u komentarima!

    Top Related Articles