Sistemos administratoriams, atsakingiems už „Linux“ serverių valdymą, išteklių valdymas yra svarbi užduotis. Kartais „Linux“ komandos užima didžiulę dalį sistemos išteklių ir jas reikia sustabdyti.

Laimei, galite apriboti komandų vykdymo laiką naudodami tokias komunalines paslaugas kaip terminas. Šiame straipsnyje aptarsime, kodėl turėtumėte pridėti laiko apribojimus savo komandoms ir kaip pridėti laiko apribojimą naudodami tokias komandas kaip laiko apribojimas ir skirtasis laikas.

Kodėl reikia riboti komandos vykdymo laiką?

Yra kelios priežastys, dėl kurių gali tekti vykdyti komandas nustatytu laiku. Pirma, galbūt naudojate senesnį kompiuterį ar serverį ir nenorite, kad jūsų sistema švaistytų savo išteklius nepageidaujamam apdorojimui.

Antra, su laiku susijusios užduotys, tokios kaip failų perdavimas, baigiasi po tam tikro laikotarpio, tačiau jų procesai neužsibūna iškart. Norėdami apriboti programos papildomą procesoriaus laiką ir atmintį, galite pridėti ribą, kuri sustabdys procesą, kai perkėlimas bus baigtas.

instagram viewer

Pridėti ribą naudodami skirtojo laiko komandą

„Timeout“ komanda yra pirmasis daugelio „Linux“ vartotojų pasirinkimas pridėti laiko apribojimą prie jų komandų. Kadangi šis įrankis yra GNU pagrindinės komunalinės paslaugos paketą, jis iš anksto įdiegtas beveik kiekviename „Linux“ paskirstyme.

Pagrindinė skirtojo laiko komandos sintaksė yra:

„timeout limit“ komanda

... kur riba yra laikas, per kurį komanda turėtų veikti ir komandą yra „Linux“ komanda, kurią norite atlikti nustatytu laiku.

Pvz., Jei norite gauti išsamią proceso informaciją naudodami viršuje komanda 10 sekundžių:

skirtasis laikas 10s viršuje

Viršutinė komanda yra nesibaigianti ir jūs turite ją rankiniu būdu uždaryti naudodami „Ctrl“ + C. Minėta komanda veiks 10 sekundžių ir, kai pasibaigs laikmatis, skirtasis laikas sustabdys jo vykdymą. Atkreipkite dėmesį, kad užtrunka skirtasis laikas sekundžių kaip numatytąjį laiko vienetą, o tai reiškia 10 ir 10s yra tas pats.

Taip pat galite naudoti m, hir d dėl minučių, valandosir dienų atitinkamai.

Rankiniu būdu siųsti nužudymo signalus su skirtingu laiku

Pagal numatytuosius nustatymus komanda timeout siunčia SIGTERM kaip nužudymo signalą. SIGTERM reiškia Signalo nutraukimas, kuris nedelsdamas nutraukia procesą.

Galite siųsti ir kitus signalus naudodami -s vėliava. Pvz., Norint siųsti signalą SIGKILL:

skirtasis laikas SIGKILL 10 viršuje

Taip pat galima nurodyti signalą su jo signalo numeriu. Ši komanda taip pat siunčia SIGKILL signalą į viršutinę komandą.

skirtasis laikas 9 9 viršuje

... kur 9 yra SIGKILL signalo numeris.

Norėdami gauti visų galimų signalų sąrašą:

nužudyti -l

Kai kurios komandos nesibaigia net pridėjus laiko limitą. Tokiose situacijose problema pašalinama pridėjus žudymo signalą su numatytuoju skirtojo laiko komanda.

skirtasis laikas -k 15 10 viršuje

Pirmiau minėta komanda pirmiausia paleis viršutinę komandą 10 sekundžių, o jei komanda nesustos, po 15 sekundžių ji siunčia procesui žudymo signalą.

Sužinokite daugiau: Kaip nužudyti neatsakančias programas sistemoje „Linux“

Apriboti komandų vykdymo laiką su laiko apribojimais

Skirtingai nuo komandos „Timeout“, „timelimit“ nėra vienas iš standartinių paketų, kurie yra iš anksto įdiegti „Linux“ distros. Todėl turėsite rankiniu būdu įdiegti laiko apribojimą savo sistemoje.

Norėdami įdiegti į „Debian“ pagrįstus paskirstymus:

sudo apt install timelimit

„Timelimit“ nėra oficialiose „Arch“ saugyklose. Bet jūs galite jį įdiegti naudodami AUR paketų tvarkyklę, pvz., Valio.

sudo yay -S laiko apribojimas

Susijęs: Kaip įdiegti paketus „Arch Linux“

Norėdami įdiegti „Fedora“:

sudo dnf install timelimit

„RHEL“ ir „CentOS“:

sudo yum įdiegti laiko apribojimus

Arba, jei vis tiek negalite įdiegti paketo į savo sistemą, atsisiųskite šaltinio kodą iš oficialios svetainės ir įdiekite jį rankiniu būdu.

parsisiųsti: terminas

Norėdami 10 sekundžių paleisti viršutinę komandą naudodami laiko apribojimą:

timelimit -t10 viršuje

„Timelimit“ pateikia kelis argumentus, pvz warntime, warnsig, nužudymo laikasir žudo. Jei vartotojas nepateikia šių argumentų, imamos numatytosios jų vertės warntime = 3600 sekundės, warnsig = 15, nužudymo laikas = 120ir nužudymas = 9.

„Linux“ komandos gyvenimo valdymas

Komandų stebėjimas ir procesų valdymas tampa svarbus, jei jūsų „Linux“ mašina turi ribotus išteklius. Komunalinės paslaugos, tokios kaip skirtasis laikas ir laiko apribojimas, yra gelbėjimas, nes jos leidžia jums pridėti laiko apribojimus savo komandoms.

Kaip ir komandų vykdymo laikas, taip pat galite apriboti savo sistemos ekrano laiką. Jei esate tėvas ir nenorite, kad jūsų vaikas gaištų nereikalingą laiką prie kompiuterio, ekrano laiko apribojimas yra tinkamiausias pasirinkimas.

El
5 būdai blokuoti svetaines ir apriboti ekrano laiką sistemoje „Linux“

Tėvų kontrolės programinės įrangos „Linux“ praktiškai nėra. Štai keli būdai, kaip galite blokuoti svetaines ir tvarkyti turinį sistemoje „Linux“.

Skaitykite toliau

Susijusios temos
  • „Linux“
  • „Linux“
Apie autorių
„Deepesh Sharma“ (Paskelbti 47 straipsniai)

Deepesh yra MUO „Linux“ jaunesnysis redaktorius. Jis daugiau nei 3 metus rašė informacinį turinį internete. Laisvalaikiu jam patinka rašyti, klausytis muzikos ir groti gitara.

Daugiau iš „Deepesh Sharma“

Prenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kuriame rasite techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!

Dar vienas žingsnis…!

Prašome patvirtinti savo el. Pašto adresą el. Laiške, kurį jums ką tik išsiuntėme.

.