FreeBSD: варианты выбора

Êîìïîíåíòû Distributions â ïîäàâëÿþùåì ñâîåì áîëüøèíñòâå — îðèãèíàëüíûå ðàçðàáîòêè ïðîåêòà FreeBSD è åãî èñòîðè÷åñêèõ ïðåäøåñòâåííèêîâ. Ãîâîðÿ î êëàññè÷åñêèõ óòèëèòàõ Unix, ÿ íå ñëó÷àéíî óïîòðåáèë òåðìèí «àíàëîãè» — ýòî, êàê ïðàâèëî, ôóíêöèîíàëüíî ðàñøèðåííîå èõ âîñïðîèçâåäåíèå (äîñòàòî÷íî ïîñìîòðåòü íà óòèëèòó more, êîòîðàÿ ïî ñâîèì ôóíêöèÿì ãîðàçäî áîëåå ïîõîäèò íà Linux’îâûé less, íåæåëè íà ñâîþ òåçêó èç ñèñòåì-ïîòîìêîâ System V). Ñàìîáûòíîñòü êîìïîíåíòîâ Distributions ïîä÷åðêèâàåòñÿ ëèöåíçèåé, ïîä êîòîðîé îíè ðàñïðîñòðàíÿþòñÿ, è êîòîðàÿ íîñèò èìÿ BSD-ëèöåíçèè.  îòëè÷èå îò øèðîêî èçâåñòíîé ëèöåíçèè GPL, îíà íå âîçáðàíÿåò ðàñïðîñòðàíåíèå îñíîâàííûõ íà íåé ðàçðàáîòîê áåç èñõîäíûõ òåêñòîâ (çäåñü íå ìåñòî îáñóæäàòü âîïðîñ î òîì, êàêàÿ èç ýòèõ ëèöåíçèé áîëåå ñîîòâåòñòâóåò èäåàëàì ñâîáîäû è äåìîêðàòèè). Ñïðàâåäëèâîñòè ðàäè íóæíî çàìåòèòü, ÷òî â ñîñòàâ FreeBSD Distributions èñòîðè÷åñêè âõîäèò íåêîòîðîå êîëè÷åñòâî êîìïîíåíòîâ, çàèìñòâîâàííûõ èç ðàçðàáîòîê ïðîåêòà GNU è, ñîîòâåòñòâåííî, ïîäïàäàþùèõ ïîä ëèöåíçèþ GPL (íàèáîëåå ïîêàçàòåëüíûé ïðèìåð — êîìïèëÿòîð gcc: ýòî òîò æå ñàìûé êîìïèëÿòîð, êîòîðûé âõîäèò â ñîñòàâ ëþáîãî äèñòðèáóòèâà Linux). Îäíàêî ñóùåñòâóåò óñòîé÷èâàÿ òåíäåíöèÿ ïî çàìåíå GNU-ïðîãðàìì îðèãèíàëüíûìè ðàçðàáîòêàìè FreeBSD (ïðàâäà, èìåííî äî gcc, ïîõîæå, äåëî äîéäåò íå ñêîðî).

Åùå îäíà îòëè÷èòåëüíàÿ îñîáåííîñòü êîìïîíåíòîâ FreeBSD Distributions — ñèñòåìà èõ äîêóìåíòàöèè. Âñå îíè ñîïðîâîæäàþòñÿ ïîëíûì îïèñàíèåì â êëàññè÷åñêîì äëÿ POSIX-ñèñòåì ôîðìàòå man-ñòðàíèö.  ïðîãðàììàõ GNU â ïîñëåäíåå âðåìÿ ìîæíî çàìåòèòü òåíäåíöèþ ïîäìåíû manual pages íà äîêóìåíòàöèþ â ôîðìàòå info (ÈÌÕÎ, ñàìàÿ GNU’òàÿ èç âñåõ GNU-ðàçðàáîòîê). Îäíàêî äàæå GNU-ïðîãðàììû, âêëþ÷åííûå â Distributions, ñîäåðæàò ïîäðîáíåéøèå man-ñòðàíèöû — äëÿ ïðèìåðà ñðàâíèòå man (1) gcc èç ñîâðåìåííûõ âåðñèé FreeBSD ñ îðèãèíàëüíûì GNU man-pages äëÿ ýòîãî æå ïàêåòà. Êîìïîíåíòû Distributions ïðè èíñòàëëÿöèè ñèñòåìû ðàçâîðà÷èâàþòñÿ èç áèíàðíûõ òàðáàëëîâ. Îäíàêî ïðåäóñìîòðåí ìåõàíèçì èõ àâòîìàòè÷åñêîé òîòàëüíîé ïåðåñáîðêè ñ ó÷åòîì ïîëüçîâàòåëüñêèõ íàñòðîåê — make world. Íó è, ðàçóìååòñÿ, ïåðåêîìïèëÿöèÿ ÿäðà ñèñòåìû (â òåêóùèõ âåðñèÿõ — îïåðàöèÿ make buildkernel) — íåîòúåìëåìûé àòðèáóò èíäèâèäóàëüíîãî êîíôèãóðèðîâàíèÿ FreeBSD. Ïîðòû FreeBSD — êîíöåïöèÿ, âîçäåéñòâèå êîòîðîé íà ìèð Open Sources òðóäíî ïåðåîöåíèòü, è ïîòîìó çàñëóæèâàåò îñîáîãî ðàññìîòðåíèÿ.  òåêóùåì æå êîíòåêñòå äîñòàòî÷íî ñêàçàòü, ÷òî ýòî — ñèñòåìà àâòîìàòè÷åñêîãî ïîëó÷åíèÿ èñõîäíèêîâ (ïî Ñåòè, ñ ìàñòåð-ñàéòîâ ðàçðàáîò÷èêîâ), îòñëåæèâàíèÿ èõ çàâèñèìîñòåé, àäàïòàöèè (òî åñòü íàëîæåíèÿ FreeBSD-ñïåöèôè÷íûõ ïàò÷åé), ñáîðêè (êîìïèëÿöèè è ëèíêîâêè ñ ðàçäåëÿåìûìè áèáëèîòåêàìè) è óñòàíîâêè (òî åñòü èíêîðïîðàöèè â ôàéëîâóþ ñèñòåìó FreeBSD) ïðàêòè÷åñêè ëþáûõ ïðîãðàìì, ñâîáîäíî ðàñïðîñòðàíÿåìûõ è äîñòóïíûõ â èñõîäíûõ òåêñòàõ.

Îíà ïðåäóñìàòðèâàåò òàêæå ãåíåðàöèþ áèíàðíûõ ïàêåòîâ, ïðèãîäíûõ äëÿ àâòîíîìíîãî (ñ ó÷åòîì çàâèñèìîñòåé) ðàñïðîñòðàíåíèÿ — èìåííî â òàêîì âèäå ïîðòèðîâàííûå ïðîãðàììû âõîäÿò â ñîñòàâ ïîëíîãî äèñòðèáóòèâà FreeBSD. Âàæíî ïîä÷åðêíóòü, ÷òî åñëè ñàìà ïî ñåáå ñèñòåìà ïîðòî⠗ íåîòúåìëåìàÿ ÷àñòü FreeBSD Distributions, òî ïîðò ëþáîé ïðîãðàììû èç åå ñîñòàâà íå ñîäåðæèò íè èñõîäíûõ òåêñòîâ, íè èñïîëíèìûõ ìîäóëåé: èñõîäíèêè ëþáîé ïîðòèðîâàííîé ïðîãðàììû — àáñîëþòíî òå æå ñàìûå, íà êîòîðûõ îñíîâàíû ïàêåòû ëþáîãî Linux-äèñòðèáóòèâà, à áèíàðíèêè ãåíåðèðóþòñÿ àâòîìàòè÷åñêè èç ñèñòåìû ïîðòîâ. È ïîòîìó âî FreeBSD â ïðèíöèïå äîñòóïíî âñå òî æå ìíîãîîáðàçèå îòêðûòûõ è ñâîáîäíûõ ïðîãðàìì, ÷òî è â Linux. Îáîñîáëåííîñòü ïîðòèðîâàííûõ ïðîãðàìì îò FreeBSD Distributions ïîä÷åðêèâàåòñÿ îòëè÷èåì ëèöåíçèîííûõ ñîãëàøåíèé: âñå ïîðòèðîâàííûå ïðîãðàììû ðàñïðîñòðàíÿþòñÿ ïîä òåìè ëèöåíçèÿìè, êîòîðûå îïðåäåëåíû äëÿ íèõ àâòîðàìè (GPL — äëÿ ïðîãðàìì èç ïðîåêòà GNU è ñîïëåìåííûõ, ëèöåíçèÿ X-êîíñîðöèóìà — äëÿ îêîííîé ñèñòåìû X, è òàê äàëåå). Ñàì ïî ñåáå FreeBSD Distributions — âåñüìà ìîùíûé ïðîãðàììíûé êîìïëåêñ, ïðèãîäíûé äëÿ ðåøåíèÿ ìíîãèõ ïîëüçîâàòåëüñêèõ çàäà÷.

Ðàçóìååòñÿ, â åãî ñîñòàâå — íèçêîóðîâíåâûå ñèñòåìíûå óòèëèòû, óòèëèòû äëÿ óïðàâëåíèÿ ôàéëîâûìè ñèñòåìàìè, ïðîöåññàìè, ïîëó÷åíèÿ èíôîðìàöèè è ò.ä. Îäíàêî â Distributions ìîæíî íàéòè ìíîæåñòâî ïîëüçîâàòåëüñêèõ óòèëèò — ñðåäñòâà ðàáîòû ñ ôàéëàìè, âêëþ÷àÿ ñòîëü óíèâåðñàëüíîå, êàê find, âåñüìà ñëîæíûå ïðîãðàììû îáðàáîòêè òåêñòî⠗ îò ýêðàííîãî ðåäàêòîðà ee è ñòðî÷íûõ ðåäàêòîðîâ ed è sed äî awk, ñðåäñòâà ïîèñêà òåêñòîâûõ ôðàãìåíòî⠗ grep, à òàêæå èíñòðóìåíòû ôîðìàòèðîâàíèÿ òåêñòîâ (ñåìåéñòâî groff). Èìååòñÿ ftp-êëèåíò, ïî÷òîâàÿ ñèñòåìà sendmail, áàçîâûå ñðåäñòâà ðàáîòû ñ ñåòÿìè (â òîì ÷èñëå è äëÿ ìîäåìíîãî ñîåäèíåíèÿ). Íàêîíåö, ñðåäñòâ Distributions âïîëíå äîñòàòî÷íî äëÿ íàðàùèâàíèÿ ôóíêöèîíàëüíîñòè ñèñòåìû ïóòåì ñáîðêè ïðîãðàìì. Äëÿ ýòîãî â íåì ïðåäíàçíà÷åíû êîìïèëÿòîð gcc è ïîëíûé êîìïëåêñ óòèëèò ïîääåðæêè, íà÷èíàÿ ñ ÿçûêîâûõ àíàëèçàòîðîâ è êîí÷àÿ óíèâåðñàëüíîé make. Òåì íå ìåíåå, äëÿ êîìôîðòíîé ðàáîòû (íå ãîâîðÿ óæå î ðàçâëå÷åíèÿõ) ñðåäñòâ Distributions ÿâíî íåäîñòàòî÷íî. È òóò íà ïîìîùü ïðèõîäèò ñèñòåìà ïîðòîâ FreeBSD — â âèäå ëè ñðåäñòâà ïîëó÷åíèÿ è ñáîðêè èñõîäíèêîâ, èëè êàê ìåòîä ãåíåðàöèè áèíàðíûõ ïàêåòîâ.

Óñòàíîâêà ïðîãðàìì èç ñèñòåìû ïîðòîâ èëè â âèäå ïðåêîìïèëèðîâàííûõ ïàêåòîâ âî FreeBSD ÷ðåçâû÷àéíî ïðîñòà — íàñòîëüêî, ÷òî ïðÿìî-òàêè ïðîâîöèðóåò ïîëüçîâàòåëÿ óñòàíàâëèâàòü è óñòàíàâëèâàòü ïðîãðàììû. À ïîñêîëüêó îíà åùå âêëþ÷àåò è ðàçâèòûå ñðåäñòâà äëÿ «÷èñòîãî» óäàëåíèÿ âñåãî òîãî, ÷òî îêàçàëîñü íåíóæíûì, ðàçâëå÷åíèÿ ýòè ïðîõîäÿò ïðàêòè÷åñêè áåçáîëåçíåííî. È ïîòîìó î÷åíü âàæíî ñðàçó æå îïðåäåëèòüñÿ ñ íàáîðîì æèçíåííî âàæíûõ ïðèëîæåíèé. Îáçîð èõ, èñõîäÿ èç ñîáñòâåííîãî îïûòà, è áóäåò òåìîé äàëüíåéøåãî ðàññìîòðåíèÿ. Ñðàçó îãîâîðþñü — âñå ñêàçàííîå íèæå ëèøü ìîå ñóáúåêòèâíîå ìíåíèå, çàñëóæèâàþùåå ïîäçàãîëîâêà òèïà «Ìîè ëþáèìûå ïðîãðàììû». ÷àå ïîñòàðàþñü îáîñíîâàòü, ïî÷åìó åãî ñäåëàë. Âîçìîæíî, ýòî ïîìîæåò âàì ñäåëàòü âûáîð ñîáñòâåííûé. Êîìàíäíàÿ îáîëî÷êà (îíà æå — êîìàíäíûé èíòåðïðåòàòîð, ïî ïðîñòîìó shell) — ïåðâàÿ ïðîãðàììà, ñ êîòîðîé ïîëüçîâàòåëü ñòàëêèâàåòñÿ â ëþáîé POSIX-ñîâìåñòèìîé ñèñòåìå. Ïðàâäà, èìåííî âî FreeBSD ýòà ïåðâàÿ ïðîãðàììà ñïîñîáíà îáåñêóðàæèòü äàæå ìíîãîîïûòíîãî ëèíóêñîèäà: âìåñòî ïðèíÿòîãî â áîëüøèíñòâå äèñòðèáóòèâîâ Linux ìîùíîãî è èíòåðàêòèâíî óäîáíîãî bash åìó ïðåäëàãàåòñÿ /bin/sh, ÷üè èíòåðàêòèâíûå âîçìîæíîñòè íàâåâàþò âîñïîìèíàíèÿ î ïåðâîçäàííîì shell’å òîâàðèùà Áîðíà.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *