Ndërtoni programin tuaj hap pas hapi duke përdorur Shell Scripting - Pjesa 5

Në botimet e mëparshme të këtij raundi të quajtur «Ndërtoni programin tuaj hap pas hapi duke përdorur Shell Scripting» Ne tashmë kemi mbuluar mënyrën e implementimit të moduleve të mëposhtme:

Shell Scripting

Tani në këtë botim të ri do të shohim se si të zbatojmë një:

MODULI I AUTORIZIMIT TER P USRDORUESIT ME FJAL

Cili duhet të jetë moduli (seksioni) i programit tuaj që ju lejon të siguroheni që vetëm përdoruesi ose përdoruesit e përcaktuar më parë për ta përdorur atë mund të ekzekutojnë operacionet e përcaktuara për programin tuaj. Mund të përfshijë ose jo një fjalëkalim për përdoruesit e autorizuar në fjalë. Në këtë rast, ne do të shqyrtojmë një me emrin e përdoruesit dhe vërtetimin e fjalëkalimit.

Unë personalisht shtoj linjat e mëposhtme për të krijuar këtë modul:

Nën kodin:


###############################################################################
# INICIO DEL MODULO DE AUTORIZACIÓN DE USUARIO CON CONTRASEÑA
###############################################################################

setterm -background blue

espeak -v es-la+m1 -a 100 -p 50 -s 150 -b UTF-8 --stdout "ESTIMADO USUARIO: RECUERDA QUE EL LINUX POST INSTALL SCRIPT BICENTENARIO SOLICITA TU AUTENTICACION Y VALIDACION PARA EVITAR USOS INDEBIDOS POR PARTE DE PERSONAL NO AUTORIZADO. EN CASO DE NO SABER USUARIO Y CONTRASEÑA, ESCRIBA SALIR EN MAYUSCULA." | aplay -q

echo "ESTIMADO USUARIO: RECUERDA QUE EL LINUX POST INSTALL SCRIPT BICENTENARIO SOLICITA TU AUTENTICACION Y VALIDACION PARA EVITAR USOS INDEBIDOS POR PARTE DE PERSONAL NO AUTORIZADO. EN CASO DE NO SABER USUARIO Y CONTRASEÑA ESCRIBA, SALIR EN MAYUSCULA." | clear

dialog --infobox "\n \n \nESTIMADO USUARIO: RECUERDA QUE EL LINUX POST INSTALL SCRIPT BICENTENARIO SOLICITA TU AUTENTICACION Y VALIDACION PARA EVITAR USOS INDEBIDOS POR PARTE DE PERSONAL NO AUTORIZADO. EN CASO DE NO SABER USUARIO Y CONTRASEÑA, ESCRIBA SALIR EN MAYUSCULA." 10 80

################################################################################

USUARIO=0

until [ "$USUARIO" = "sysadmin" ];

do

espeak -v es-la+m1 -a 100 -p 50 -s 150 -b UTF-8 --stdout "ESTIMADO USUARIO: INTRODUZCA UN NOMBRE DE USUARIO VALIDO." | aplay -q

read -p "INTRODUZCA UN NOMBRE DE USUARIO VALIDO / PLEASE ENTER A VALID USER: " USUARIO
echo ""

if [ "$USUARIO" = "SALIR" ]; then

   setterm -background green
   play /usr/share/sounds/warning.wav 2> /dev/null

   echo -e "\nUsted ha decidido salir del Programa, hasta luego.\nYou have decided to leave the program, later.\n\n\nPuede intentarlo mas tarde.\nYou can try later."

   exit 0

fi


if [ "$USUARIO" != "$USR1_VALID" ]; then

   setterm -background red
   play /usr/share/sounds/error.wav 2> /dev/null

   echo -e "\nError al introducir un Usuario valido.\nFailed to enter a valid user.\n\n\nVuelva a intentarlo de nuevo.\nPlease try again."

fi

done

if [ "$USUARIO" = "$USR1_VALID" ]; then

   setterm -background blue
   play /usr/share/sounds/info.wav 2> /dev/null

   echo -e "\nAuntenticación de Usuario valido exitosa.\nValid user authentication successful.\n\n\nEspere unos segundos para continuar.\nWait a few seconds before continuing"

   sleep 3

fi

################################################################################

CLAVE=0

until [ "$CLAVE" = "lpi*sb8" ];

do

espeak -v es-la+m1 -a 100 -p 50 -s 150 -b UTF-8 --stdout "ESTIMADO USUARIO: INTRODUZCA UNA CONTRASEÑA VALIDA." | aplay -q

read -p "INTRODUZCA UNA CONTRASEÑA VALIDA / ENTER A VALID PASSWORD: " CLAVE
echo ""

if [ "$CLAVE" = "SALIR" ]; then

   setterm -background green
   play /usr/share/sounds/warning.wav 2> /dev/null

   echo -e "\nUsted ha decidido salir del Programa, hasta luego.\nYou have decided to leave the program, later.\n\n\nPuede intentarlo mas tarde.\nYou can try later."

   exit 0

fi


if [ "$CLAVE" != "$PASSWD_VALID" ]; then

   setterm -background red
   play /usr/share/sounds/error.wav 2> /dev/null

   echo -e "\nError al introducir una Contraseña valida.\nFailed to enter a valid password.\n\n\nVuelva a intentarlo de nuevo.\nPlease try again."

fi

done

################################################################################

if [ "$CLAVE" = "$PASSWD_VALID" ]; then

   setterm -background blue
   play /usr/share/sounds/info.wav 2> /dev/null

   echo -e "\nAuntenticación de Contraseña valida exitosa.\nValid password authentication successful.\n\n\nEspere unos segundos para continuar.\nWait a few seconds before continuing"

   sleep 3

fi

espeak -v es-la+m1 -a 100 -p 50 -s 150 -b UTF-8 --stdout "ESTIMADO USUARIO: ACCESO GARANTIZADO - USUARIO Y CONTRASEÑA CORRECTA" | aplay -q

echo "ESTIMADO USUARIO: ACCESO GARANTIZADO - USUARIO Y CONTRASEÑA CORRECTA." | sleep 5 | clear

dialog --infobox "\n \n \nESTIMADO USUARIO: ACCESO GARANTIZADO - USUARIO Y CONTRASEÑA CORRECTA." 10 80 ; sleep 5

DIALOG=${DIALOG=dialog}

$DIALOG --title "LINUX POST INSTALL - SCRIPT BICENTENARIO" --clear \
        --yesno "\n \n \nBIENVENIDO USUARIO: $(whoami), PRESIONE "SI" PARA CONTINUAR O "NO" PARA FINALIZAR." 10 80

case $? in
  0)
    echo ""
    echo ""
    echo "Continuando el proceso..."
    echo ""
    echo "."
    sleep 1
    echo ".."
    sleep 1
    echo "..."
    sleep 1
    clear;;
  1)
    exit 0;;
  255)
    exit 0;;
esac

dialog --infobox "\n \n \n ESPERE UNOS SEGUNDOS MIENTRAS EL PROGRAMA SE INICIALIZA..." 10 80 ; sleep 3

###############################################################################
# FINAL DEL MODULO DE AUTORIZACIÓN DE USUARIO CON CONTRASEÑA
###############################################################################

Siç mund ta shihni, ky modul së pari konfiguron tuajin ekran terminali në sfond blu për vlerësim më i mirë vizual i përdoruesit, pastaj lëshojnë mesazhe dëgjimore me flasin y vizuale me humbas y dialog. Pastaj përmes një lak duke përdorur komandën deri vërteton se vlera e futur për emri i përdoruesit të krahasohet me vlera (vlerat) e vlefshme të përdoruesit të përcaktuara më parë, duke i dhënë përdoruesit mundësinë e mbylljes së programit në mënyrë korrekte duke shtypur fjalën DALI. Nëse vërtetimi i përdoruesit është i suksesshëm, vazhdoni të kryeni të njëjtën procedurë me fjalëkalimin. Për të përfunduar përfundimin në rast se jeni të suksesshëm, vërtetimi i përdoruesit dhe Fjalëkalimi me një menu e thjeshtë bërë në dialog duke pyetur nëse Përdoruesi X dëshiron të vazhdojë procesin e programit apo jo. Nëse është kështu, lësho një të thjeshtë shirit progresiv pritja bëhet me komandën rast.

=============

Rekomandim:

Programoni ose mendoni! Çfarë është e para? o Çfarë është më e rëndësishme?

Pa dyshim, kur fillojmë programimin, gjëja e parë që duhet të mësojmë janë algoritmet ose diagramet e rrjedhës si baza teorike për të mësuar logjikën dhe matematikën për të rritur arsyetimin tonë logjiko-matematik, megjithatë, kjo bazë është e mjaftueshme ose e përshtatshme për të filluar programimin. Kuptoni atë Mësoni të Programoni, nuk mjafton, është e nevojshme Mësoni të Mendoni.

N WH CIL LANN GJUHA PROGRAMUESE DUHET T I FILLOJ T TO ARRITEM T TO MARSOJ SHPEJT TO N PRO PROGRAM?

Kjo sigurisht që është një pyetje e detyrueshme që të gjithë i bëjmë vetes kur fillojmë në botën e mrekullueshme të programimit. Por nuk është pyetja e parë e saktë që duhet t'i bëjmë vetes, por:

A KAM NDIHM C KAPACITETIN ANALITIK PALR TAL ANALIZUAR PROBLEMIN, SHTYRJEN Elementet e tij dhe SHIKO NJ A PPRGJIGJE?

Dhe sigurisht të mësosh të programosh në ndonjë nga gjuhët më të zakonshme ose të fuqishme ka shumë përfitime të pamohueshme. Meqenëse na siguron mjetet e nevojshme për të zhvilluar aplikacionet tona, kjo na ndihmon të lokalizojmë problemet në pajisjet teknologjike dhe na hap dyert në tregun e punës, por programimi është vetëm një pjesë e vogël e shkencës kompjuterike.

Ndërsa Programoni ose shkruani kodin konsiston në mësimin e një kompjuteri (përmes një aplikacioni, softueri ose sistemi) për të kryer një operacion të caktuar, pas a Opsioni X kryer nga një operator ose a Ngjarja X nga ose brenda të njëjtit Hardware ose Softuer që e mbështet atë; Parimet e Shkencës Kompjuterike (Informatika / Sistemet) ato na mësojnë aftësi arsyetimi dhe logjike që janë të dobishme në fusha të ndryshme nga teknologjia. Shkenca kompjuterike, në thelb, mëson se si të përpunojmë dhe përfaqësojmë informacionin.

Prandaj, unë e konsideroj këtë si mënyrën më të përshtatshme për të Mësoni të programoni.

Unë e shpjegoj, duke marrë si shembull, këtë post tjetër të quajtur Mos mëso të kodosh. Mësoni të mendoni » de Yevgeny Brikman, ku ky Inxhinier përmbledh ndryshimin midis të dish të programosh dhe të dish të mendosh si një shkencëtar kompjuteri me këtë analogji:

Sado e pranishme të jetë një teknologji, kjo nuk na bën ta mësojmë kur e studiojmë në një qendër mësimore. Si shembull, mund të marrim se pothuajse çdokush në një moment të jetës ka fluturuar ndonjëherë në një aeroplan, por nga atje për të arritur licencën e pilotit, duhet të kalojë një rrugë shumë e gjatë, e cila zakonisht nuk është pjesë e studime zyrtare të një personi, por studime shumë të veçanta për një fushë specifike.

Shpjeguar më hollësisht, kjo do të thotë se njohuritë që dikush mund të ketë në lidhje me mënyrën se si funksionojnë aeroplanët, në thelb shumë prej nesh kanë nga arsimi i mesëm dhe universitar ose në ndonjë karrierë teknike (inxhinierike), të tilla si fizika dhe matematika që na ndihmojnë të të kuptojë se si forcat janë të pranishme në fluturim, dhe elementët e jashtëm të tillë si graviteti, presioni atmosferik, shpejtësia, fërkimi ose ngritja. Dhe ashtu si biologjia na ndihmon të kuptojmë se si një qenie njerëzore sillet në lartësinë X, ose sesi ndikohet nga mungesa e oksigjenit dhe ftohja ekstreme. Ose historia që na lejon të dimë procesin që dha shkas për krijimin e aeroplanëve dhe çfarë roli luajnë ato në transport dhe tregti. Të gjitha këto njohuri të marra së bashku në një qendër mësimore, nga fusha të ndryshme të njohurive, na japin një ide të përgjithshme se çfarë është aeroplani dhe si funksionon ai. Lëndët e përgjithshme na ndihmojnë të kuptojmë një larmi të gjerë problemesh, përfshirë mënyrën se si fluturojnë aeroplanët. Diçka shumë e ndryshme nga një lëndë e specializuar që të mëson vetëm të përdorësh një nga ato makineri, një lloj aeroplani. Prandaj, për të njëjtën arsye, ne duhet të përqendrohemi në studimin e Shkencave Kompjuterike, dhe jo vetëm në programim. Meqenëse ndërsa Shkenca Kompjuterike na mëson globalisht të mendojmë në një kuptim të përgjithshëm (sistemik), programimi është vetëm një mjet që na lejon të përkthejmë një ide ose problem Y përmes një kodi X, të analizuar më parë (saktë ose gabimisht).

Kjo dhe shumë këndvështrime të tjera të kontribuara nga Yevgeny Brikman në postimin e tij për çfarë program është vetëm pjesë e një njohurie më të gjerë të ngulitur brenda Shkencë kompjuterike, të cilat janë thelbësore për çdo programues.

Më në fund, mos harroni të përparoni në një mënyrë autodidakte duke mësuar rreth komandave më të rëndësishme të GNU / Linux për të vazhduar avancimin e njohurive që ata do të përdorin më vonë, dhe që gjithçka paraqitet këtu në lidhje me zhvillimin e disave moduli, funksioni, ndryshorja, komanda ose veprimi në përgjithësi mund të kryhet në mënyra të ndryshme ose metoda alternative, të ndryshme nga ato të përshkruara këtu.

Poshtë një Transmetimi i ekranit i bërë nga unë, ku mund të shihni se si ekzekutohet ky modul, modulet e mëparshme ose të mëvonshme që do të mësohen, në mënyrë që të shihni potencialin e Shkrimit të Shell në një nivel mesatar (Jo i avancuar):

Ekrani i provës LPI-SB8

(INSTALIMI I POSTS LINUX - BICENTENARIO SHKRIMI 8.0.0) - Pjesa 2


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   Një tjetër që po kalonte dijo

    Të kem nëse e kam kuptuar drejt. Ju i kërkoni përdoruesit të futë emrin e tij të përdoruesit ... mirë. Dhe pasi të vendosni fjalëkalimin tuaj ... dhe rezulton se fjalëkalimi është "lpi * sb8" ... dhe se është "i koduar" në skenar.

    Nëse përdoruesi ka lexuar hyrjen në skenarin… bingo !!… ata tashmë e dinë se cilin emër përdoruesi dhe fjalëkalimin duhet të vendosin !!!

    Nuk e di nëse kam bërë një gabim për diçka ... por nëse po, kjo është shumë e pasigurt ...

  2.   Ing Jose Albert dijo

    E vërtetë! Unë dhashë një metodë tani, të gjithë me atë kureshtje të lindur që karakterizon racën njerëzore duhet të kërkojnë përsosjen ose forcimin e saj në linjat e sigurisë.