Комплетан водич за аутоматизацију задатака помоћу Баш скриптовања на Линуксу

Последње ажурирање: Мај КСНУМКС КСНУМКС
  • Употреба Bash скрипти омогућава оптимизацију системске администрације кроз секвенцијално извршавање команди у текстуалним датотекама.
  • Башова свестраност олакшава управљање корисницима, креирање заказаних резервних копија и праћење системских ресурса.
  • Имплементација контролних структура, променљивих и дозвола за извршавање је фундаментална за развој робусних алата за аутоматизацију.

Аутоматизација задатака

Замислите да се ваш свакодневни живот систем администратора своди на понављање истих команди у конзоли изнова и изнова, као да сте осуђени да перете судове ручно када се машина за прање судова налази одмах поред вас. аутоматизација процеса Управо нам овај алат омогућава да делегирамо заморне послове машини, драстично смањујући људске грешке и ослобађајући време за креативније или сложеније задатке.

Да би се ово постигло, Bash скриптовање се представља као идеално решење. У основи, састоји се од писања низа инструкција у обичној текстуалној датотеци које оперативни систем извршава редом, омогућавајући свакоме ко зна како да користи уређивач текста да... оптимизујте управљање вашим серверима и побољшајте укупну продуктивност вашег Linux радног окружења.

Шта је Басх
Повезани чланак:
Басх: Шта је то, како функционише и за шта се користи

Шта је тачно Баш скрипта?

Када говоримо о Башу, мислимо на Боурне Агаин СхеллСкрипта је интерпретер команди који делује као мост између корисника и језгра оперативног система. Стога је скрипта датотека са екстензијом .script. .sh који садржи листу команди које шкољка секвенцијално обрађује. То је, у суштини, као рецепт за кување где су састојци терминалне команде, а резултат је аутоматизовани задатак без људске интервенције.

Историјски гледано, ова могућност аутоматизације је већ постојала у Јуникс системима од 70-их, али са доласком Баша 1989. године, процес је постао много приступачнији. Данас, велика већина Линукс дистрибуција користи овај интерпретер, што гарантује да ће скрипта написана данас бити флексибилан и прилагодљив различитим окружењимаЧак ради и на Mac-у или Windows-у ако имате компатибилан терминал.

Луа наспрам Баша
Повезани чланак:
Луа наспрам Баша: Практични водич, примери и критеријуми из стварног света

Основни принципи за креирање вашег првог сценарија

Да бисте започели програмирање, први корак је креирање обичног текстуалног фајла. Можете користити једноставне едиторе као што су Нано, Вим или ЕмаксБитно је да први ред датотеке буде онај који се зове ствар: #!/bin/bashОва линија говори систему да користи Bash интерпретер за извршавање кода који следи.

  Шта је ССХ? Комплетан водич

Кључни концепт је руковање променљивим. У Bash-у, не морате декларисати тип података; једноставно додељујете име и вредност користећи знак једнакости, водећи рачуна да Не остављајте размаке између променљиве и знакаДа бисте касније позвали или прочитали те податке, једноставно им испред ставите знак долара ($На пример, ако дефинишете променљиву поздрава, систем ће запамтити тај текст и приказивати га сваки пут када га позовете.

Скриптовање у Линуксу

Контрола тока и унос података

Да би скрипта била интелигентна, она мора да доноси одлуке. Ту се... контролне структуре као што је if-elseкоје дозвољавају извршавање одређених радњи само ако је испуњен одређени услов. Слично томе, петље for y while Они су неопходни за прелазак кроз листе елемената, као што су низ корисничких имена или листа сервера, омогућавајући понављање једне инструкције онолико пута колико је потребно.

Да бисмо скрипту учинили интерактивном, користимо команду read, што омогућава снимање корисничког уноса преко тастатуре и сачувајте га у променљивој. С друге стране, команда echo То је стандард за приказивање информација на екрану, олакшавајући комуникацију са особом која покреће процес и у великој мери помаже током фазе отклањања грешака кода.

туторијали за програмске језике
Повезани чланак:
Туторијали за програмске језике: комплетан водич за почетак и напредак

Управљање дозволама и њихово извршавање

Веома честа грешка међу почетницима је покушај покретања скрипте и откривање да систем нема дозволу за то. Да бисмо ово поправили, потребно је да користимо команду chmod +x након чега следи име датотеке. Ово додаје извршити дозволуомогућавајући да датотека пређе из једноставног текста у извршни програм.

  Реплит: Све што треба да знате о овом алату за сарадњу

Да бисмо покренули скрипту, можемо користити релативну путању ./mi_script.sh или га позовите директно са bash nombre_del_archivo.shПрепоручује се да све скрипте организујете у одређеној фасцикли, јер, када се ток рада оптимизује, ове датотеке постају спасење систем администратора у ванредним ситуацијама.

Неопходне команде за аутоматизацију

Права моћ Bash-а лежи у интеграцији интерних и екстерних команди. За навигацију и управљање датотекама, ослањамо се на класике попут cd, ls, cp y mvМеђутим, магија се дешава када користимо алате за манипулацију текстом као што су grep, awk, sed и cutкоји вам омогућавају филтрирање логова, претраживање одређених образаца у конфигурационим датотекама или издвајање прецизних података из базе података.

Што се тиче управљања системом, команде као што су top, ps y systemctl Они су од виталног значаја за управљање процесима и услугама. Ако желимо да аутоматизацију подигнемо на виши ниво, можемо да комуницирамо са мрежама путем ssh o scpшто нам омогућава, на пример, да извршавамо команде на удаљеним серверима или пренос резервних копија на екстерну машину на потпуно аутоматски начин.

аутоматизација у Линуксу
Повезани чланак:
Аутоматизација у Линуксу: од cron-а и Bash-а до Ansible-а и systemd-а

Практични примери напредне аутоматизације

Један од најзаморнијих задатака је масовно креирање налога. Уместо коришћења adduser Један по један, можемо креирати скрипту која прима листу имена и употреба useradd заједно са chpasswd пар конфигуришите више корисника и група све одједном. Ово је посебно корисно приликом примене радних окружења за нове тимове.

Још један класичан пример је управљање резервним копијама. Можемо програмирати скрипту која креира компресоване датотеке са tar критичних директоријума као што су /etc o /homeдодељује им аутоматски датум и шаље их на удаљени сервер. Да би се избегла људска интервенција, користи се следеће: планер задатака cronомогућавајући прављење резервне копије, на пример, сваке ноћи у 3:00 ујутру.

  Овладавање командом тар гз у Линуку

Коначно, праћење ресурса је кључно. Комбиновањем df -h y awkМогуће је креирати скрипту која прати простор на диску и, ако коришћење пређе критични проценат (као што је 90%), аутоматски шаљи упозорење имејлом администратору, чиме се спречава колапс система због недостатка простора за складиштење.

Савладавање ових алата трансформише администрацију сервера из ручног и грешама склоног задатка у гладак и професионалан процес. Од управљања корисницима на стотинама машина путем SSH-а до сталног праћења здравља хардвера, Bash скриптовање је темељ на коме је изграђено. ефикасност у било ком ГНУ/Линукс окружењу.

Линук Цертифицатион
Повезани чланак:
Линук сертификат: Како постати стручњак за Линук