Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • në shtëpi
  • OS
  • Si të gjeni një listë të proceseve Linux duke përdorur vijën e komandës. Komandat më të thjeshta Linux

Si të gjeni një listë të proceseve Linux duke përdorur vijën e komandës. Komandat më të thjeshta Linux

Systemd është një menaxher sistemi dhe shërbimi për sistemin operativ Linux. Ai është projektuar që të jetë i pajtueshëm me skriptet fillestare të SysV dhe të ofrojë veçori të dobishme si funksionimi i shërbimeve të sistemit paralelisht në kohën e nisjes, aktivizimi i demonëve sipas kërkesës, ruajtja e pamjeve të gjendjes së sistemit dhe logjika e kontrollit të shërbimit të bazuar në varësi. Në CentOS 7, systemd zëvendëson Upstart si sistemin fillestar të parazgjedhur.

Në këtë artikull do të shikojmë procesin e menaxhimit të shërbimeve në systemd për një përdorues të CentOS 7. Kjo njohuri do të jetë e dobishme edhe në shpërndarjet e tjera, pasi systemd është përdorur prej kohësh në Fedora dhe është planifikuar për Ubuntu 14.10 dhe Debian 8. Ne do ta lërë prapa skenës.

Ndërsa lexoni këtë artikull, mund të provoni systemd në VPS klasike dhe në cloud VPS nga Infobox. Ne përpiqemi të shtojmë mbështetje për sistemet moderne operative në kohën e duhur, në mënyrë që të mund të përdorni teknologjitë më të fundit për të punuar në mënyrë më efikase. Vetë ideja për të shkruar një artikull lindi pas një pyetjeje tjetër nga përdoruesit në lidhje me përdorimin e shërbimeve në CentOS 7.

Prezantimi

Systemd sjell konceptin e njësive të sistemuara. Njësitë përfaqësohen nga skedarët e konfigurimit të vendosura në një nga drejtoritë:
  • / usr / lib / systemd / system /- njësi nga paketat e instaluara RPM.
  • / ekzekuto / systemd / system /- njësitë e krijuara në kohën e ekzekutimit. Kjo direktori ka përparësi ndaj drejtorisë me njësi të instaluara nga paketat.
  • / etc / systemd / system /- njësitë e krijuara dhe të menaxhuara nga administratori i sistemit. Kjo direktori ka përparësi ndaj drejtorisë së njësive të krijuara në kohën e ekzekutimit.
Njësitë përmbajnë informacione rreth shërbimeve të sistemit, prizave të dëgjimit, pamjeve të ruajtura të gjendjeve të sistemit dhe objekteve të tjera që lidhen me sistemin init.

Llojet e njësive të sistemuara:

  • .shërbim- shërbimi i sistemit
  • .objektiv- një grup njësish të sistemuara
  • .automoun t - pika e montimit automatik të sistemit të skedarëve
  • .pajisje- skedari i pajisjes i njohur nga kerneli
  • .mali- pika e montimit të sistemit të skedarëve
  • .rrugë- një skedar ose drejtori në sistemin e skedarëve
  • .fushëveprimi- një proces i krijuar nga jashtë
  • .fetë- një grup njësish të organizuara në mënyrë hierarkike që menaxhojnë proceset e sistemit
  • .fotografi- gjendja e ruajtur e menaxherit systemd
  • .prizë- komunikimi ndërprocesor i prizës
  • .këmbë- Ndërroni pajisjen ose shkëmbeni skedarin (skedarin e shkëmbimit)
  • .kohëmatësi- kohëmatës i sistemuar

Karakteristikat kryesore të systemd në CentOS 7

  • Aktivizimi i bazuar në fole... Në kohën e nisjes, systemd dëgjon bazat për të gjitha shërbimet e sistemit, mbështet këtë lloj aktivizimi dhe transferon bazat te këto shërbime menjëherë pas fillimit të shërbimeve. Kjo jo vetëm që lejon systemd-in të nisë shërbimet paralelisht, por gjithashtu ofron mundësinë për të rifilluar shërbimet pa humbur asnjë mesazh të dërguar tek ai kur shërbimet nuk ishin të disponueshme. Priza përkatëse mbetet e disponueshme dhe të gjitha mesazhet janë në radhë.
  • Aktivizimi i bazuar në D-Bus... Shërbimet e sistemit që përdorin D-Bus për komunikim ndërprocesor mund të nisen sipas kërkesës kur një aplikacion klient përpiqet të komunikojë me ta.
  • Aktivizimi i bazuar në pajisje... Shërbimet e sistemit që mbështesin aktivizimin e bazuar në pajisje mund të lansohen kur lidhet ose vihet në dispozicion një lloj i caktuar pajisjeje.
  • Aktivizimi i bazuar në rrugë... Shërbimet e sistemit mund ta mbështesin këtë lloj aktivizimi nëse ndryshon gjendja e një dosjeje ose drejtorie.
  • Pamjet e gjendjes së sistemit... Sistemi mund të ruajë gjendjen e të gjitha njësive dhe të rivendosë gjendjen e mëparshme të sistemit.
  • Pika e montimit dhe menaxhimi i montimit auto... Systemd monitoron dhe menaxhon pikat e montimit dhe montimit automatik.
  • Paralelizim agresiv Systemd nis shërbimet e sistemit paralelisht për shkak të përdorimit të aktivizimit të bazuar në prizë. Kur kombinohet me shërbimet që mbështesin aktivizimin sipas kërkesës, aktivizimi i njëkohshëm redukton ndjeshëm kohën e nisjes së sistemit.
  • Logjika e transaksionit për aktivizimin e njësive... Përpara aktivizimit dhe çaktivizimit të njësive, systemd llogarit varësitë e tyre, krijon një transaksion të përkohshëm dhe verifikon integritetin e atij transaksioni. Nëse një transaksion është i paqëndrueshëm, systemd automatikisht përpiqet ta rregullojë atë dhe të heqë punët e panevojshme prej tij përpara se të gjenerojë një mesazh gabimi.
  • E përputhshme prapa me inicializimin e SysV... SystemD mbështet plotësisht skriptet init SysV siç përshkruhet në specifikimin Linux Standard Base (LSB), duke e bërë të lehtë migrimin në systemd.

Menaxhimi i shërbimit

Versionet e mëparshme të CentOS përdorën SysV ose Upstart. Skriptet e inicializimit ishin vendosur në drejtori /etc/rc.d/init.d/... Skriptet e tilla zakonisht shkruheshin në Bash dhe i lejonin administratorit të menaxhonte gjendjen e shërbimeve dhe demonëve. Në CentOS 7, skriptet init janë zëvendësuar me njësi shërbimi.

Me anë të përdorimit të njësive të shërbimit .shërbim ngjajnë me skriptet init. Për të parë, nisur, ndalur, rindezur, aktivizuar ose çaktivizuar shërbimet e sistemit, përdorni komandën systemctl... Komandat shërbimi dhe chkconfig janë ende të përfshira në sistem, por vetëm për arsye përputhshmërie.


Zgjatja e skedarit është opsionale kur përdorni systemctl.

Më poshtë janë komandat bazë systemctl:

  • systemctl emri i fillimit.service- nisja e shërbimit.
  • systemctl emri i ndalesës.shërbimi- ndalim shërbimi
  • systemctl rinisni emrin.service- rifillimi i shërbimit
  • systemctl provo-rinis emrin.shërbim- rinisja e shërbimit vetëm nëse është në punë
  • systemctl rifresko emrin.shërbim- ringarkimi i konfigurimit të shërbimit
  • systemctl emri i statusit.shërbimi- duke kontrolluar nëse shërbimi po funksionon me një dalje të detajuar të statusit të shërbimit
  • systemctl është emri aktiv.shërbim- kontrolloni nëse shërbimi funksionon me një përgjigje të thjeshtë: aktive ose joaktive
  • systemctl list-njësi --lloj shërbimi --të gjitha- shfaqja e statusit të të gjitha shërbimeve
  • systemctl enable name.service- aktivizon shërbimin (ju lejon të filloni gjatë nisjes së sistemit)
  • systemctl çaktivizon emrin.shërbim- çaktivizon shërbimin
  • systemctl reenable emër.shërbim- çaktivizon shërbimin dhe e aktivizon menjëherë
  • systemctl është – emri i aktivizuar.shërbimi- kontrollon nëse shërbimi është i aktivizuar
  • systemctl list-unit-files --shërbim tip- shfaq të gjitha shërbimet dhe kontrollon se cilat janë të aktivizuara
  • systemctl emri i maskës.shërbim- zëvendëson skedarin e shërbimit me një lidhje simbolike në / dev / null, duke e bërë njësinë të paarritshme për systemd
  • systemctl demaskoj emrin.shërbim- kthen një skedar shërbimi, duke e bërë njësinë të disponueshme për systemd

Puna me objektivat Systemd

Versionet e mëparshme të CentOS me SysV init ose Upstart përfshinin një grup të paracaktuar nivelesh ekzekutimi, të cilat përfaqësonin mënyra specifike për operacionet, të numëruara nga 0 deri në 6. Në CentOS 7, koncepti i niveleve të ekzekutimit u zëvendësua nga objektivat e sistemuar.

Skedarët e synuar të sistemuar .objektiv janë krijuar për të grupuar njësi të tjera të sistemuara së bashku përmes një zinxhiri varësish. Për shembull njësi grafike.cak, i cili përdoret për të nisur një sesion grafik, lëshon shërbimet e sistemit të menaxherit të ekranit GNOME ( gdm.shërbim) dhe Shërbimi i Llogarive ( llogaritë – daemon.shërbim) dhe aktivizohet shumëpërdorues.objektiv... Nga ana tjetër shumëpërdorues.objektiv fillon shërbime të tjera të sistemit si Menaxheri i Rrjetit ( NetworkManager.service) ose D-Bus ( dbus.shërbim) dhe aktivizon njësitë e tjera të synuara bazë.cak.

CentOS 7 ka objektiva të paracaktuara të ngjashëm me grupin standard të niveleve të ekzekutimit. Për arsye të përputhshmërisë, ata gjithashtu kanë pseudonime për këto qëllime, të cilat janë të lidhura drejtpërdrejt me nivelet e ekzekutimit të SysV.

  • poweroff.target (runlevel0.target)- mbyllja dhe mbyllja e sistemit
  • shpëtim.target (runlevel1.target)- personalizimi i guaskës së rikuperimit
  • multi–user.target (runlevel2.target, runlevel3.target, runlevel4.target)- vendosja e një sistemi jografik me shumë përdorues
  • graphical.target (runlevel5.target)- vendosja e një sistemi grafik me shumë përdorues
  • reboot.target (runlevel6.target)- mbyllni dhe rindizni sistemin
Komandat runlevel dhe telinit janë ende të disponueshme, por janë lënë në sistem për arsye të pajtueshmërisë. Rekomandohet përdorimi i systemctl për të ndryshuar ose personalizuar objektivat e sistemit.

Komanda e mëposhtme është e dobishme për të përcaktuar se cila njësi e synuar është e paracaktuar: systemctl get – default.

Për të parë të gjitha njësitë e synuara të ngarkuara, përdorni komandën systemctl list-units --type target, dhe për të parë të gjitha njësitë e synuara në përgjithësi me komandën: systemctl list-njësitë --type target --all.

Për të ndryshuar objektivin e paracaktuar, komanda do të ndihmojë systemctl set-default emri.target.

Për të ndryshuar qëllimin tuaj aktual: systemctl emër izolimi.objektiv... Komanda do të nisë njësinë e synuar dhe të gjitha varësitë e saj dhe do të ndalojë menjëherë të gjitha të tjerat.

Në CentOS 7, systemctl zëvendëson një numër të konsiderueshëm komandash të menaxhimit të energjisë. Komandat e mëparshme janë ruajtur për pajtueshmërinë, por rekomandohet përdorimi i systemctl:
systemctl ndal- ndalon sistemin
systemctl poweroff- fiket sistemin
systemctl rindezje- rinis sistemin

Menaxhimi i sistemit në një makinë të largët

Systemd ju lejon të kontrolloni një makinë në distancë mbi SSH. Për të menaxhuar, përdorni komandën:
systemctl --host [email i mbrojtur] komanda _name ku user_name është emri i përdoruesit, host_name është emri i hostit që kontrollohet nga distanca dhe komanda është komanda systemd për t'u ekzekutuar.

Tipike systemd .shërbim

Ky seksion do t'ju ndihmojë nëse keni nevojë të mbështesni shpejt menaxhimin e shërbimit nga systemd. Për detaje mbi të gjitha opsionet në skedarin .service, shihni seksionin përkatës të dokumentacionit systemd.

Përshkrimi = Daemon për të zbuluar aplikacionet që përplasen Pas = syslog.target ExecStart = / usr / sbin / abrtd Lloji = depërtim WantedBy = multi-user.target
Le t'i hedhim një sy seksionit ... Ai përmban informacion të përgjithshëm në lidhje me shërbimin. Ky seksion është i disponueshëm jo vetëm në njësitë e shërbimit, por edhe në njësi të tjera (për shembull, kur menaxhoni pajisjet, pikat e montimit, etj.). Në shembullin tonë, ne japim një përshkrim të shërbimit dhe tregojmë që daemon duhet të fillojë pas Syslog.

Në pjesën tjetër përmban drejtpërdrejt informacion në lidhje me shërbimin tonë. Parametri i përdorur ExecStart tregon skedarin e ekzekutueshëm të shërbimit tonë. V Lloji ne specifikojmë se si shërbimi njofton systemd se ka përfunduar fillimin.

Seksioni përfundimtar përmban informacion në lidhje me qëllimin për të cilin shërbimi duhet të fillojë. Në këtë rast, ne themi se shërbimi duhet të fillojë kur objektivi është aktivizuar. shumëpërdorues.objektiv.

Ky është një skedar shërbimi minimal funksional i sistemit. Pasi të keni shkruar tuajin, kopjojeni atë në /etc/systemd/system/service_name.service për testim. Ekzekutoni komandat systemctl daemon-reload... Systemd do të dijë për shërbimin dhe ju do të jeni në gjendje ta filloni atë.

informacion shtese

Një udhëzues i shkëlqyer për systemd nga RedHat, i cili përbën bazën e këtij artikulli.
Dokumentacioni për të shkruar njësinë tuaj të shërbimit systemd.
"Systemd for Administrators" nga zhvilluesi systemd në Rusisht.

konkluzioni

Në këtë artikull mësuam se si të menaxhojmë shërbimet CentOS 7. Sigurisht, ky nuk është funksioni i vetëm i systemd dhe aspekte të tjera të tij do të diskutohen në të ardhmen. Vetë OS ka qenë i disponueshëm pothuajse që nga koha e lëshimit në VPS klasike dhe VPS cloud nga Infobox. Provoni systemd tani. Kjo njohuri do të jetë e dobishme në lidhje me migrimin e shumë shpërndarjeve në systemd.

Nëse gjeni një gabim në artikull, autori me kënaqësi do ta rregullojë atë. Ju lutemi shkruani në PM ose e-mail për këtë.
Në rast se nuk mund të lini komente në Habré, mund t'i shkruani ato në blog

Sistemi Linuxështë një sistem operativ me shumë detyra dhe me shumë përdorues, që do të thotë se një numër i konsiderueshëm njerëzish mund të ekzekutojnë shumë aplikacione të ndryshme në të njëjtën kohë në të njëjtin kompjuter. Ky sistem Linux ndryshon nga MS-DOS, për shembull, ku vetëm një person mund të punojë në një kompjuter në të njëjtën kohë.

Opsione Komandat Linux zakonisht fillon me një karakter -, pas së cilës mund të specifikoni disa opsione në të njëjtën kohë. Për shembull, në vend të komandës ls -l -F, mund të futni komandën ls -lF.

Si argumente komanduese Linux mund të shfaqen lista të emrave të skedarëve ose drejtorive. Për shembull, argumentet e komandës cp janë emrat e skedarëve që do të kopjohen. Lista e skedarëve të kopjuar mbyllet me emrin e skedarit (ose drejtorisë) ku do të kopjohen skedarët. Kur kopjoni më shumë se një skedar, duhet të ketë një emër drejtorie në fund.

Krijo emrin e përdoruesit

Para fillimit të punës në një sistem të sapo instaluar Linux ju duhet të bëni një emër për punën tuaj të përditshme. Është e padëshirueshme të përdoret emri rrënjë për këtë, i cili është i rezervuar për ekzekutimin e komandave speciale dhe për punën për ruajtjen e shëndetit të sistemit.

Për të krijuar një emër përdoruesi, hyni si rrënjë dhe përdorni komandën useradd (ose adduser).

Hyni në sistem

Në mënyrë tipike, kur identifikoheni, kërkesa e mëposhtme shfaqet në ekran:

Pasi të keni futur emrin e përdoruesit dhe duke shtypur tastin Hyni do t'ju kërkohet të vendosni një fjalëkalim:

identifikimi në localhost: oleg Fjalëkalimi:

Pas kësaj, duhet të futni fjalëkalimin (karakteret që thirren nuk janë të dukshëm në ekran). Nëse fjalëkalimi është futur gabimisht, mesazhi i mëposhtëm do të shfaqet në ekran:

Login localhost: oleg Fjalëkalimi: Identifikohu hyrje e gabuar:

Pasi të keni futur emrin e saktë të përdoruesit dhe fjalëkalimin, ju jeni identifikuar.

Konsolë virtuale

Konsola e sistemit është një monitor dhe tastierë e lidhur drejtpërdrejt me kompjuterin. Sistemi Linux si versionet e tjera të sistemit UNIX, ofron akses në konzolat virtuale nga të cilat mund të kryeni disa seanca në të njëjtën kohë në sistem.

Për t'u njohur me punën në konzolat virtuale, identifikohuni dhe shtypni kombinimin e tastit Alt-F2. Prompti i hyrjes: shfaqet përsëri (kjo është tastiera e dytë virtuale). Për t'u kthyer në tastierën e parë virtuale, shtypni kombinimin e tastit Alt-F1 (ka një kthim në një sesion pune tashmë të filluar).

Sistemi L i sapo instaluar inux zakonisht siguron akses në gjashtë konzolat e para virtuale, të cilat mund të aksesohen duke përdorur kombinimet e tasteve Alt-Fx. Kështu, tashmë në fazën fillestare, përdoruesi merr një mjet të fuqishëm që ju lejon të punoni në të njëjtën kohë në disa seanca njëherësh.

Predha dhe komanda

Shumica e komunikimit me sistemin Linux ndodh përmes predha komanduese (guaskë). Predha komandueseështë një program që merr komandat e futura nga tastiera dhe i shndërron ato në instruksione për sistemin operativ.

Pas hyrjes, sistemi operativ lëshon një guaskë komandimi, pas së cilës mund të futen komandat. Komanda është fjala e parë në vijën e komandës. Çdo gjë tjetër në vijën e komandës merret si argumente për atë komandë. Si shembull, le të krijojmë (mkdir) drejtorinë e komandave:

komandat $ mkdir

Dilni

Për të dalë nga sistemi, futni komandën pas kërkesës së guaskës:

Ndrysho fjalekalimin

Për të ndryshuar fjalëkalimin, futni komandën passwd. Komanda do t'ju kërkojë të futni fjalëkalimin e vjetër dhe më pas të riun. Më pas komanda do t'ju kërkojë të vendosni përsëri fjalëkalimin e ri për konfirmim:

Skedarët dhe drejtoritë

Në sistemin operativ Linux përdoret koncepti i një skedari ( dosje). Një skedar është një "pjesë" e caktuar informacioni që ka emrin e vet ( emri i skedarit). Duhet të keni parasysh se informacioni ruhet në disk vetëm në formën e skedarëve të veçantë.

Emrat e skedarëve të rregullt në Linux mund të jetë deri në 255 karaktere dhe mund të jetë çdo karakter përveç fjalës së koduar dhe / (slash). Megjithatë, ka një sërë simbolesh të tjera që kanë në guaskë guaskë kuptim të veçantë dhe që për këtë arsye nuk rekomandohet të përfshihet në emra. Këto janë simbolet e mëposhtme:

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

Koncepti i një skedari është i lidhur ngushtë me konceptin e një drejtorie ( drejtoria). Një direktori është një koleksion skedarësh. Përdoruesit Dritaret quhet direktori "folder", për analogji me një dosje që përmban shumë fletë të ndryshme. Megjithatë, kjo analogji është e pasaktë, pasi drejtoria nuk përmban skedarët aktualë, por lidhjet me skedarët, si dhe me drejtoritë e tjera. Drejtorive u jepen emra me të cilët mund të njihen. Përveç kësaj, drejtoritë formojnë një strukturë peme; me fjalë të tjera, ekziston një direktori e vetme rrënjë që përmban të gjitha drejtoritë e tjera brenda saj.

Gjatë qasjes në një skedar, specifikohet shtegu (shtegu), i cili mund të përbëhet nga emri i drejtorisë (emrat e drejtorive të vendosura në njëri-tjetrin), e ndjekur nga emri i skedarit. Emrat ndahen nga njëri-tjetri me një të pjerrët (/). Për shembull:

Në shembullin e mësipërm, mund të shihni se emrat janë të ndarë me një /. Është për këtë arsye që ata nuk mund ta përmbajnë atë.

Pema e drejtorisë

Në shumicën e sistemeve Linux përdoret një vendndodhje standarde e skedarit, kështu që vendndodhja e skedarëve dhe programeve kryesore të sistemit është e lehtë për t'u gjetur. Drejtoritë formojnë një strukturë peme që fillon me drejtorinë /. Kjo direktori quhet gjithashtu direktoria rrënjësore. Nëndrejtoritë e rëndësishme / bin, / etc, / dev, / usr dhe të tjerët janë ngjitur me drejtorinë /.

Drejtoria aktuale

Në çdo moment, komanda e lëshuar i referohet drejtorisë aktuale ( drejtoria aktuale). Kur hyni, drejtoria aktuale vendoset në drejtorinë kryesore (në rastin tonë / shtëpi / oleg). Kur i referoheni një skedari, mund të specifikoni ose shtegun e plotë për këtë skedar, ose vetëm shtegun nga drejtoria aktuale.

Shembulli i mëparshëm, kur gjendet, për shembull, në drejtorinë / home / oleg / docs, do të duket kështu:

$ më pak mokshadharma / index.xml

Nëse një shteg skedari (për shembull, mokshadharma / index.xml) fillon me një karakter të ndryshëm nga /, atëherë skedari po aksesohet në lidhje me drejtorinë aktuale. Kjo mënyrë adresimi quhet mënyrë relative (rrugë relative).

Nëse emri i skedarit fillon me një /, atëherë sistemi e interpreton këtë si një shteg të plotë, domethënë një shteg që të çon te skedari duke filluar nga direktoria rrënjësore / (/home/oleg/docs/mokshadharma/index.xml) . .. Quhet gjithashtu mënyrë absolute (rrugë absolute).

Duke iu referuar drejtorisë kryesore

Në një guaskë komandimi bash përfshirë pothuajse në të gjitha sistemet e sapo instaluara Linux, direktoria kryesore mund të shënohet me ~. Për shembull, komanda:

$ më pak ~ / docs / mokshadharma / index.xml

është e barabartë me komandën:

$ më pak /home/oleg/docs/mokshadharma/index.xml

Lëvizja nëpër pemën e drejtorive

Komanda e përdorur për të lundruar në pemën e drejtorive quhet cd, shkurt për ndryshoni drejtorinë(ndryshoni drejtorinë). Si shembull i përdorimit të komandës cd, shkoni te drejtoria / home / oleg / docs / mokshadharma /:

$ cd ~ / docs / mokshadharma

Tani, nga drejtoria aktuale, mund t'i referoheni skedarit me komandën e mëposhtme:

$ më pak index.xml

Për të shkuar në drejtorinë më të afërt të nivelit më të lartë, ekziston një komandë:

Për të kaluar në drejtorinë kryesore, mund të lëshoni komandën cd pa argumente:

Shikimi i përmbajtjes së drejtorive

Komanda Ls (shkurt për listë) shfaq një listë skedarësh dhe drejtorish (opsioni -F lejon informacion më të plotë):

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

Në listë, shohim se karakteri / është bashkangjitur në fund të emrit të nëndirektorive dhe në fund të emrit të skedarit të ekzekutueshëm ( i ekzekutueshëm) i është caktuar karakteri *.

Krijimi i drejtorive të reja

Për të krijuar një drejtori të re, përdorni komandën mkdir (shkurt për bëj drejtorinë). Për shembull, le të krijojmë një drejtori të re dhe ta futim atë:

$ mkdir shembull $ cd shembull

Krijimi i skedarëve të rinj

Komandat touch dhe cat përdoren për të krijuar skedarë.

Komanda e prekjes krijon një skedar bosh:

$ prek emrin e skedarit

Për të krijuar një skedar me komandën cat, i krijuar për të ridrejtuar daljen, të dhënat nga hyrja standarde (tastiera) dërgohen në hyrjen e tij dhe dalja e komandës dërgohet në një skedar të ri:

$ cat> skedari i ri

Pasi të futet teksti i kërkuar, shtypet kombinimi i tastit Enter dhe Ctrl-D ose Enter dhe Ctrl-C dhe gjithçka që futet do të regjistrohet në skedarin_new. Sigurisht, kryesisht skedarët e tekstit të shkurtër krijohen në këtë mënyrë.

Ndryshoni zotëruesin e një skedari ose grupi të një skedari

Vetëm superpërdoruesi mund të ndryshojë zotëruesin, pronari i skedarit ose superpërdoruesi mund të ndryshojë grupin. Për të pasur të drejtën për të ndryshuar grupin, pronari duhet të jetë gjithashtu një anëtar i grupit të cilit ai dëshiron t'i japë të drejta për këtë skedar.

Për të shkatërruar skedarët, përdorni komandën rm (shkurt për hiqni):

$ rm index.xml $

Si parazgjedhje, komanda rm nuk është gjithmonë e konfiguruar për të lëshuar paralajmërime përpara se të fshini një skedar.

Për të shkatërruar drejtoritë, përdorni komandën rmdir, e cila shkatërron vetëm një direktori boshe.

$ cd .. $ rmdir shembull $ ls -F $

Për të shkatërruar drejtoritë që përmbajnë skedarë dhe nëndrejtori, përdorni komandën rm -rf, e cila duhet të përdoret me kujdes ekstrem. përmbajtja shkatërrohet prej saj pa paralajmërim.

Shikoni përmbajtjen e skedarit

Komandat more dhe cat përdoren për të parë përmbajtjen e skedarëve. Komanda more shfaq përmbajtjen e skedarit në copa (një ekran në një kohë) dhe komandën Mace nxjerr të gjithë skedarin menjëherë. Një version i përmirësuar i më shumë quhet më pak.

Përdorni tastet B dhe Space për të parë përmbajtjen e shfaqur nga komanda më pak (mund të përdorni gjithashtu Page Up dhe Page Down).

Dokumentacioni i ekranit

Pothuajse të gjitha sistemet në familje UNIX duke përfshirë sistemin Linux, keni dokumentacion në ekran ( faqet e njeriut). Tekstet e tij përmbajnë dokumentacion mbi komandat e sistemit, burimet, skedarët e konfigurimit, etj. dhe mund të shfaqen në ekran gjatë funksionimit.

Për të hyrë në dokumentacionin në ekran, përdorni komandën man (shkurt për manual). Për shembull, për të parë opsionet për komandën ls, futni komandën.

Artikulli i sotëm i kushtohet tërësisht fillestarëve që sapo po hedhin hapat e tyre të parë në fazën e njohjes me sistemin operativ CentOS. Në këtë artikull, ne kemi mbledhur 20 komandat kryesore që do të jenë të dobishme në punën e përditshme, menaxhimin e serverit dhe zgjidhjen e problemeve themelore.

Komandat

  • Të fillosh redaktimi i skedarit shtypni O
  • Ruaj shtypni Esc dhe: x!
  • Për të kopjuar skedarët, ekziston komanda cp (kopjimi). Si shembull cp /etc/asterisk/extensions_custom.conf / home / admin /. Kjo do të shtojë skedarin extensions_custom.conf në drejtorinë / home / admin.
  • Për të ndryshuar pronarin e një skedari, përdorni chown (ndryshoni pronarin). Për të ndryshuar pronarin e të gjithë skedarëve në drejtorinë / etc / yll te përdoruesi yll jap komandën chown –R yll: yll / etj / yll
  • Për t'i dhënë të drejta specifike një skedari, ekziston komanda chmod. Për shembull, le t'i japim lejet maksimale skedarit /etc/asterisk/extensions_custom.conf me komandën chmod 777 /etc/asterisk/extensions_custom.conf.
  • Përdorni komandën ln për të krijuar një lidhje "simbolike" në një skedar. Për shembull, ln –s / storage / test / etc / test. E rëndësishme! Skedari / etc / test nuk duhet të krijohet para ekzekutimit të komandës.
  • Drejtoria /etc/init.d/ përdoret për të rifilluar shërbimet e kërkuara. Për shembull, komanda /etc/init.d/httpd restart do të rifillojë serverin WEB.
  • Për të çaktivizuar një proces, mund të përdorni PID-in e tij. Për ta gjetur atë, lëshoni komandën ps axu | grep -i yll | grep -v grep. PID e procesit do të jetë në kolonën e dytë.
  • Tani që e dini PID-in e procesit, lëshoni komandën kill -0 # process_number. Si shembull, vrasin -9 1738.
  • Për të zbuluar se cili proces po konsumon më shumë burime të CPU-së, përdorni komandën e lartë.
  • Nëse keni nevojë të konfiguroni serverët DNS, bëni ndryshime në skedarin /etc/resolv.conf. Për shembull, hapni skedarin me komandën vim /etc/resolv.conf dhe shtoni serverin DNS në të:
    • serveri i emrave 8.8.8.8
  • Për të parë ngarkesën e RAM-it në CentOS, përdorni komandën free -m. Prodhimi do të shfaqet në megabajt me memorien totale, hapësirën e përdorur dhe hapësirën e lirë.
  • Lëshoni komandën df -h për të kontrolluar përdorimin e kujtesës në disqet e ngurtë. Do të shihni gjithashtu hapësirën totale, të përdorur dhe të lirë.
  • Për të parë madhësinë e një drejtorie specifike, përdorni komandën du. Për shembull, përdorni du -sh / etc / asterisk / për të përcaktuar madhësinë e drejtorisë / etc / asterisk /.
  • Nëse keni nevojë të zbuloni versionin e një pakete të instaluar, përdorni komandën rpm. Për shembull, kontrollet e versionit yum jep komandën rpm -qa | grep -i yum.
  • Shpesh na duhet të instalojmë programe të ndryshme. Si parazgjedhje, sistemi ka vetëm më të nevojshmet, dhe nëse keni nevojë për diçka specifike, atëherë do t'ju duhet të instaloni programe me dorë. Instalimi i softuerit Linux është, në një farë mënyre, më i lehtë sesa instalimi i tij në Windows. Këtu, shumica e programeve të kërkuara ndodhen në depot zyrtare dhe për t'i instaluar ose përditësuar ato, mjafton të ekzekutoni disa komanda.

    Në këtë artikull, ne do të shikojmë se si të instalojmë paketat CentOS 7. Le të shohim bazat e punës me menaxherin e paketave yum, aftësitë e tij dhe gjetjen dhe zgjidhjen e varësive të paketave.

    YUM (Yellowdog Updater Modified) është një menaxher paketash me burim të hapur i zhvilluar nga RedHat për të punuar me paketat RPM. Ai i lejon përdoruesit dhe administratorët e sistemit të instalojnë, heqin dhe përditësojnë paketat në sistemet e bazuara në RedHat.

    Programi shpërndahet nën GPL (General Public License) dhe çdo përdorues mund të aksesojë burimin apo edhe të përmirësojë kodin. Menaxheri i paketave mbështet lidhjen e depove të palëve të treta dhe zgjidhjen e varësive për instalimin e paketave. Plugina të ndryshme mund të shkarkohen për të përmirësuar performancën e Yum.

    Shërbimi funksionon në tastierë, dhe sintaksa e tij është shumë e thjeshtë:

    $ sudo yum opsionet e komandës emri i paketës

    Së pari, le të hedhim një vështrim në komandat themelore të menaxherit të paketave:

    • instaloni- instaloni paketën;
    • përditësimi- përditësoni një paketë ose sistem;
    • përditësimi-në- përditësoni paketën në version;
    • përditësim-minimal- përditësoni vetëm korrigjimet e gabimeve;
    • përmirësimin- përditësim i plotë me përpunimin e veçorive shtesë të paketave dhe varësive të tyre;
    • shpërndarja e sinkronizimit- sinkronizoni gjendjen e sistemit ose paketës me depon. Për shembull, nëse versioni 4 i paketës është instaluar dhe ka vetëm 3 në depo, atëherë versioni do të zvogëlohet;
    • hiqni- hiqni paketimin;
    • heqje automatike- pastroni paketat e panevojshme;
    • listë- tregoni një listë të paketave;
    • ofron- kërkoni për një paketë sipas funksionalitetit;
    • kërkimi- kërkoni për një paketë me emër;
    • informacion- informacion për paketën;
    • pastër- pastroni cache-in e menaxherit të paketave;
    • grupe- menaxhimi i grupeve të paketave;
    • riinstaloni- riinstaloni paketën;
    • ulje- zvogëloni versionin e paketës;
    • deplist- shfaq të gjitha varësitë e paketës;
    • repolist- shfaq një listë të depove;
    • fssnapshot- menaxhimin e fotografive të gjendjes së sistemit;
    • kontrolloni- kontrolloni bazën e të dhënave të paketës për integritet.

    Ne do të shqyrtojmë gjithashtu opsione shtesë që mund t'ju nevojiten kur instaloni rpm CentOS:

    • -y- përgjigjet gjithmonë pozitivisht në pyetjet e shoqërisë;
    • -q- tërheqja minimale;
    • -v- tërheqje maksimale;
    • - ME- punë nga cache;
    • -x- injoroni paketën.

    Tani i dini të gjitha tiparet kryesore të mjetit, le të shohim disa shembuj të punës me të.

    Instalimi i paketave në CentOS 7

    Përpara se të vazhdoni me instalimin e paketave CentOS, duhet të përditësoni listën e depove dhe sistemin në versionin më të fundit. Për këtë ekziston një komandë:

    Instalimi i një pakete CentOS

    Për të instaluar një paketë që është në magazinat zyrtare, thjesht duhet të përdorni komandën e instalimit. Thjesht shkruani këtë komandë dhe emrin e paketës, për shembull për firefox:

    sudo yum instalo thunderbird

    Gjatë instalimit, do të duhet të konfirmoni që dëshironi të instaloni këtë program të veçantë duke shtypur tastin y. Për të shmangur këtë, përdorni opsionin -y:

    sudo yum -y instaloj thunderbird

    Për të parë informacionin në lidhje me një paketë të instaluar, përdorni komandën info:

    sudo yum info thunderbird

    Për të hequr një paketë, përdorni komandën hiqni:

    sudo yum hiqni thunderbird

    Gjetja e paketave CentOS

    Ne nuk i dimë emrat e saktë të të gjitha paketave. Por yum mbështet një veçori kërkimi për t'ju ndihmuar të kuptoni se cilën paketë të instaloni CentOS 7. Ka dy komanda kërkimi. E para është kërkimi, i cili ju lejon të gjeni një paketë me emër:

    sudo yum kërko mysql

    E dyta ju lejon të gjeni paketën e kërkuar me komandën që ju nevojitet, në disa raste kjo është shumë e përshtatshme:

    sudo yum ofron lspci

    Tani e dini se çfarë pakete nevojitet dhe instalimi i paketave CentOS 7 rpm tani mund të bëhet shumë shpejt dhe nuk keni nevojë të hapni shumë forume për të gjetur informacion.

    Grupet e paketave CentOS

    Grupet e paketave janë gjithashtu një mjet mjaft i dobishëm. Me të, nuk mund të instaloni paketa një nga një, por të instaloni një grup të tërë menjëherë. Së pari, shikoni listën e grupeve të disponueshme:

    Lista e grupeve sudo yum

    Informacioni i grupit sudo yum "Serveri standard i uebit"

    Pastaj. për të instaluar një lloj grupi paketash:

    grupi sudo yum instaloni "Serverin standard të uebit"

    Po kështu, mund të përditësoni një grup paketash për të shmangur përditësimin e të gjithë sistemit:

    Përditësimi i grupit sudo yum "Serveri standard i uebit"

    Ose hiqni:

    grupi sudo yum hiqni "Serverin standard të uebit"

    Depot e paketave CentOS

    Depot zyrtare nuk përmbajnë të gjitha paketat e kërkuara. Nëse programet e serverit mund të gjenden atje pa vështirësi, atëherë me programet për desktopin, të njëjtët kodekë, do të ketë probleme. Ato duhet të instalohen nga depo të palëve të treta.

    Depot në CentOS nuk shtohen nëpërmjet një skedari konfigurimi, ato instalohen duke shkarkuar dhe instaluar skedarin e depove rpm. Për shembull, një nga depot e palëve të treta më të përdorura është EPEL. Instaluesi i tij është në depot zyrtare, kështu që për t'u lidhur mjafton të ekzekutoni:

    sudo yum instaloni epel-release

    Por ky nuk është rasti me të gjitha depot. Shumë prej tyre ruajnë skedarët e instalimit më vete. Për shembull, një depo me softuer të ndryshëm multimedial nux instalohet ndryshe. Së pari, duhet të shkarkoni skedarin e depove nga lidhja. Shkarkoni versionin më të fundit, përndryshe asgjë nuk do të funksionojë.

    Për shembull, për momentin më i riu

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

    Pastaj instaloni paketën e shkarkuar duke përdorur yum:

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

    Pastaj përditësoni listën e depove dhe mund të instaloni paketat:

    sudo yum instaloni vlc

    Epo, ne shikojmë listën e depove:

    sudo yum repolist

    Të gjitha depot e disponueshme shfaqen këtu. Për të hequr një depo, do të mjaftojë të hiqni paketën e tij.

    Instalimi i programeve CentOS në GUI

    Nëse nuk ju pëlqen të përdorni terminalin, atëherë instalimi i programeve CentOS 7 mund të bëhet përmes ndërfaqes grafike. Por këtu mundësitë janë shumë më pak se në terminal. Përdorni shërbimin "Programet", i cili ndodhet në menunë kryesore:

    CentOS është një shpërndarje falas e bazuar në kodin burimor të Red Hat Enterprise Linux, në fakt, ai është krijuar nga këto burime me pak ose aspak modifikim, zhvilluesit vetëm ndërprenë të gjithë markën Red Hat. Por ndryshe nga Red Hat, CentOS është plotësisht falas dhe merr përditësime të rregullta menjëherë pasi ato lëshohen për Red Hat, pasi ato janë ndërtuar gjithashtu nga burimi.

    CentOS përdoret shpesh si një sistem operativ për serverët. Në një nga artikujt e mëparshëm, ne shikuam se si bëhet. Sot do të shikojmë vendosjen e një serveri CentOS 7 pas instalimit. Ne do të mbulojmë të gjithë parametrat bazë që do t'ju duhet të ndryshoni për ta bërë serverin tuaj gati për përdorim.

    1. Vendosja e një adrese IP statike

    Gjëja e parë që duhet të bëni është të konfiguroni rrjetin tuaj. Në kompjuterët personalë, përdoret marrja e një adrese IP përmes DHCP dhe kompjuteri do të ketë një adresë të ndryshme sa herë që fillon, serveri duhet të punojë gjithmonë në të njëjtën adresë, kështu që ne i caktojmë një IP statike. Ju gjithashtu duhet të konfiguroni DNS dhe portën e paracaktuar. Por së pari instaloni programin net-tools:

    yum instaloni net-tools

    Së pari, le të shohim ndërfaqet e disponueshme të rrjetit dhe adresën aktuale IP:

    Tani mund të shkoni te konfigurimi i ndërfaqes përmes skedarit / etc / sysconfig / network-scripts / ifcfg-enp0s3, për shembull, duke përdorur redaktorin vi:

    vi / etc / sysconfig / skriptet e rrjetit / ifcfg-enp0s3

    Ipaddr = your_ip
    GATEWAY = portë_për_aksesin në rrjet
    DNS1 = IP_Adresa_DNS1
    DNS2 = DNS_IP_adresa

    Pasi të keni bërë ndryshime, ky skedar do të duket si ky:

    Pastaj do të mbetet për të rindezur rrjetin për të aplikuar cilësimet e reja:

    rinisja e rrjetit të shërbimit

    Pastaj, nëse është e nevojshme, mund të ndryshoni adresën IP në të njëjtën mënyrë.

    2. Emri i kompjuterit

    Gjëja tjetër që duhet të bëjmë është të ndryshojmë emrin e kompjuterit. Emri aktual i kompjuterit ruhet në variablin HOSTNAME:

    Për ta ndryshuar atë, duhet të redaktoni skedarin / etc / hostname dhe të zëvendësoni emrin e vjetër me atë të ri atje.

    vi / etc / emri i hostit

    Përndryshe, mund të përdorni komandën hostnamectl:

    hostnamectl set-name "hostname"

    3. Përmirësimi i CentOS

    Pas instalimit, është zakon të përditësoni softuerin në versionin më të fundit për të siguruar që të gjitha përditësimet e sigurisë janë instaluar. Për të përditësuar listën e paketave në depo dhe për të instaluar versione të reja, ekzekutoni komandën e mëposhtme:

    yum update && yum upgrade

    4. Instaloni shfletuesin

    Në shumë raste, duhet të përdorni CentOS nga linja e komandës pa një ndërfaqe grafike, kështu që mund t'ju duhet një shfletues për të gjetur diçka në internet ose për të kontrolluar funksionalitetin e faqeve nga linja e komandës. Për të instaluar shfletuesin e lidhjeve, shkruani:

    yum lidhjet e instalimit

    Mund të gjeni shfletues të tjerë të konsolës për Linux, si Lynx ose Elinks.

    5. Vendosja e zonës kohore

    Vendosja e saktë e zonës kohore është shumë e rëndësishme për serverin. Kjo do të heqë konfuzionin në regjistrat dhe do t'i lejojë aplikacionet tuaja të shfaqin datën dhe orën e saktë. Për konfigurim përdoret mjeti timedatectl.

    Së pari, merrni një listë të zonave kohore:

    timedatectl list-zones orare

    Pastaj instaloni atë që dëshironi, për shembull, Evropë / Kiev:

    timedatectl vendosur-zona kohore Evropë / Kiev

    Pastaj kontrolloni:

    7. Vendosja e vendndodhjes

    Lokaliteti përcakton gjuhën dhe kodimin që do të përdoret në sistemin tuaj, për shembull, për të aktivizuar gjuhën ruse, vendosni vlerën ru_RU.UTF-8

    localectl set-locale LANG = ru_RU.UTF-8

    Pastaj shohim se çfarë ndodhi:

    Pastaj vendosim paraqitjen e tastierës:

    localectl set-keymap na

    8. Çaktivizoni SELinux

    Një grup politikash SELinux janë krijuar për të kontrolluar aksesin në skedarë në një sistem Linux, por nëse nuk keni ndërmend t'i përdorni ato, atëherë kjo veçori mund të çaktivizohet. Për ta bërë këtë, ekzekutoni:

    sed -i "s / (^ SELINUX =). * / SELINUX = i çaktivizuar /" / etj / selinux / konfigurim

    Pastaj rinisni kompjuterin tuaj dhe kontrolloni nëse funksioni është çaktivizuar në të vërtetë:

    9. Krijo një përdorues

    Është e pasigurt të përdoret sistemi në emër të superpërdoruesit dhe aq më tepër është e pasigurt të lihet akses i hapur në llogarinë rrënjë nëpërmjet ssh. Së pari, krijoni një përdorues të rregullt dhe vendosni një fjalëkalim për të:

    përdoruesi shtoni emrin e përdoruesit
    # fjalëkalim për fjalëkalim

    Pastaj shtoni përdoruesin në grupin e rrotave për të lejuar që përdoruesi të funksionojë si administrator:

    usermod -Emri i përdoruesit të rrotës G

    Tani mbetet të rregulloni cilësimet sudo, për këtë shtoni rreshtin e mëposhtëm, nëse nuk është tashmë atje:

    % rrota ALL = (ALL) ALL

    10. Aktivizo magazinat e palëve të treta

    Shtimi i depove të palëve të treta në një server prodhimi nuk është një ide e mirë dhe mund të çojë në pasoja të këqija në disa raste. Megjithatë, ndonjëherë ju mund të keni nevojë për programe që nuk janë në depot zyrtare. Prandaj, le të shohim se si të shtojmë depo të shumta.

    Për të shtuar Enterprise Linux Repository (EPEL), ekzekutoni:

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

    10. Konfigurimi i SSH

    Më shpesh, ne duhet të punojmë me serverë jo drejtpërdrejt, por përmes rrjetit, përmes SSH. Zakonisht SSH është tashmë i instaluar dhe aktivizuar, por ka nevojë për disa ndryshime për ta bërë atë të funksionojë siç duhet. Së pari, duhet të konfiguroni përdorimin e vetëm një protokolli të sigurt, për këtë hapni skedarin / etc / ssh / ssh_config dhe fshini rreshtin Protocol 2,1. Dhe në vend të kësaj shtoni:

    Ju gjithashtu duhet të çaktivizoni hyrjen si superpërdorues:

    PermitRootLogin nr

    11. Instaloni ueb serverin Apache

    Nëse planifikoni të përdorni makinën si një server në internet, do t'ju duhet Apache. Me të, ju mund të strehoni faqe interneti, përmbajtje multimediale, programe klientësh dhe më shumë. Për të instaluar, ekzekutoni:

    yum instaloni httpd

    Kur instalimi të ketë përfunduar, duhet të aktivizoni HTTP në murin e zjarrit përpara se të filloni punën:

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

    Tani mbetet për të shtuar Apache në ngarkim automatik:

    systemctl nis httpd.service
    # systemctl aktivizoni httpd.service

    12. Instaloni PHP

    PHP është një aplikacion modern në ueb dhe gjuhë skriptimi. Shpesh përdoret si një gjuhë programimi për qëllime të përgjithshme. Për të instaluar, ekzekutoni:

    Pas instalimit, duhet të rinisni Apache:

    jehonë -e ""> /var/www/html/phpinfo.php

    Pastaj hapni skedarin e krijuar në një shfletues:

    lidhjet http://127.0.0.1/phpinfo.php

    13. Instalimi i bazës së të dhënave

    MariaDB është një bazë të dhënash e bazuar në kodin burimor MySQL. Shpërndarjet Linux të bazuara në Red Hat përdorin MariaDB në vend të MySQL. Bazat e të dhënave janë të domosdoshme në një server, kështu që konfigurimi i CentOS pas instalimit duhet të përfshijë instalimin e tij. Për të instaluar MariaDB, shkruani:

    yum instaloj mariadb-server mariadb

    Pastaj ekzekutoni dhe shtoni në ngarkim automatik:

    systemctl start mariadb.service
    # systemctl aktivizo mariadb.service

    Dhe lejoni të përdorni shërbimin në murin e zjarrit:

    firewall-cmd --add-service = mysql

    Mbetet për të ekzekutuar skriptin e konfigurimit:

    / usr / bin / mysql_secure_installation

    14. Instaloni GCC

    GCC qëndron për GNU Compiler Collection dhe është një grup përpiluesish që konsiderohen si standard për ndërtimin e programeve në Linux. Por ai nuk vjen me CentOS si parazgjedhje, kështu që për të instaluar, shkruani:

    Pastaj mund të shikoni versionin e GCC:

    15. Instaloni Java

    Java është një gjuhë programimi e orientuar drejt objektivave për qëllime të përgjithshme. Ai nuk është i instaluar si parazgjedhje, kështu që konfigurimi i CentOS 7 pas instalimit mund të përfshijë edhe instalimin e tij. Për ta bërë këtë, ekzekutoni:

    yum instalo java

    Pastaj kontrolloni versionin:

    konkluzionet

    Në këtë artikull, ne shikuam se si të konfiguroni serverin CentOS 7 pas instalimit. Siç mund ta shihni, ka shumë hapa elementare që duhet të ndërmerrni përpara se të përdorni serverin në prodhim. Nëse keni ndonjë pyetje, pyesni në komente!

    Artikujt kryesorë të lidhur