07/07/2014

Լինուքս-5. Ծրագրային փաթեթների կառավարում

Նախորդ մասը՝ այստեղ



Ըստ փաթեթային կառավարման (package managing)՝ լինուքսյան տարածված բաշխումները երկուսի են բաժանվում։ Մի մասը գործածում է dpkg (apt  գործիքով) կոչվող կառավարումը, մյուսը՝ rpm (yum գործիքով)։ dpkg-ն սկզբնապես Debian բաշխման կառավարումն է եղել, իսկ rpm-ը՝ Red Hat-ի։ Dpkg փաթեթային կառավարումն ունեն Debian-ից ծագած Ուբունտուն, սրանից էլ ծագած բազմաթիվ այլ բաշխումներ, իսկ rpm կառավարումը՝ Red Hat-ից ծագածները՝ Fedora, Arch, OpenSuse և այլն։ Կախված նրանից, թե ինչ փաթեթային կառավարմամբ բաշխում եք գործածում՝ ծրագրերի հետ աշխատանքի հրամանների ձևերը տերմինալում տարբեր կլինեն։ Քանի որ մենք արդեն գրել ենք, որ ներկայացնում ենք հիմնականում Ուբունտու բաշխումը, ապա ծրագրերին առնչվող հրամանները կներկայացնեն apt գործիքով կառավարումը։

Ուրեմն այսպես։



Ծրագրի տեղակայում և Synaptic

Ծրագիր կարող եք տեղակայել թե՛ Ձեր բաշխման տրամադրած ծրագրային կենտրոնի՝ Software Center (օրինակ՝ Ubuntu Software Center)-ի միջոցով, թե՛ Synaptic կոչվող ծրագրային կառավարման գործիքի, թե՛ տերմինալի միջոցով։ Վերջին դեպքում տերմինալում գրում ենք՝

sudo apt-get install ծրագրային փաթեթի անունը
Օրինակ՝
sudo apt-get install firefox

Այս հրամանից, ինչպես նաև sudo-ով սկսվող ո՛րևէ հրամանից հետո Ձեզանից պահանջվելու է լրացնել Ձեր հիմնական գաղտնաբառը, որով Դուք մուտք եք գործում համակարգիչ։ Լինուքսի ապահովության երաշխիքներից մեկն էլ հենց այն է, որ որևէ ծրագիր տեղակայել, ջնջել, համակարգային նիշքեր փոփոխել չի կարող ոչ ոք, եթե չունի ադմինիստրատորական իրավունքներ, այսինքն՝ չգիտի տեղակայված համակարգի ադմինիստրատորի գաղտնաբառը։ Տվյալ դեպքում, եթե համակարգիչը Ձերն է, բաշխումը տեղակայվել է Ձեզ համար և գաղտնաբառով Դուք եք մուտք գործում համակարգ, ապա նրա ադմինիստրատորը Դուք եք և միայն Դուք կարող եք ծրագիր տեղակայել, ջնջել, փոփոխել և համակարգային նիշքերի հետ գործողություններ կատարել Ձեր համակարգչում։

Ծրագրային փաթեթի անունը, որը Դուք պետք է գրեք տերմինալով տեղակայում կամ ծրագրերի հետ կապված այլ գործողություններ կատարելու համար, պետք է տարբերել տվյալ ծրագրի տարածված կամ ընտրացանկում երևացող անունից։ Այս երկուսը կարող են տարբերվել։ Եվ եթե Դուք սխալ անուն գրեք տերմինալում, Ձեր ուզած ծրագիրը չի տեղակայվի։ Իսկ ինչպե՞ս իմանաք ծրագրային փաթեթների անունները։ Խորհուրդ ենք տալիս Ձեր բաշխման տրամադրած ծրագրակենտրոնից (software centre), օրինակ՝ Ubuntu Software Centre-ից, կամ տերմինալի միջոցով, տեղակայել ծրագրերի կառավարման համար նախատեսված Synaptic (Synaptic package manager) կոչվող ծրագիրը, եթե, իհարկե, այն արդեն տեղակայված չէ Ձեր համակարգչում։ Synaptic-ը ծրագրերը ներկայացնում է հենց ծրագրային փաթեթների անուններով։ Այնպես որ եթե Դուք չգիտեք, թե որ ծրագրի փաթեթի անունն ինչ է, այն փնտրեք Synaptic-ում։ Synaptic-ն ունենալու դեպքում Դուք ծրագրերի մեծ մասը հենց նրանով էլ կարող եք տեղակայել, ջնջել, թարմացնել՝ առանց դիմելու տերմինալի օգնությանը։

Դուք կարող եք Synaptic-ը տեղակայել նաև հենց տերմինալով՝ գրելով՝
sudo apt-get install synaptic




Եթե Դուք որևէ ծրագիր տեղակայում եք տերմինալով՝ գործածելով վերոնշյալ հրամանը, և այդ ծրագիրը չի գտնվում, կամ ծրագրային փաթեթի անունն եք սխալ գրել, կամ էլ, ամենայն հավանականությամբ, այդ ծրագիրը ներառված չէ Ձեր համակարգչին հասանելի ծրագրերի մեջ։ Դուք կարող եք սա ստուգել Synaptic-ում. գրեք Ձեզ անհրաժեշտ փաթեթի անունն այնտեղ՝ փնտրման տողում, և տեսեք՝ արդյո՞ք այն կա։ Որովհետև Դուք վերևի հրամանով կարող եք տեղակայել այն ծրագրերը միայն, որոնք գտնվում են Synaptic-ում ներկայացված ծրագրացանկում։ Դրանցում չներառված ծրագրերը տեղակայելու համար Դուք պետք է Ձեր համակարգչին հասանելի ծրագրապահոցներին (repositories), որոնց պարունակությունն էլ ցուցադրում և դրանցից օգտվում է Synaptic-ը, ավելացնեք ծրագրապահոցների հավելյալ հասցեներ։ Սովորաբար, եթե Դուք Ձեզ հետաքրքրող մի նոր ծրագրի մասին իմանում եք համացանցային ինչ-որ կայքում, և այդ ծրագիրը ներկայացված չէ տարածված բաշխումների ծրագրապահոցներում, ապա այդ կայքը Ձեզ կտրամադրի այն ծրագրապահոցի հասցեն, որը Ձեզ պետք է Ձեզ հետաքրքրած նոր ծրագիրը տեղակայելու համար։ Այդ կայքը Ձեզ կտրամադրի բոլոր անհրաժեշտ հրամանները, որոնք Դուք պետք է գրեք տերմինալում՝ այդ ծրագիրն ունեցող ծրագրապահոցն ավելացնելու և ծրագիրը տեղակայելու համար։

Եթե ուզում եք տեսնել, թե ինչ ծրագրապահոցներից է օգտվում Ձեր համակարգիչը, Synaptic-ում նայեք ընտրացանկի Settings/Repositories բաժնում։ Կարող եք այդ ծրագրապահոցները տեսնել նաև Ձեր համակարգի թարմացման կառավարման (Update Manager) միջոցով ևս (այստեղ նույնպես նայել Settings-ում)։ Այստեղ ևս տրվում է այն ծրագրապահոցների ցանկը, որից օգտվում է Ձեր համակարգիչը, քանի որ թարմացման ծառայությունը Ձեր համակարգում առկա ծրագրերը թարմացնելու համար պետք է օգտվի այդ ծրագրապահոցներից։


Ծրագրի ջնջում


Որևէ ծրագիր ջնջել կարող եք թե՛ Synaptic-ի միջից, թե՛ Software Centre-ի, եթե այնտեղ գտնում եք այն։ Իսկ եթե ուզում եք տերմինալով ջնջել, ապա գրեք՝

sudo apt-get remove ծրագրային փաթեթի անունը

Ցանկալի է դրանից հետո նաև տալ purge հրամանը, եթե Դուք ուզում եք, որ այդ ծրագրի կոնֆիգուրացիոն նիշքերն էլ ջնջվեն։

sudo apt-get purge ծրագրային փաթեթի անունը

Քանի որ շատուշատ ծրագրակազմերի տեղակայման ժամանակ նաև տեղակայվում են այդ ծրագրերին անհրաժեշտ հավելյալ ծրագրային փաթեթներ, ապա երբ Դուք ջնջում եք հիմնական ծրագիրը, հնարավոր է, որ նրան անհրաժեշտ ծրագրային բոլոր փաթեթները, որ տեղակայվել էին նրա հետ և որոնք ուրիշ ծրագրերի համար պետք չեն, չջնջվեն և մնան համակարգչում։ Որպեսզի ազատվեք նաև ոչ անհրաժեշտ մնացորդային փաթեթներից, տերմինալում գրեք՝

sudo apt-get autoremove

Դարձյալ, Դուք կարող եք այս դեպքում էլ չօգտվել տերմինալից, եթե ունեք Synaptic-ը։ Ծրագիրը ջնջելուց հետո նայեք-տեսեք՝ արդյո՞ք Synaptic-ի ձախակողմյան ընտրացանկում ավելացել է autoremovable ծրագրափաթեթների նախընտրանքը։ Եթե այո՛, ջնջե՛ք այդ նախընտրանքի ներկայացրած ցանկի բոլոր միավորները։ Synaptic-ի ձախ ընտրացանկում ստուգեք նաև, թե կա՞ Not installed (residual config) նախընտրանքը։ Եթե այո՛, դրա ներկայացրած ցանկի բոլոր միավորները նո՛ւյնպես ջնջեք։ Այսպիսով՝ Դուք Ձեր համակարգիչը կմաքրեք ավելորդ և ոչ անհրաժեշտ փաթեթներից կամ դրանցից մնացած աղբից։

Համակարգիչը ծրագրերի տեղակայումից հետո մնացած այլ ավելորդ նիշքերից մաքուր պահելու համար Synaptic-ի նախընտրանքներում կատարեք հետևյալ գործողությունը։ Սա միանգամյա գործողություն է. ամեն անգամ այն կատարելու կարիք չունեք։ Լավ կլինի, որ հենց Synaptic-ը տեղակայեք Ձեր համակարգչում, հետո կատարեք հետևյալը.

Գնացեք Settings - Preferences - Files

Ընտրեք՝ Delete downloaded packages after installation

Սեղմեք հետևյալ կոճակը՝ Delete cached package files

Ծրագրային թափոններից ազատվելու համար երբեմն գործածեք նաև հետևյալ հրամանը՝
sudo apt-get clean
Սա մաքրում է ծրագրերի այսպես կոչված «քեշը» ` հիշապահեստը։


Ծրագրի թարմացում


Սովորաբար ծրագրերի թարմացումները գալիս են թարմացման ծառայության միջոցով (Update manager)։ Որոշ ծրագրեր միշտ ավելի ճիշտ է տեղակայել այն տարբերակով, որը Ձեզ տրամադրում է Ձեր բաշխման ծրագրակենտրոնը։ Սրա պատճառն այն է, որ, հնարավոր է, Ձեր ցանկացած թարմ տարբերակն այնքան էլ լավ չգործի Ձեր համակարգչում։

Այնուամենայնիվ, եթե Դուք անձամբ եք ցանկանում որևէ ծրագրի թարմ տարբերակը տեղակայել, ապա, եթե այդ թարմացումը .deb ընդլայնմամբ նիշքի տեսքով ներբեռնել եք համացանցից կամ տերմինալային հրամանների միջոցով է Ձեզ առաջարկվում տեղակայել որևէ ծրագիր, ապա հին տարբերակը ջնջելու կարիք չկա (եթե հատուկ չի նշվում դրա մասին)։ Պարզապես կտտացրեք .deb նիշքի վրա, և կբացվի Ձեր ծրագրակենտրոնը, որն էլ կառաջարկի Ձեզ ծրագիրը թարմացնել։ Եթե կտտացումով չբացվի ինչ-որ պատճառով, սեղմեք մկնիկի աջ կողմին և ընտրեք Open with Ubuntu Software Center (կամ այն ծրագրակենտրոնի անունը, որը լռելյայն գործածում է Ձեր համակարգը)։
* .deb ընդլայնումն ունեն Դեբիանի և նրանից ծագած Ուբունտուի և այլ բաշխումների համար նախատեսված փաթեթները։ Այնպես որ համացանցում ծրագրերի փաթեթներ փնտրելիս ուշադրություն դարձրեք, որ ճիշտ ընդլայնմամբ փաթեթ ներբեռնեք։ rpm փաթեթային կառավարմամբ բաշխումների համար նախատեսված փաթեթներն ունեն .rpm ընդլայնումը։
** Որևէ ծրագիր թարմացնելու համար Դուք չեք կարող գործածել թարմացման տերմինալային հրամանը՝ sudo apt-get update, որովհետև այս հրամանով ոչ թե կոնկրետ ծրագիր կարելի է թարմացնել, այլ Ձեր համակարգչին հասանելի ծրագրապահոցների տվյալները։ Թարմացման այս հրամանը սովորաբար գործածում ենք տերմինալով որևէ նոր բան տեղակայելիս կամ մի նոր ծրագրապահոց ավելացնելիս, որպեսզի մեր համակարգչի ծրագրապահոցներում առկա տվյալները թարմացվեն։ Օրինակ՝ եթե Դուք ուզում եք Ձեր Ուբունտու բաշխման մեջ տեղակայել մեր շատ սիրելի ;) FocusWriter ծրագիրը և ունենալ միշտ նրա թարմ տարբերակները, ապա, համաձայն ծրագիրը տրամադրող կայքի, հրամանաշարքը կլինի հետևյալը՝
sudo apt-add-repository ppa:gottcode/gcppa
sudo apt-get update
sudo apt-get install focuswriter


Առաջին տողում «հրամայում» ենք, որ FocusWriter-ի աղբյուր ծրագրապահոցը ավելանա մեր համակարգչում առկա ծրագրապահոցներին։ Երկրորդ հրամանով թարմացնում ենք մեր համակարգչին հասանելի բոլոր ծրագրապահոցների տվյալները։ Իսկ երրորդ հրամանով արդեն տեղակայում կամ թարմացնում ենք ծրագիրը։

Որևէ ծրագիր թարմացնելու համար պետք չէ նաև sudo apt-get upgrade հրամանը գործածել, որովհետև սա ոչ թե մեկ, այլ բոլոր փաթեթների թարմացման համար է։
Հաջորդ մասը՝ այստեղ։