Soluţia Linux_WP este o configuraţie specială prin care se accesează baze de date de pe un server Linux de pe staţii Windows.
Principiul este ca programele consumatoare de resurse să fie rulate pe server, variantele Linux nativ ale acestora, iar diversele utilitare, cum ar fi programul de declaraţii DUKIntegrator, Excel (sau alternativele acestuia OpenOffice, Libre Office), hPRINT, etc. să fie rulate de pe staţiile de lucru.
Operarea programelor se va desfăşura prin fereastra de terminal asigurată de utilitarul Putty.
În figura de mai jos redăm schema generală a acestei arhitecturi, din punct de vedere organizatoric al elementelor componente.
Din punct de vedere funcţional, arhitectura Linux_WP este prezentată pe figura de mai jos.
Schema subliniază cele mai importante proprietăţi de funcţionare:
La pornirea programelor, pentru ca toate aceste legături să fie iniţializate se foloseşte programul hSTART prin care are loc logarea.
Server
Din punct de vedere administrativ, pe server găsim o structură de fişiere care poate să conţină mai multe medii HAMOR Soft.
În rădăcina sistemului de fişiere există catalogul HAMOR în care regăsim cataloagele corespunzătoare mediilor de lucru:
\HAMOR
\mediu_1
\hDATA -drive H: -accesibl doar administratorilor
\BD
executabile
\hGROUP -drive S:
\RO
\DOC -documentaţii, descrieri,
FILES.DBF -catalogul fişierelor local,
\RW
anexe
DECL_OBL -fişiere declaraţii (fără program)
BD hPRINT
RES -resurse programe
\hUSER -drive U:
\user_1
\RO
HMENU.BAT
\RW
\DBMENU -BD hMENU -proprie pt.fiecare utilizator
\SPOOL -catalog spooler
\PDF -fişiere PDF generate
\LST -catalog LST
\TMP -catalog temporar
\user_2
...
\mediu_2
...
De pe staţia de lucru, mediul este vizibil prin unităţile de disc H:, S: şi U:.
Unitatea de disc H: este accesibilă doar administratorilor, nu este vizibilă utilizatorilor standard.
Unităţile de disc de mai sus sunt mapate la lansare de hSTART.
Structura de fişiere care formează mediul HAMOR Soft este sub controlul serverului SAMBA care rulează pe server.
Staţia de lucru
Staţia de lucru de asemenea trebuie să fie pregătită, să conţină câteva utilitare şi programe pentru conectare şi utilizarea mediului.
Acestea de obicei sunt pregătite în catalogul C:\hSTART
Structura catalogului hSTART:
\hSTART
DECL_OBL -programul de declaraţii DUKIntegrator
START -baza de date hSTART
TMP -catalogul temporar
hSTART
hWTools
alte programe, utilitare Windows ce se lansează cu hWTools
În plus faţă de cele prezentate la varianta cloud, OpenVPN trebuie să fie instalat.
Grupul utilizatorilor programelor HAMOR Soft:
Pentru conectarea la server de pe staţiile de lucru folosim utilitarul hSTART.
Conectarea cu succes presupune:
Se lansează hSTART.
Acesta afişează profilul implicit. Prin F1 sau click dreapta poate fi ales un alt profil, după care poate fi lansată conectarea.
Ce face hSTART la conectare ?
Kiturile de instalare sunt puse în catalogul partajat hUSER, accesibil prin WIN+r, \\adresa IP
În acest capitol prezentăm modalitatea de administrare a bazelor de date de tip hMET în sistemul Linux_WP.
Bazele de date din Linux_WP pot fi accesate prin fereastra Putty sau direct din Windows prin serverul Samba
Modul de lucru prin PuttY
De fapt înseamnă executarea operaţiilor accesând structura de fişiere direct din fereastra Putty.
În acest caz se vor folosi utilitare şi comenzi Linux.
Lansarea lor are loc fie din hMENU, fie din fereastra shell lansată din hMENU, modalităţi prezentate mai jos.
Modul de lucru prin Samba (Windows)
După conectarea la server, din Windows vor exista trei cataloage partajate pentru fiecare utilizator dintr-un mediu HAMOR Soft care sunt mapate prin H: pentru administratorii mediului:
S:
U:
Pentru utilizatorul standard vor fi mapate doar S: şi U:.
Aceste drive-uri mapate vor putea fi accesate în modul obişnuit din Windows şi permit efectuarea operaţiilor de migrare baze de date, backup, copiere discuri pe server, etc.
Recomandăm ca operaţiile de întreţinere ale bazelor de date să fie executate sub Linux_WP.
Pentru a sprijini această activitate, în Linux există utilitarele specifice folosite la administrarea bazelor de date, iar hMENU pune la dispoziţie un set de operaţii lansabile direct din meniu.
În timpul rulării comenzilor lansate din hMENU vor exista setările mediului asigurând rularea corespunzătoare a programelor/utilitarelor.
În continuare vom prezenta aspectele care considerăm că sunt specifice acestui sistem.
În hMENU prin Altele\ Comanda Linux avem acces la un set de comenzi specifice sistemului, pregătite pentru a putea fi lansate mai comod.
După lansare avem posibilitatea de a completa patru parametri:
Catalog de lucruComandaF1 sau click dreapta
Parametru-1,2 -parametrii transmişi către comandă/utilitar
Click dreapta sau tasta F1 lansează o fereastră de navigare în structura de fişiere.
Fereastra de navigare este apelabilă pe câmpurile Catalog de lucru, Parametru-1, Parametru-2.
Câmpul Catalog de lucru fie rămâne liber, fie trebuie să fie completat cu un catalog existent. Pentru preluarea unui catalog din fereastra de navigare în câmp:
Alege,
Alt + EnterLista comenzilor pregătite:
Exemplu de lansare program cu parametri:
<code>Comanda: ./HMET2C Parametru 1: UTIL.DEM Parametru 2: u</code>
Linux Shell este interpretorul de comenzi din Linux.
Lansat din hMENU, preia setările variabilelor de mediu existente în Linux_WP, lucru care asigură rularea programelor cu parametrii corespunzători. Din acest motiv operaţiile de administrare şi întreţinere se recomandă să fie făcute fie direct din operaţiile lansabile din hMENU sau din Linux Shell lansat din hMENU.
În continuare prezentăm căteva scenarii şi sfaturi utile care pot fi folosite cu succes în Linux Shell.
În Linux comenzile sunt „case sensitive“, adică literele scrise cu majuscule şi minuscule sunt semnificative.
Despre bazele de date hMENU:Fiecare utilizator are o bază de date hMENU proprie şi aceasta se află în catalogul hUSER/utilizator, unde utilizator reprezintă un nume concret de utilizator.
Prin urmare, administrarea bazelor de date hMENU presupune transmiterea unei căi de acces mai lungi, care duce către baza de date proprie a utilizatorului.
Lansarea unui program existent în catalogul curent
Înainte de numele pogramului se introduce ./
Exemple:
./HUTIL UTIL.DEM ./HMET2C SALA.DEM u ./HMET2C UTIL.DEM u ./HMET2C /HAMOR/hamor/hUSERS/utilizator/RW/DBMENU h sau ./HMET2C ../hUSERS/utilizator/RW/DBMENU h
DBU3 este vizibil din orice catalog, poate fi lansat direct: DBU3
Lansarea unui program hMET2 în regim administrator
<code> ./HSALAR SALA.DEM $ ./HIMOB IMOB.DEM $</code>
Lansare hMENU în regim de administrare baze de date
./HMENUE /HAMOR/hamor/hUSERS/utilizator/RW/DBMENU $ sau ./HMENUE ../hUSERS/utilizator/RW/DBMENU/DBMENU $
ObservaţiiTastaţi HMENUE şi nu HMENU !
Această comandă permite administrarea structurii de menuri, deci se permite intrarea în interfaţa de administrare prin tastaF8.
După părăsirea interfeţei de administrare, se revine în fereastra de comenzi, nu în programul de meniuri.
Pentru a urmări efectele modificărilor efectuate, reveniţi în hMENU prin părăsirea ferestrei de comenzi sau relansarea programului în modul prezentat.
Din hMENU astfel lansat nu pot fi pornite programele!
Pentru lansarea programelor părăsiţi fereastra de comenzi, astfel se revine în HMENU, care va funcţiona în modul obişnuit.
Upgrade baze de date
Lansare hMET2UP direct din mediul HAMOR:
./HMET2UP SALA.DEM S
Executaţi upgrade baze de date întotdeauna din mediul HAMOR Soft!
Variabilele de mediu trebuie să fie setate, asigurând funcţionarea corectă a utilitarului.
Editarea comenzii
În timpul editării unei comenzi, prin tastele săgeată stânga, săgeată dreapta se poate poziţiona cursorul în cadrul comenzii, fiind posiblă accesarea oricărei porţiuni şi efectuarea de modificări.
Introducerea rapidă a unei comenzi sau a unei căi de acces
Tasta TAB facilitează introducerea comenzilor.
De exemplu, dacă dorim să lansăm ./HSALAR69 SALA.DEM din mediul HAMOR:
TAB, în mediul HAMOR cel mai probabil se va afişa HSALAR69, deoarece reprezintă partea semnificativă a programelor existente în mediul HAMOR,
TAB de două ori consecutiv, ca urmare se listează toate variantele care încep cu HSALA, ex.: HSALADOC, HSALAR, HSALAR68, HSALAR69, HSALAZ, HSALAZ69.
Introducerea căii de acces va fi facilitată în mod asemânător, ex:
TAB
TAB, se listează toate bazele de date SALA disponibile,
History - revenirea la o comandă deja introdusă:
sageata sus, sageata jos,
Copy/Pastesăgeata stânga/ săgeata dreapta la partea potrivită a comenzii, efectuaţi modificările.
hWTools are un rol cheie în sistemul Linux_WP, tocmai din acest motiv considerăm important să fie discutat mai în detaliu modul în care este rulat în Linux_WP.
În Linux_WP programele (nativ Linux) rulează pe server, dar multe taskuri sunt rulate local pe staţii. Lansarea în execuţie a taskurilor pe calculatoarele locale este implementată prin hWTools.
Taskuri iniţiate de programele rulate pe server, dar executate pe calculatoarele locale:
Procedura de conectare la server lansează automat hWTools pe staţia de lucru.
Fiecare utilizator are un catalog spooler propriu, care se află pe server în catalogul propriu utilizatorului: hUSER/user_n/RW/SPOOL
Taskurile vor fi iniţiate de programele rulate pe server, prin depunerea unui fişier de comenzi.
Comenzile depuse vor fi preluate de hWTools şi executate.
După natura lor taskurile lansate pot fi:
Exemple de taskuri sincronizate:
Cum este implementată această procedură ?
Numele fişierului de comandă care lansează taskul propriu-zis se formează din numele programului urmat de codul staţiei. Ex.:hMET2C01.BAT
Numele fişierului rezultat este identic, dar are extensia .REZ
Oprirea utilitarului hWTools pentru depanare
La implementare se întâmplă ca taskurile să nu fie lansate deloc, sau să nu fie lansate cu parametrii doriţi pe calculatorul local. Pentru a urmări exact ce anume se întâmplă, hWTools poate fi oprit. Fişierul de comenzi va fi generat şi depus în catalogul spooler, dar fără să fie prelucrat. Astfel poate fi deschis cu un editor de text şi poate fi studiat conţinutul.
* parametru nou: $+ -forţează lansarea în regim de editare meniuri, este util când se lucrează cu mapări şi s-au folosit mapări incorecte, s-au referit variabile de mediu care nu sunt definite. În aceste cazuri permite lansarea în regim de editare meniuri. Dacă s-ar lansa direct, ar fi posibil să genereze eroare de rulare.
Interfaţa cu script pentru lansarea aplicaţiilor:
Vezi şi comentariul din script!
DIRECTOR director Director dIRECTOR DiReCtOR ...
/ (slash) şi nu prin \ (backslash) ca în MS_DOS sau Windows.
./HMENUE. Dacă, de exemplu, dorim să pornim programul din directorul /home/HAMOR.DEM/ există două posibilităţi: fie dăm comanda /home/HAMOR.DEM/HMENUE, fie cu comanda schimbare catalog cd mergem în directorul executabilului /home/HAMOR.DEM şi tastăm ./HMENUE
./HMENUE /HAMOR/mediu/hUSERS/user/RW/DBMENU/DBMENU $+
uname - Afişează informaţii despre sistem.
pwd - (print working directory) - listează calea absolută a directorului curent (directorului în care ne aflăm)
dd /another/location - (change directory) schimbă directorul curent în directorul primit ca parametru
ls /some/directory - (list) listează conţinutul directorului primit ca parametru cu argumente
ls -hla
decât ecranul monitorului să se desfăşoare pas cu pas, tastaţi comanda „| more“
(pipe more) după comanda pentru afişare: ls -hla | more
Dacă avem un fişier text (în format .txt) şi vrem să vedem ce conţine. Pentru asta există comanda cat în forma standard. Presupunând că fişierul text se
numeşte „readme.txt“ şi dorim sa aflăm ce conţine, vom tasta:
cat readme.txt
iar dacă conţinutul acestuia depăşeşte dimensiunea ecranului (conţine mai multe pagini), vom folosi parametrul „| more“ astfel:
cat readme.txt | more
diff [-be] fis1 fis2
Compară cele două fişiere presupunând ca ele sunt fişiere ASCII şi vizualizează informaţii despre liniile care trebuie modificate în fiecare pentru a le aduce la aceeaşi formă.
Opţiunea –b indică ignorarea caracterelor TAB şi a spaţiilor în comparaţii.
find listacai listapredicate
Caută în arborele de fişiere, începând cu nodurile specificate în fiecare cale
din listacai, pentru a găsi fişierele care se potrivesc expresiilor booleene din
listapredicate.
Predicatele pot fi:
Exemplu:
find /-name *.c -print - va tipări toate fişierele cu extensia .c, din toţi directorii de pe disc, începând cu rădăcina
ls | grep H*
rezultate pentru filtrarea cu textul dat, poate să fie şi expresie regular.
Exemplul returnează numai fişierele/directoarele cu iniţiala H.
mkdir nume_director - (make directory) creează un director cu numele indicat, se
poate crea şi cu cale absolută
cp fişier_sursa fisier_destinatie – (copy) copiază fişierul sau directorul indicat
într-un nou loc cu parametru
Opţiuni:
mv fisier_sursa fisier_destinatie - (move) mută un fişier sau director în altă
locaţie dar în acelaşi timp poate să-l şi redenumească. Opţiunile v,t sunt valabile.
rm fisier - (remove) şterge un fişier sau director
Pentru a elimina un director cu conţinutul acestuia, se vor folosi parametrii „-rf“
la comanda „rm“, ca în exemplul următor: rm -rf DIRECTOR.
Toate fişierele şi subdirectoarele acestui director vor fi eliminate.
ln -s /cale/la/catalog/fisier ./fisier - crearea unui link simbolic (shortcut) pentru
un fişier la calea dată (primul parametru) pentru fişierul (următorul parametru)
din directorul actual (./).
Pentru a schimba drepturile fişierelor/cataloagelor trebuie să fiţi proprietarul acelor fişiere/cataloage.
chmod - Schimbă modul unui fişier
chmod 755 file - Fişierul va fi editabil şi executabil pentru proprietar, şi va fi executabil/citibil pentru grupul său şi pentru oricine.
chown - Schimbă proprietarul unui fişier
chown daniel file - Îl face pe „daniel“ proprietarul fişierului.
chown -R daniel dir - Îl face pe „daniel“ proprietarul catalogului şi a tot ce se află în el.
chgrp - Schimbă grup proprietar al unui fişier
chgrp hUSERS file - Îl face pe hUSERS să fie grupul fişierului.
last yourusername - vizualizează ultimele login-uri.
Comanda logout sau CTRL+D face ieşirea din consolă.
w afişează utilizatorii conectaţi.
Zip este o arhivă folosită pe toate sistemele de operare, de la Linux la Windows,
Macintosh sau Solaris. Foloseşte o metodă de compresie de nivel înalt şi permite
arhivarea atât a fişierelor, cât şi a directoarelor şi subdirectoarelor folosindu-se
de diverse niveluri de compresie specificate de utilizator. În Linux, există două
comenzi, una pentru arhivare zip şi una pentru dezarhivare unzip.
Este important de ştiut, că o arhivă în format .zip făcută cu programul zip de Linux poate fi despachetată foarte bine de orice dezarhivator de zip compatibil pkunzip.
Pentru a arhiva un fişier cu zip, se dă comanda:
zip nume_arhiva.zip fisier_pentru_arhivat
De asemenea, opţiunile pentru selectarea fişierelor prin simbolul „*“ sunt suportate. Astfel, comanda:
zip arhiva.zip *.DBF va arhiva toate fişierele cu extensia mp3 din directorul curent şi va scoate la ieşire o arhivă cu numele muzica.zip.
Dacă se doreşte arhivarea unui director care conţine mai multe fişiere, va fi folosită opţiunea „-r“, astfel: zip -r nume_arhiva.zip director_pentru_arhivat
Împachetează atât arhiva .gz, cât şi fişierul .tar:
tar -czvf arhiva.tar.gz director_pentru_arhivat
Despachetează atât arhiva .gz, cât şi fişierul .tar:
tar -xzvf arhiva.tar.gz
Parametrul c (create) sau x (extract) determină dacă programul va arhiva sau va dezarhiva, cu z (gz) se determină modul/extensia de împachetare, v vine din verbose, adică să afişeze fişierele cu care lucrează, opţiunea f (file) trebuie să fie ultima opţiune după care imediat trebuie să urmeze numele fişierului.
Presupune hWTools, care este un utilitar Windows şi rulează pe staţia de lucru. Trebuie să existe un spooler comun, în mod standard acesta este în zona utilizator, în catalogul RW\SPOOL\
prn, calea de acces se completează cu |lp -o raw,
Impr. şi Port/UNC, acestea fiind importante când se lucrează cu hWTools, nu la imprimarea directă.
Line Feed să fie interpretat ca avans rând şi revenire la început.Esc,&,k,2,G şi se introduce în secvenţa de uniţializare a imprimantei, din hUTIL.