Professional Documents
Culture Documents
სერვერებისათვის
Tanamedrove informaciuli teqnologiebis farTod danergva
da gamoyeneba Cvens qveyanaSi mniSvnelovanwilad
aris damokidebuli rogorc teqnikur (aparatuli platforma)
da sistemur (programuli platforma) miRwevebze, aseve
specialistTa kvalifikaciisa da codnis doneze.
1991 წლის 5 ნოემბერი: ლინუსმა “ოფიციალურად” განაცხადა Linux-ის 0.02. ვერსიის გამოსვლის
თაობაზე. მიუხედავად ამისა ეს ისევ განიხილებოდა როგორც მორიგი ექსპერიმენტებისათვის
განკუთვნილი ოპერაციული სისტემა. ძირითადად ყურადღება დაეთმო სისტემის ბირთვის
(kernel) დახვეწას, არანაირი ყურადღება არ ექცეოდა რიგითი მომხმარებელთათვის მასთან
მუშაობის უზრუნვეყოფას, არ მოხდა სისტემის დოკუმენტირება ტირაჟირება. ეს განაპირობა
შემდეგმა გარემოებებმა: ოპერაციული სისტემა უნდა გამხდარიყო დამოუკიდებელი, არ
ყოფილიყო საჭიროება შემდგომი ვერსიების Minix-ზე კომპილირება სრულყოფისა. 0.03 ვერსიაზე
მუშაობის დამთავრების შემდეგ ლინუსმა მომდევნო ვერსიას პირდაპირ მიანიჭა 0.10 ნომერი,
ვინაიდან იმ დროისათვის პროექტზე უკვე საკმაო რაოდენობის ხალხი მუშაობდა და ბევრი რამე
დაიხვეწა.
დაახლოებით წელიწადნახევრის შემდეგ 1993 წლის დეკემბერში Linux-ის ვერსიის ნომერი უკვე
0.99.pl14 იყო, რაც გახდა საწინდარი იმისა რომ სულ მალე გამოვიდადა ახლა ნამდვილად
ოფიციალური სტაბილური ვერსია 1.0. რაც 1994 წელს მოხდა. (არ აგვერიოს Linux-ის ვერსიები
დისტრიბუტივების ვერსიებში მაგალითად Red Hat 7.3 ან Mandrake 8.2. დისტრიბუტივები ცალკე
თემა გახლავთ).
Linux თავდაპირველად შეიქმნა Intel-ის 32-ბიტიანი x86-ბაზაზე შექმნილ 386 ან უფრო მძლავრ
პროცესორებზე სამუშაოდ. Linux-ის მუშაობა ასევე შესაძლებელია შემდეგი პლატფორმის
მანქანებზე: Compaq Alpha AXP, Sun SPARC ,UltraSPARC, Motorola 680x0, PowerPC, PowerPC64,
ARM, Hitachi SuperH, IBM S/390, MIPS, HP PA-RISC, Intel IA-64, DEC VAX, AMD x86-64, CRIS.
Linux წარმატებით შეიძლება გამოვიყენოთ როგორც Workstation ასევე Server პლატფორმად.
დღესდღეობით Linux UNIX მაგვარი ოპერაციული სისტემების ღირსეული კლონი არის, Linux
სრულყოფილი მრავალფუნქციონალური მრავალდარგობრივი ოპერაციული სისტემა გახლავთ
რომელიც პასუხობს თანამედროვე ინფორმაციული ტექნოლოგიების მზარდ მოთხოვნილებებს.
მასზე შესაძლებელია X windows-თან, (გრაფიკულ გარემოში ) თუ console (ბრძანების სტრიქონში)
მოსახერხებელი მუშაობა. Linux-ის მომხმარებელთათვის არსებობს საკმაოდ კარგი თანამედროვე
გრაფიკული და საოფისე პროგრამები, ასევე მათთვის ინტერნეტში სრულყოფილად სამუშაოდ
უამრავი პროგრამა არსებობს რომლებითაც შესაძლებლობა გექნებათ დაათვალიეროთ ვებ
გვერდები, მიიღოთ და გააგზავნოთ ელექტრონული ფოსტა, გამიყენოთ IRC, ICQ,
Yahoo Messanger, AOL Instant Messanger, Microsoft Messanger და სხვა პოპულარული
საკომუნიკაციო საშუალებები. არანაკლები რაოდენობით არსებობს პროგრამირებით
დაინტერესებულ პირთათვის განკუთვნილი პროფესიონალური დონის გრაფიკული
ინტერფეისიანი პროგრამული პროდუქტები. რა თქმა უნდა ყველანაირი პროგრამული
უზრუნველყოფა არსებობს Linux-ის როგორც ინტერნეტ, ბეჭდვით თუ ფაილ სერვერად
გამოსაყენებლად.
http://groups.google.com/group/comp.os.minix/browse_frm/thread/c25870d7a41696d2/f447530d082cd95d#f
ისევე, როგორც ყველა Unix სისტემა, Linux სისტემაც შედგება ოპერაციული სისტემის
ბირთვისაგან (www.kernel.org) და სხვა პროგრამებისაგან (ანუ პაკეტებისაგან), რომლებიც
უზრუნველყოფენ სამომხმარებლო ამოცანების გადაწყვეტას. კომპლექტს, რომელიც
აერთიანებს ბირთვსა და პროგრამათა ერთობლიობას, დიტრიბუტივი ეწოდება.
პოპულარული დისტრიბუტივებია: RedHat (www.redhat.com), Mandrake
(www.mandrakelinux.com), Slackware (www.slackware.com), Debian GNU/Linux (www.debian.org).
ჩვეულებრივ დისტრიბუტივები შეიცავენ ყველა აუცილებელ პროგრამულ უზრუნველყოფას
როგორც სერვერის, ისე სამუშაო სადგურის ორგანიზებისათვის.
Linux კარგად ეგუება სხვა ო.ს.-ბს. Linux-ის სტანდარტული ჩამტვირთავი LiLo (Linux Loader)
საშუალებას მოგცემთ ერთ კომპიუტერზე იქონიოთ რამდენიმე ო.ს. გარდა ამისა Linux-ს ისეთ
ფაილურ სისტემებთან შეუძლია მუშაობა, როგორებიცაა: FAT16, HPFS, FAT32, NTFS, HFS.
Linux-ის დაყენება შეიძლება უკვე არსებულ DOS განყოფილებაში. ამისათვის შექმნილია
სპეციალური ფაილური სისტემა - UMSDOS.
ბოლოს მინდა დავამატო: თუ კი ჯერ ვინმეს არ მოგისინჯავთ Linux, უკვე დროა ეს გააკეთოთ.
საინფორმაციო ტექნოლოგიების სამყარო ძალიან ინტენსიურად ვითარდება და აუცილებელია
სართო ტენდენციებზე მიყოლა, რათა ერთ მშვენიერ დღეს ტექნიკური პროგრესისაგან ძალიან
ჩამორჩენილი არ აღმოჩნდეთ.
_ procesori - pentiumi;
_ Setup-Si kompaqt diskodan (CD ROM) sistemis gaSvebis
saSualeba;
Login: root
Password: ********
Login: user
Password: ********
FAT (File allocation Table) ფაილური სისტემა წარმოადგენს ცხრილს, რომელშიც მითითებულია:
ლოგიკური დისკის უშუალოდ დამისამართებული ადგილები, სადაც თავსდება ფაილები
ან მათი ფრაგმენტები;
დისკური მეხსიერების თავისუფალი ადგილები;
დისკის დეფექტური ადგილები;
/ - birTvi
gio@meliton:/home/gio>brZaneba,
sadac brZaneba SeiZleba iyos:
Selis tipebi
Seli SHELL aris samuSao sistemuri garemo brZanebaTa enaze. failebi Tavmoyrilia
bin katalogSi
/.../csh C shell
/.../tcsh TC shell
imisaTvis rom gavigoT romel SelSi vmuSaobT terminalSi (igive konsoli) avkrifoT braZaneba :
echo $SHELL
****** - enter kidev gavimeorebT. gaCndeba axali “iuzeri” Tavisive axal jgufSi
/bin/bash⊔zurab
gadatana-saxelis gadarqmeva:
3. ქსელთან მუშაობა :
Linux-ის ქსელური ბრძანებები: Ping, Traceroute, Talk, Finger, Write, Wall, Who, Top:
Ping ip-addresss
Ping hostname
Traceroute ip-addresss
Traceroute hostname
შემთხვევაში თუკი შედეგად მივიღებთ ფიფქებს ეს იმას ნიშნავს, რომ გზის ამ კომპონენტზე
პორტი.
Finger e-mail
Write username
Who <CR>
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
#| | | | |
10 9 * * * root /bin/modsecOUT.sh
27 9 * * * root rm -f /var/log/parliament/modsec_audit.log
30 9 * * * root /bin/modsec_PBO_OUT.sh
32 9 * * * root rm -f /home/zurab/P_B_O/MOD/modsec_audit.log
დამახსოვრება ურთულეს საქმეს წარმოადგენდა. DNS (Domain Name Server) სერვერის სამართვი
DNS (Domain Name Server) სერვერის პორტია 53, რომლის ინსტალაცია ხორციელდება
სადაც: db.hepi.ge და db.194.67.216 შესაბამისად არის DNS (Domain Name Server) სერვერის
ადრესატებისათვის. Primary არის ჩემი ქსელის სერვერი, ხოლო Secondary - კი ჩემი ქვექსელის
IN NS NS.HEPI. GE .
IN NS NS. DESY.DE.
IN NS NS. MSU.RU.
IN MX 10 MAIL.HEPI.GE.
IN MX 30 MAIL.DESY.DE.
IN MX 50 MAIL.MSU.RU.
NS IN A 194.67.216.1
MAIL IN A 194.67.216.2
WEB CNAME NS
ამას მოყვება ბაზის ე.წ. ქუდი SOA, რომლის წინ გვაქვს ბაზის შიგა ბრძანება IN. ეს ბრძანება
ეს რიცხვი.
წერტილით.
არის შემდეგი ტიპის: db.194.67.216. შებრუნებული ბაზაში ძირითადი აღწერები არის პირდაპირი
1 IN PTR NS
2 IN PTR MAIL
ხოლო გარე კავშირზე - ინტერნეტში მუშაობს SMTP ოქმით. როდესაც დგება მეილ-სერვერთან
სპამი.
ხშირად ამბობენ , რომ გაიმართა Httpd (პორტი 8080) . ამ დროს Linus-ის სხვადასხვა ჯიშებში
DISABLE = NO
DISABLE = YES
საერთოდ, ეს პაკეტი არის ინტეგრირებული, მას გააჩნია შიგა ბრძანებები, რომელთა საშუალებით
მაშინ ამის შემდეგ გაჩნდება შეკითხვა password, და მხოლოდ ამ პაროლის სწორად მიწოდების
ნაჩვენები:
ამ მეთოდში მთავარი პრობლემა არის ის, რომ სისტემა საკმაოდ ნელია. საქმე იმაშია, რომ
სიმულაციას, შესაძლოა სისტემის სიჩქარე 1000-ჯერ მცირე იყოს, ვიდრე რეალური მოდელირე
ბული აპარატურისა.
არის ჰიპერვიზორიც:
ისე რომ ამ სისტემაში არ გავაკეთოთ არანაირი მოდიფიკაცია. ერთადერთი შეზღუდვა არის იმაში,
მექანიზმი ოპერაციული
ლიცენზია წარმოებისფაილური დისკურიI/O-ს მეხსიერების
CPU-ს ქსელის მიგრაცია
სისტემა თარიღი სიტემის ქვოტა განსაზღვრაგანსაზღვრაქვოტა იზოლაცია
იზოლაცია
chroot Unix BSD, 1982 ნაწილ არა არა არა არა არა არა
GNU GPL, ობრივ
CDDL
Containers/ZonesOpenSolarisCDDL 05/2008 კი კი არა კი კი კი არა
Containers/ZonesOpenSolarisCDDL 01/2005 კი კი არა კი კი არა არა
FreeVPS Linux GNU GPL - კი კი არა კი კი კი არა
iCore Virtual Windows XPProprietary 06/2008 კი კი არა არა არა კი არა
Accounts (პატენტი)
Linux-VServer Linux GNU GPL - კი კი კი კი კი კი არა
v.2
LXC Linux GNU GPL 2008 კი არა კი კი კი კი არა
v.2
OpenVZ Linux GNU GPL - კი კი კი კი კი კი კი
v.2
Parallels Virtuozzo
Linux Proprietary - კი კი კი კი კი კი კი
Containers Microsoft (პატენტი)
Windows
FreeBSD Jail FreeBSD BSD 03/2000 კი კი არა კი ნაწილ კი არა
ობრივ
SysJail OpenBSD, BSD - კი არა არა არა არა კი არა
NetBSD
WPARS AIX Proprietary 10/2007 კი კი კი კი კი კი კი
(პატენტი)
ერთდროულად:
მოწყობილობების შემთხვევაში.
Linux-VServer ასევე იყენებს სპეციალური ფორმა უტილიტას Chroot, რაც უზრუნველყოფს ფუძე
$ vzctl start 42
Starting VPS ...
VPS is mounted
ასევე შესაძლებელია მივიღოთ ინფორმაცია უკვე არსებული VPS-ების შესახებ, შემდეგი ბრძანების
გამოყენებით vzlist. პროცესების სამართავად OpenVZ-ში არსებობს დავალებების ორდონიანი
დამგეგმავი (დისპეჩერი) CPU, ეს დისპეჩერი პირველ რიგში განსაზღვრავს, რომელმა VPS-მა
უნდა მიიღოს ნებართვა CPU-ზე, როცა ეს უკვე განსაზღვრულია, მეორე დონის დამგეგმავი
უშვებს პროცესს შესრულებაზე. მისთვის დაწესებული Linux-ის პრიორიტეტების
გათვალისწინებით.
Downloads საქაღალდეში:
ფანჯარაში გადასვლა:
მომდევნო სქრინზე ვირჩევთ .iso ტიპის ფაილს, რომელიც წარმოადგენს ოპერაციული სისტემის „
Image“-ს, ვხსნით მას და Start ღილაკით ვიწყებთ, ჩვენს შემთხხვევაში Windows - ის ინსტალაციას.
ერთმანეთისგან განცალკევება.
3. უსაფრთხოება
3.2. შიდა და გარე უსაფრთხოების ამაღლება - დაცვა შიდა და გარე კიბერ შემოტევისგან.
5. მუდმივი ხელმისაწვდომობა
5.1. კრიტიკული სერვერების თანმიმდევრული განახლება
- ადვილად განახლებადია
UI
WMS
LB
VOMS
ვირტუალური ორგანიზაციის მენეჯმენტის სერვისი წარმოადგენს ინფორმაციას მომხმარებელთა
ავტორიზაციისათვის. VOMS მონაცემების შესანახად იყენებს რელაციურ მონაცემთა ბაზას
MySQL-ს ან ORACLE-ს. ის მართავს მომხმარებლის აუტენტიფიკაციასა და ავტორიზაციას და
აძლევს საშუალებას ვირტუალური ორგანიზაციის წევრებს სხვადასხვა წვდომის უფლებებით
გამოიყენონ GRID-ის რესურსები. ეს სერვისი შეიძლება შეიცავდეს მრავალ ვირტუალურ
ორგანიზაციას. ის ანიჭებს მომხმარებელს უფლებებს მათი ვირტუალურ ორგანიზაციის
წევრობის, ამ ორგანიზაციაში მომხმარებელთა ჯგუფის, როლის და ატრიბუტების მიხედვით.
ყველა სერვისი შეიცავს VOMS კლიენტს. სერვისი მუშაობს ვარგისი სერტიფიკატის მქონე
მომხმარებელთან. გააჩნია ინტერფეისი მომხმარებლის ვირტუალურ ორგანიზაციაში
გაწევრიანების, ადმინისტრატორისთვის მომხმარებლის სამართავად და სხვადასხვა
სერვისისთვის შენახული ინფორმაციის მოთხოვნის შემთხვევაში მის მისაწოდებლად
(მომხმარებელთა სია, როლი და ა.შ.) . BDII ინფორმაციული სისტემა წარმოგვიდგენს
დეტალურ ინფორმაციას GRID სერვისებზე. მას აქვს სამ დონიანი იერარქიული სტრუქტურა:
BDII core(resource level), BDII site და BDII top. BDII core აყენია GRID-ის კონკრეტულ სერვისთან
ერთად და შეიცავს ინფორმაციას მის შესახებ. ყოველ GRID საიტზე გაშვებულია BDII site სერვისი. ი
ინფორმაციას საიტის ყველა BDII core-დან. BDII top კრებს ინფორმაციას ყველა საიტის BDII
site-დან. როგორც წესი VO-ში არის რამდენიმე BDII top-ი, რომ ერთ-ერთის დაზიანების
შემთხვევაში მუშაობა არ შეფერხდეს და მოხდეს დატვირთვის გადანაწილება. ინფორმაციული
სისტემის კლიენტი უგზავნის მოთხოვნას BDII top-ს რათა მიიღოს მისთვის საჭირო ინფორმაცია.
BDII იღებს ინფორმაციას გაშვებული საინფორმაციო პროვაიდერებისგან. ეს არის სკრიპტები,
რომლებიც იღებენ ინფორმაციას, აძლევენ მას LDAP (Lightweight Directory Access Protocol –
პროტოკოლი ინტერნეტში განაწილებული დირექტორიების ინფორმაციის წვდომისა და
შენახვისთვის) Data Interchange Format (LDIF) ფორმატს და გამოაქვთ შედეგი სტანდარტულ
გამოსავალში . ეს საინფორმაციო პროვაიდერები შეიძლება გამოყენებულ იქნეს სხვა BDII-სთვის
მოთხოვნის გასაგზავნათ. Generic Information Provider (GIP) არის პროგრამა, რომელიც ამარტივებს
საინფორმაციო პროვაიდერების შექმნას და ჩამოყალიბებას. ის მცირე ფლაგინების გამოყენების
საშუალებას იძლევა, რაც აიოლებს ახალ სისტემებთან თავსებადობას. ინფორმაციული სისტემის
ინფმორმაცია შეესაბამება სქემას რომელსაც GLUE სქემას უწოდებენ. Freedom of Choice for Resources
mechanism (FCR) გამოიყენება BDII top-ში რაც აძლევს VO-ს საშუალებას გავლენა მოახდინოს
მათი კონკრეტული სერვისის გამოყენებაზე. FCR პორტალი აყალიბებს VO-სთვის
ხელმისაწვდომი სერვისების სიას. პორტალი შეიძლება VO მენეჯერის მიერ გამოყენებული
იქნას საიტების თეთრი და შავის სიის შესადგენად (ანუ სანდო და საეჭვო საიტები).
ამ ინფორმაციას შემდეგ იყენებს BDII top.
CE
/C=UK/O=eScience/OU=CLRC/L=RAL/CN=John Doe
სადაც: my cert.p12
არის გადასაყვანი PKCS12 ფორმატის ფაილი; userkey.pem არის მიღებული private key ფაილი;
usercert.pem არის მიღებული PEM სერტიფიკატის ფაილი. userkey.pem და usercert.pem ფაილი
უნდა დაკოპირდეს UI-ში.
attribute = expression;
Executable = "/bin/hostname";
StdOutput = "std.out";
StdError = "std.err"; 11
Executable = "test.sh";
InputSandbox = {"/home/doe/test.sh"};
StdOutput = "std.out";
StdError = "std.err";
Executable და Arguments
StdInput = "std.in";
InputSandbox ატრიბუტში:
OutputSandbox ატრიბუტით:
სადაც ფაილების სახელები არის ფარდობითი გზა ამოცანის სამუშაო დირექტორიის მიმართ
(ანუ მიმდინარე დირექტორია როდესაც შემსრულებელი ფაილი იშვება).
ჯგუფური სიმბოლოს (Wildcards) გამოყენება დაშვებულია მხოლოდ InputSandbox
ატრიბუტში. ფაილების სია input sandbox-ში ფარდობითია UI-ზე მიმდინარე დირექტორიის
მიმართ. OutputSandbox ატრიბუტში აბსოლუტური გზის განსაზღვრა შეუძლებელია.
InputSandbox ატრიბუტი არ შეიძლება შეიცავდეს ორი ერთიდაიგივე დასახელების ფაილს,
მიუხედავათ მათი განსხვავებული აბსოლუტური გზისა, რადგან ისინი გადაეწერებიან
ერთმანეთს WN-ზე.
Executable = "test.sh";
StdOutput = "std.out";
StdError = "std.err";
InputSandbox = {"test.sh", "fileA", "fileB"};
#!/bin/sh
cat $1
cat $2
Requirements ატრიბუტი შესაძლოა გამოყენებულ იქნეს ამოცანის გასაშვებად საჭირო
რესურსების მითითებით. მისი ცვლადი არის ლოგიკური ტიპის (Boolean) გამოსახულება
რომელიც იღებს ნამდვილ (true) მნიშვნელობას ამოცანისთვის რომელიც უნდა გაიშვას
რომელიმე CE-ზე. ამ მიზნით BDII-ს ყველა GLUE ატრიბუტის გამოყენება შეიძლება, წინ
other.-ის დაწერით. მხოლოდ ერთი Requirements ატრიბუტის გამოყენება შეიძლება.
რამდენიმეს დაწერის შემთხვევაში მხოლოდ ბოლო გამოიყენება. თუ საჭიროა ამოცანაში
რამდენიმე პირობის გათვალისწინება მაშინ უნდა მოხდეს მათი კომბინირება ერთ
Requirements ატრიბუტში.
other.GlueHostBenchmarkSI00);
Requirements = Member("VO-cms
CMSSW_2_0_0",other.GlueHostApplicationSoftwareRunTimeEnvironment);
(!RegExp("cern.ch", other.GlueCEUniqueID));
Requirements = ( other.GlueHostOperatingSystemName ==
"CentOS" ||
RegExp("Scientific", other.GlueHostOperatingSystemName) ||
>= 5 &&
other.GlueHostOperatingSystemRelease < 6) ;
ან ასე:
SN = other.GlueHostOperatingSystemName ;
SR = other.GlueHostOperatingSystemRelease ;
SL5 = ( SN == "CentOS" ||
RegExp("Scientific", SN) ||
RegExp("Enterprise", SN) )
Intel i386-i686
RegExp("i[3456]86",other.GlueHostArchitecturePlatformType) ;
64-bit Itanium
თუ საჭიროა მოცემულ CE-ის უახლოეს SE-ზე ჩაიწეროს თვლის შედეგები, მაშინ საჭიროა
დავწეროთ:
Member("srm.pic.es", other.GlueCESEBindGroupSEUniqueID);
(other.GlueCEPolicyMaxWallClockTime> 1440 );
RetryCount = 0;
ShallowRetryCount = 3;
MyProxyServer ="myproxy.cern.ch";
MyProxyServer ="";
არჩევა თუ სად უნდა გაიშვას ამოცანა რამოდენიმე CE-ს შორის ხდება CE-ის რანგის მიხედვით
(rank), რომლის სიდიდე გამოისახება ათწილადის სახით.
თუ რანგი ცხადად არ არის
მითითებული მაშინ რანგი უდრის - other.GlueCEStateEstimatedResponseTime, სადაც
სავარაუდო პასუხის დრო არის დროის ინტერვალი ამოცანის გადაგზავნასა და მისი გაშვების
დასაწყისის შორის. მიუხედავად ამისა მომხმარებელს შეუძლია თავიდან განსაზღვროს CE-ის
რანგი Rank ატრიბუტით:
Rank = other.GlueCEStateFreeCPUs;
-other.GlueCEStateWaitingJobs);
ReplicaCatalog="ldap://lhc20.sinp.msu.ru:9011/rc=
Testbed\Replica
Catalog,dc=lxshare0226,dc=cern,dc=ch";
OutputSE = "gppse05.gridpp.rl.ac.uk";
ხშირად მოსახერხებელია
დავალების შესრულების დაწყებამდე რესურსების დავალებასთან თავსებადობის შემოწმება.
ამისათვის გამოიყენება ბრძანება:
glite-wms-job-list-match
Youridentity: =FR/O=CNRS/OU=LAL/CN=CharlesLoomis/Email=loomis@lal.in2p3.fr
$ grid-proxy-info -all
subject : /C=FR/O=CNRS/OU=LAL/CN=Charles Loomis/Email=
loomis@lal.in2p3.fr/CN=proxy
loomis@lal.in2p3.fr
timeleft : 11:36:17
გარკვეულ ელემენტებზე
ინფორმაციის მიღება შესაძლოა ბრძანების პარამეტრების შესაბამისი მნიშვნელობების
საშუალებით. უფრო დაწვრილებით ყველა ამ ბრძანების შესახებ ინფორმაციის მიღება
შესაძლოა თუ გამოვიყენებთ ბრძანებებთან ერთად პარამეტრს--help.
• ამოცანების გაუქმება;
https://lhc20.sinp.msu.ru:7846/137.138.181.214/152312203546264?lhc20.sinp.msu.ru:7771
Proxy
/C=UK/O=eScience/OU=CLRC/L=RAL/CN=John Doe/CN=proxy
VOMS Proxy
MyProxy
grid-proxy-init –hours.
myproxy-info –s -d,
myproxy-destroy–s.
ამ მაგალითში
GRID გარემოში ხდება მცირე დავალების სკრიპტის გაგზავნა, ის სრულდება და რეზულტატი
ეგზავნება მომხმარებელს. შევქმნათ შესასრულებელი ფაილი დასახელებით HelloScript.sh,
რომელიც შეიცავს შემდეგ სკრიპტს:
#!/bin/sh
/bin/ls 9485968.txt
Executable = "HelloScript.sh";
StdOutput = "std.out";
StdError = "std.err";
InputSandbox = {"HelloScript.sh"};
OutputSandbox = {"std.out","std.err"};
თუ სკრიპტი HelloScript.sh არ არის მოთავსებული მიმდინარე დირექტორიაში, მაშინ
აუცილებელია მიეთითოს სრული გზა სკრიპტისაკენ.
HelloFromScript
სპეციფიკაციის მოთხოვნების
საშუალებით, მომხმარებელს შეუძლია გააგზავნოს დავალება იმ საიტზე რომელიც
აკმაყოფილებს აღნიშნულ მოთხოვნებს და რომელიც აუცილებელია დავალების
შესასრულებლად. არასრულ სპეციფიკაციას შეუძლია გამოიწვიოს დავალების შესრულების
გაჩერება და დროის კარგვები.
დავალების აღწერის JDL ფაილში სპეციფიკაციისათვის
გამოიყენება ატრიბუტი "Requirements". ამ ატრიბუტის მნიშვნელობებს წარმოადგენენ
ლოგიკური გამოსახულებები, რომელთა საშუალებით მიიღება საჭირო შეზღუდვები.
შესაძლო მნიშვნელობები (ან ცვლადები) რომლებიც გამოიყენება მოთხოვნების აღწერისათვის,
განისაზღვრება გამოთვლითი ელემენტის ატრიბუტებით. ისინი განისაზღვრება GRID-ის
საინფორმაციო სამსახურების საშუალებით.
ldapsearch -x \
-Hldap://lxshare0225.cern.ch:2135 \
-b 'mds-vo-name=edg,o=grid' \
'(objectclass=computingelement)'
Requirements =Member(other.RunTimeEnvironment,"ALICE-3.07.01");
მაგალითი 3. RankingResources
პარამეტრის მნიშვნელობა იმ
შეფასებული დროის ტოლია (წ ამებში) რომელიც გაივლის დავალების გაშვებამდე. ასეთი
მითითება ყოველთვის ოპტიმალური ვერ იქნება და მომხმარებელს შეუძლია გამოიყენოს
სხვა კრიტერიუმები, მაგალითად:
Rank = other.FreeCPUs;
მონაცემების მართვა
srm://:/srm/managerv2?SFN= TURL
lcg-infosites ბძანებით
ასევე შესაძლებელია სხვა სერვერების პოვნა, მათ შორის მოცემულ SE ელემენტთან ახლო
მყოფი CE-ის პოვნა. მაგ: lcg-infosites --vo lhcb ce.
დირექტორიის შექმის ბრძანება:
lfc-mkdir -p /grid/MyVO/MyUserName
guid:399099e7-6333-45e9-8029-67aa6097d16a.
#!/bin/sh
file:`pwd`/proteins1.fasta
alignment.exe file:`pwd`/ariadne
დირექტორიის დათვალიერება:
lfc-ls -l /grid/MyVO/MyUserName
ჩვენ ყოველთვის შეგვიძლია lfn-იდან guid-ის მიღება და პირიქით. მაგალითად lcg-lg (GUID სია)
ბრძანება გვიბრუნებს lfn ან surl-თან ასოცირებულ guid-ს. SE-ზე ატვირთული ფაილისთვის,
რომელსაც დავარქვით lfn-ი შეგვიძლია ვნახოთ მისი guid:
lcg-lg --vo
MyVO lfn:/grid/MyVO/MyUserName/MyFileName
შედეგი იქნება:
guid:399099e7-6333-45e9-8029-67aa6097d16a
export LFC_HOME=/grid/MyVO/MyUserName
ასლების მართვა
lcg-del ფაილების წაშლა (ერთი ან ყველა ასლის) lcg-rep ფაილის კოპირება ერთი SE-დან სხვა SE-ზე
ასლის კატალოგში დარეგისტრირება (replicate)
ხშირად საჭიროა რაღაც ფაილების გადაგზავნა ერთი კვანძიდან მეორეზე. ამის გაკეთება
შესაძლებელია შემდეგი ბრძანებით:
შესაძლო ოპციების სიის მიღება შესაძლებელია ამ ბრძანების გამოყენებით ოპცია--- help-თან ერთად
შესაძლოა შემდეგი პროტოკოლების გამოყენება: file, gsiftp и http. მაგალითად:
file:///home/loomis/stuff.txt
gsiftp://testbed011.cern.ch/~/stuff.txt
gsiftp://testbed011.cern.ch//tmp/stuff.txt
http://marianne.in2p3.fr/datagrid/documentation/daemon-guidelines.html
http://www.grid.auth.gr/en/services/hellasgrid-ca/
და ვაჭერთ ლინკს [import], რომელიც არის
https://s1.ngi.grena.ge:8443/voms/grena/register/start.action
https://voms.grid.auth.gr:8443/voms/meteo.see-grid-sci.eu/register/start.action
Usage:
lcg-info --list-attrs
lcg-info –help
'Processor,CPUVendor,PhysicalCPU,OS,OSRelease,PlatformArch,SMPSize,VMemory'
lcg-info –list-attrs
grid-proxy-init
თუ არ მიუთითეთ ბოლო პარამეტრი (-hour 14) მაშინ თქვენი პროქსი გააქტიურებს თქვენს
სერთიფიკატს 12 საათით.
voms-proxy-info
თუ თქვენ უფრო ადრე მორჩით მუშაობას შეგიძლით “გამოხვიდეთ” GRID-დან ბრძანებით:
voms-proxy-destroy
lcg-ls -l lfn:/grid/meteo.see-grid-sci.eu/some_dir/
კატალოგის შექმნა
lfc-mkdir /grid/meteo.see-grid-sci.eu/my_dir
lfc-rm -r /grid/meteo.see-grid-sci.eu/my_dir
ფილის გადმოტვირთვა
1. lfc-rm -a -f /grid/meteo.see-grid-sci.eu/some_dir/some_file
Executable=;
StdOutput=;
StdError=;
InputSandbox=;
OutputSandbox=;
OutputSandboxBaseDestURI=;
ან OutputSandboxDestURI= ;
როდესაც ამოცანა აღწერილია (მომზადებულია jdl ფაილი) მისი GRID-ზე გაშვება ხდება
ბრძანებით:
glite-ce-job-submit -a -r CE my_task.jdl
<full-hostname>:<port-number>/cream-<service>-<queue-name>
მაგალითი:
cream.sg.grena.ge:8443/cream-pbs-meteo
ხოლო ოპცია -a ნიშნავს ავტო დელეგირებას, ე.ი. თქვენს მიერ აქტივირებული პროქსის
მიერ მონიჭებული GRID-ზე წვდომის უფლებების (credentials) მონაცემების ავტომატურ
გადაცემას GRID-ზე ამოცანის გაშვებისათვის. თუ არ მივუთითეთ ეს პარამეტრი მაშინ
აუცილებლათ უნდა მივმართოთ პროქსის დელეგირების უტილიტას დელეგირების
საიდენტიფიკაციო ნომრის მისაღებად და ეს საიდენტიფიკაციო ნომერი გადავცეთ
ამოცანის გასაშვებად:
https://cream.sg.grena.ge:8443/CREAM283514829
glite-ce-job-status
https://cream.sg.grena.ge:8443/CREAM283514829
https://cream.sg.grena.ge:8443/CREAM283514829
JobType="Normal";
Executable="cpuinfo.sh";
StdOutput="std.out";
StdError="std.err";
InputSandbox="./cpuinfo.sh";
OutputSandbox={"std.out","std.err","node.txt"};
OutputSandboxBaseDestURI="gsiftp://localhost";
]
-------------------------------
InputSandbox=“gsiftp://se.sg.grena.ge/storage/gia/some_file“
-------------------nodes.jdl------------------------
Type="Job";
JobType="Normal";
CpuNumber=8;
Executable="nodes.sh";
InputSandbox="nodes.sh";
StdOutput="std.out";
StdError="std.err";
OutputSandboxBaseDestURI="gsiftp://localhost";
]
------------------------------------------------------------
CpuNumber=8
--------- dir_struct.jdl------------------------
Executable="/bin/bash";
Arguments="dir_structure.sh";
StdOutput="std.out";
StdError="std.err";
InputSandbox="./dir_structure.sh";
OutputSandbox={"std.out","std.err","directory"};
OutputSandboxDestURI= {
"gsiftp://se.sg.grena.ge/storage/gia/std.err","gsiftp://se.sg.grena.ge/storage/gia/std.out","gsiftp://se.sg.g
rena.ge/storage/gia/directory"};
----------------------------------------------------------
------- lfc_oper.jdl---------------
Executable="/bin/bash";
Arguments="lfc_oper.sh";
StdOutput="std.out";
StdError="std.err";
InputSandbox="./lfc_oper.sh";
OutputSandbox={"std.out","std.err","directory"};
OutputSandboxBaseDestURI="gsiftp://localhost";
]
--------------------------------------------------------
ამ ფაილში მითითებულია პარამეტრი Arguments, რაც ნიშნავს იმას რომ მთავარი
შემსრულებელი ფაილი რომელიც მოცემულია პარამეტრით Executable (ჩვენ შემთხვევაში
/bin/bash) გაეშვება არგუმენტით lfc_oper.sh:
/bin/bash lfc_oper.sh.
Type="Job";
JobType="Normal";
CpuNumber=8;
Executable="new_dna.sh";
InputSandbox={"./dna_basis.tgz","./DNAopt.in","./new_dna.sh"};
StdOutput="std.out";
StdError="std.err";
OutputSandboxBaseDestURI="gsiftp://localhost";
PerusalFileEnable=true;
PerusalTimeInterval=100;
PerusalListFileURI="gsiftp://se.sg.grena.ge/storage/gia/DNAopt.out";
PerusalFilesDestURI="gsiftp://se.sg.grena.ge/storage/gia";
]
--------------------------------------------------------
PerusalFilesDestURI="gsiftp://se.sg.grena.ge/storage/gia).
სამუშაოს დასრულების შემდეგ აღმოჩნდა, რომ შექმნილი იყო Device Drivers-ების ”დავალებების
სახელი “Freax”, რომელიც მიიღო free, freak და x-ის გაერთიანებით, მაგრამ ერის არ მოეწონა ეს
ათასობით ფაილს შორის, რომლებიც შეადგენენ თავად ”ლინუქსს”, ერთ-ერთს ეწოდება “Credits”.
ოპტიმიზირებისათვის
როდესაც რამოდენიმე პროგრამისტი ახორციელებს ერთი და იგივე პროცედურას, საბოლოოდ
შესაძლებელია აირჩიო საუკეთესო და სწორედ ეს ხორციელდება ლინუქსში: ბუნებრივი
გადარჩევის პროცესი, რომელიც მიმდინარეობს ხანგრძლივი შეთავსებებისა და
ბეტა-ტესტების მეშვეობით.
3) NUMA.
• Ada
• Chapel
• Ease
• Id
• NESL
• Sisal
paraleluri dialeqtebi:
• MultiLisp
• XMTC
• Charm++
• mpC
• Vienna Fortran
• MPP Fortran
• HPF
• OpenMP
>touch FileName.c