LXF143:Тема номера

Материал из Linuxformat.

Перейти к: навигация, поиск
Магия сисадмина

Содержание

Секреты сисадмина. Советы профессионалов как сделать ваш Linux-компьютер быстрее, безопаснее и умнее

Вы­стру­гай­те се­бе по­со­хи, стрях­ни­те пыль с до­рож­ных пла­щей – мы от­прав­ля­ем­ся в мир волшеб­но­го ис­кус­ст­ва си­сад­ми­на Linux. Ник Вейч рас­кры­ва­ет кни­гу за­кли­на­ний…

Мно­гим из нас для сча­стья вполне доста­точ­но вклю­чить ком­пь­ю­тер да и ра­бо­тать се­бе. И все бы от­лич­но; ну, а вдруг ком­пь­ю­тер за­ар­та­чит­ся? Или — вы знае­те, что же­лае­мое воз­мож­но, но не уве­ре­ны в умении это реа­ли­зо­вать? Лишние знания бы­ва­ют крайне опас­ны, но и крайне по­лез­ны, ес­ли вы пы­тае­тесь за­ста­вить свою Linux-ма­ши­ну пля­сать под ва­шу дуд­ку.

На­ши ожи­дания от ком­пь­ю­те­ров со вре­менем из­ме­ня­ют­ся, и ес­ли ваш дом по­хож на наш, он на­шпи­го­ван хит­ры­ми се­те­вы­ми уст­рой­ст­ва­ми, там яв­но не один ком­пь­ю­тер плюс мас­са алч­ных до элек­тро­энер­гии ящи­ков, ми­гаю­щих лам­поч­ка­ми и со­еди­няю­щих все это доб­ро ме­ж­ду со­бой. Управ­ление та­ки­ми сис­те­ма­ми представляет­ся жу­тью, и, бу­ду­чи ли­нук­сои­дом, вы мо­же­те ощу­тить се­бя в изо­ля­ции. И зря! Вот вам хо­ро­шая но­вость: вы не оди­но­ки. Есть мас­са ин­фор­ма­ции вам в по­мощь – и в Internet, и на са­мом ва­шем ком­пь­ю­те­ре (вы еще не за­бы­ли про все эти man-страницы, ко­то­рые со­би­ра­лись про­честь?). А те­перь к вам в ру­ки вдо­ба­вок по­па­ла и книга-талмуд с мас­сой цен­ных за­кли­наний, ко­то­рые по­мо­гут вам до­бить­ся по­став­лен­ных це­лей. Про­чи­те ее – и уз­нае­те, ка­кое могучее вол­шеб­ст­во та­ит­ся в ва­шем Linux-ящи­ке…

Пе­ре­не­сти па­ке­ты в но­вую ин­стал­ля­цию

За­чем? Вы по­ка­ле­чи­ли свою сис­те­му, и те­перь ее нуж­но пе­реуста­нав­ли­вать; или вы про­сто хо­ти­те до­ба­вить диск, и вам неохо­та ис­кать все ва­ши при­ло­жения за­но­во.

Как? В Ubuntu или лю­бой дру­гой сис­те­ме с менед­же­ром па­ке­тов dpkg оп­ре­де­ление со­ста­ва уста­нов­лен­ных па­ке­тов – за­да­ча три­ви­аль­ная. Ко­ман­да dpkg име­ет для это­го спе­ци­аль­ную оп­цию:

dpkg --get-selections

Ко­ман­да вы­ве­дет спи­сок уста­нов­лен­ных в сис­те­ме па­ке­тов. Что­бы обес­пе­чить пе­реуста­нов­ку, сна­ча­ла со­храним этот спи­сок, ко­ман­дой

dpkg --get-selections > packages.txt

Со­храните тек­сто­вый файл в безо­пас­ном мес­те (или от­правь­те его се­бе по поч­те), а за­тем пе­реуста­но­ви­те Linux, уста­но­ви­те но­вый диск или что вы там со­ би­ра­лись сде­лать. Ско­пи­руй­те тек­сто­вый файл в локаль­ный ка­та­лог и дай­те сле­дую­щие ко­ман­ды:

dpkg --set-selections < selections.txt
dselect update
apt-get dselect-upgrade

СОВЕТЫ ПО РАБОТЕ С ОБОЛОЧКОЙ

Не­мно­го по­кол­ду­ем

Вам нуж­но сле­дить за сво­им хо­зяй­ст­вом? По­мо­жет ко­ман­да watch. Она про­сто очень час­то за­пус­ка­ет дру­гую ко­ман­ду, об­нов­ляя ото­бра­же­ние ее вы­во­да и, при не­об­хо­ди­мо­сти, вы­де­ляя из­ме­не­ния. На­при­мер, что­бы на­блю­дать спи­сок фай­лов, ско­мандуй­те: watch -d ls -l

1 Пе­ре­на­прав­ляй­те вы­вод
Обо­лоч­ка ис­поль­зу­ет двой­ные уг­ло­вые скоб­ки для пе­ре­на­прав­ления стан­дарт­но­го вы­во­да, и вы мо­же­те со­хранить его в файл. На­при­мер, вот как мож­но за­пи­сать от­чет о за­ня­то­сти па­мя­ти:
free >> ram.txt
2 Фильт­руй­те фай­лы в grep
Мож­но пе­ре­на­прав­лять вы­вод од­ной ко­ман­ды на вход дру­гой, с по­мо­щью сим­во­ла канала | свя­зы­вая их в од­ну стро­ку. Обыч­но это по­лез­но для фильт­ра­ции вы­во­да или ана­ло­гич­ных це­лей, как показано в сле­дую­щем при­ме­ре:
rpm -qa | grep ‘python’ > python-packages
3 Сэ­ко­номь­те на пе­ча­та­нии
Не при­хо­ди­лось ли вам вве­сти ко­ман­ду и в ито­ге по­лу­чить толь­ко со­об­щение о том, что для нее нуж­ны пра­ ва root? И как тут не ра­зо­злить­ся? Но набирать ко­ман­ду по­втор­но неза­чем. Про­сто восполь­зуй­тесь «ис­то­ри­ей» вво­да команд обо­лоч­ки, вот так:
 sudo !!
4 Учи­тесь за­цик­ли­вать­ся
Не трать­те свою жизнь и не утруждай­те паль­цы, вво­дя мо­но­тон­ные по­сле­до­ва­тель­но­сти оди­на­ко­вых ко­манд. Вспом­ни­те об уме­нии Bash ра­бо­тать с цик­ла­ми. Вот эти чу­де­са в дей­ст­вии:
for i in 1 2 3 4 5
do
 touch myfile.$i
done
5 Сэ­ко­номь­те на пе­ча­та­нии, ч. 2
Bash спо­со­бен на рас­кры­тие ско­бок и пе­ре­чис­лит для вас зна­чения, раз­де­лен­ные за­пя­ты­ми и за­клю­чен­ные в фи­гур­ные скоб­ки. Так, “{One, two}” пре­вра­тит­ся в “one two". С ви­ду это не осо­бо по­лез­но, по­ка вам не за­хо­чет­ся ско­пи­ро­вать ка­кой-нибудь глу­бо­ко вло­жен­ный файл, на­при­мер:
cp /etc/X11/xorg.conf{,.bak}
6 Поль­зуй­тесь по­ис­ком
Ко­ман­да find час­то мель­ка­ет в спи­сках со­ве­тов по ра­бо­те с Bash, но она уме­ет не толь­ко ис­кать по име­нам. Ключ -mtime ог­раничи­ва­ет по­иск фай­ла­ми, ко­то­рые бы­ли из­менены в пре­де­лах ука­зан­но­го ко­ли­че­­ст­ва дней на­зад. Ес­ли ваш ком­пь­ю­тер взло­ма­ли, про­верь­те, не ис­пор­че­ны ли ва­ши фай­лы на­строй­ки, ко­ман­дой
sudo find /etc -mtime -1 -name “*conf*”
7 Бе­ри­те уро­ки ис­то­рии
Bash ве­дет ис­то­рию команд, так по­че­му бы ею не поль­зо­вать­ся? На­жми­те Ctrl-R и начните ввод ко­ман­ды. Bash ав­то­ма­ти­че­­ски до­пи­шет ее до со­от­вет­ст­вую­щей ко­ман­ды, ко­то­рую вы вво­ди­ли недав­но. Для при­ня­тия этой под­сказ­ки на­жми­те Enter.

Управ­ле­ние сер­ви­са­ми

За­чем? Что­бы эко­но­мить сис­тем­ные ре­сур­сы или до­ба­вить тре­буе­мые функ­ции.

Как? При за­пуске ва­ше­го Linux-ком­пь­ю­те­ра про­ис­хо­дит инициа­ли­за­ция боль­шо­го ко­ли­че­­ст­ва про­грамм. Мно­гие из них на­строе­ны как сер­ви­сы – обыч­но это код, который неза­мет­но ра­бо­тает в фо­но­вом ре­жи­ме, вы­пол­няя за­да­чи вро­де син­хрониза­ции сис­тем­ных ча­сов или управ­ления web-сер­ве­ром. Мно­гие из этих сер­ви­сов жизнен­но важ­ны для безо­пас­ной ра­бо­ты ва­ше­го ком­пь­ю­те­ра (на­при­мер, Cron), но есть и из­бы­точ­ные – они под­клю­ча­ют­ся при уста­нов­ке ди­ст­ри­бу­ти­ва, по­то­му что когда-нибудь мо­гут по­на­до­бить­ся. Не­ко­то­рые сер­ви­сы во­об­ще мо­гут бе­сить – на­при­мер, сер­вис ntp, ко­то­рый син­хронизи­ру­ет ва­ши ча­сы со служ­бой точ­но­го вре­мени че­рез Internet. Это, воз­мож­но, и непло­хо, ес­ли ва­ша ма­ши­на по­сто­ян­но си­дит в се­ти, но го­дит­ся не всем.

Прак­ти­че­­ски во всех ди­ст­ри­бу­ти­вах име­ется сис­те­ма управ­ления сер­ви­са­ми. В Fedora это де­ла­ет­ся че­рез оп­ции System > Administration > Services. А Ubuntu име­ет ин­ст­ру­мент System > Administration > Startup Applications, хо­тя он на­страи­ва­ет не все сер­ви­сы в ва­шей сис­те­ме. Но это не про­бле­ма: мож­но на­стро­ить сис­те­му и из команд­ной стро­ки.

«За ка­дром» эти сис­те­мы за­пуска­ют скрип­ты, со­дер­жа­щие­ся в /etc/init.d, и иногда вы мо­же­те за­хо­теть про­де­лать то же са­мое.

Скрип­ты раз­ли­ча­ют­ся друг с дру­гом, по­сколь­ку по­став­ля­ют­ся па­ке­та­ми, к ко­то­рым от­но­сят­ся, но все они сле­ду­ют об­щим пра­ви­лам. Ка­ж­дый пред­ла­га­ет воз­мож­ность за­пуска или оста­но­ва сер­ви­са. Одни мо­гут со­об­щать те­ку­щий ста­тус, а дру­гие уме­ют вы­пол­нять при­ну­ди­тель­ный пе­ре­за­пуск – это бывает удоб­но по­сле выполнения правок. На­при­мер, ва­ши из­менения, внесенные в кон­фи­гу­ра­цию Apache, не вой­дут в си­лу, по­ка вы не пе­ре­за­пустите сер­вер, вот так:

sudo /etc/init.d/httpd restart

Вы мо­же­те да­же воз­же­лать соз­дать соб­ст­вен­ные скрип­ты для управ­ления сер­ви­са­ми; а ко­ли так, ре­ко­мен­ду­ем вам по­нра­вив­шее­ся чи­та­те­лям ру­ко­во­дство по Bash из LXF136: там опи­са­ны основ­ные прин­ци­пы на­пи­сания та­ких скрип­тов.

Не­мно­го по­кол­ду­ем

Ин­фор­ма­ци­он­ные стра­ни­цы – это рас­ши­рен­ные вер­сии man-стра­ниц, раз­би­тые на те­ма­ти­че­ские раз­де­лы и под­раз­де­лы с удоб­ной на­ви­га­ци­ей. Прав­да, удоб­на эта на­ви­га­ция, толь­ко ес­ли знать, на ка­кие ма­ги­че­ские кноп­ки жать. К сча­стью, для них есть сво­его ро­да ин­те­рак­тив­ное ру­ко­во­дство. Ско­мандуй­те info info и на­жми­те кла­ви­шу h, что­бы на­чать про­цесс оз­на­ком­ле­ния.

За­пуск за­дач из Anacron

За­чем? Что­бы ваш ком­пь­ю­тер не был по­сто­ян­но вклю­чен.

Как? Anacron – это на­парник Cron, сис­тем­но­го планиров­щи­ка. Cron – от­лич­ный ин­ст­ру­мент, га­ран­ти­рую­щий, что необ­хо­ди­мые за­да­чи вы­пол­нят­ся. Но вот бе­да: за­да­чи Cron на­зна­ча­ют­ся на вы­полнение в кон­крет­ное вре­мя. Ес­ли ваш ком­пь­ю­тер в этот мо­мент бу­дет вы­клю­чен, Cron не смо­жет их за­пустить.

Вы­ход – об­ра­тить­ся к Anacron. Когда сис­те­ма стар­ту­ет, этот ин­ст­ру­мент про­ве­ря­ет, нет ли невы­полнен­ных за­дач, и ес­ли они есть, пы­та­ет­ся их за­пустить. Этот ин­ст­ру­мент ис­поль­зу­ет бо­лее про­стой ме­тод планиро­вания за­дач – еже­днев­ных, еженедель­ных или еже­ме­сяч­ных – и при ка­ж­дом за­пуске про­ве­ря­ет, бы­ли ли вы­полнены эти за­да­чи в те­чение со­от­вет­ст­вую­ще­го вре­мен­но­го ин­тер­ва­ла.

Итак, вы долж­ны ука­зать для Anacron вре­мен­ной ин­тер­вал, за­держ­ку, иден­ти­фи­ка­тор за­да­чи и ко­ман­ду. Ин­тер­вал – это ко­ли­че­­ст­во дней ме­ж­ду за­пуска­ми за­да­чи (на­при­мер, для еженедель­но­го это 7), а за­держ­ка – это вре­мен­ная от­сроч­ка (в ми­ну­тах) с мо­мен­та стар­та сер­ви­са Anacron, что­бы все со­бы­тия ра­зом не на­ва­ли­лись на сис­те­му во вре­мя ее за­груз­ки. Иден­ти­фи­ка­тор за­да­чи – это мет­ка, необ­хо­ди­мая для иден­ти­фи­ка­ции про­цес­са в сис­тем­ных со­об­щениях или жур­на­лах, а ко­ман­да – про­сто ко­ман­да обо­лоч­ки. Они пе­ре­чис­ля­ют­ся в фай­ле /etc/anacrontab в ви­де спи­ска, раз­де­лен­но­го про­бе­ла­ми, ко­то­рый мо­жет вы­гля­деть примерно так:

#  / etc / anacrontab: файл на­строй­ки anacron
 SHELL=/bin/sh
 PATH=/sbin:/bin:/usr/sbin:/usr/bin
 MAILTO=root
 # Мак­си­маль­ная слу­чай­ная за­держ­ка от­но­си­тель­но ба­зо­во­го за­паз­ды­ва­ния за­да­ний
 RANDOM_DELAY=45
 # За­да­ния нач­нут за­пус­кать­ся толь­ко в ука­зан­ные ча­сы:
 START_HOURS_RANGE=3-22
 # Пе­ри­од в днях; за­держ­ка в ми­ну­тах; ин­ден­ти­фи­ка­тор за­да­ния; ко­ман­да
 1	 5	 cron.daily	 nice run-parts /etc/cron.daily
 7	 25	 cron.weekly	 nice run-parts /etc/cron.weekly
 @monthly	 45	 cron.monthly	 nice run-parts /etc/cron.
 monthly
 7	 55	 anacron.backup	 /usr/sbin/	 mybackupscript

Про­вер­ка средней на­груз­ки

Не­мно­го по­кол­ду­ем

Оно вро­де и оче­вид­но, но сто­ит по­за­бо­тить­ся о том, что­бы ва­ша ап­па­ра­ту­ра ра­бо­та­ла с мак­си­маль­ной ско­ро­стью. На­при­мер, боль­шин­ст­во но­вых ком­пь­ю­те­ров, при­во­дов NAS и др. име­ют пор­ты Gigabit Ethernet (10/100/1000), а для ши­ро­ко­по­лосно­го досту­па пре­достав­ля­ют­ся мар­шру­ти­за­то­ры толь­ко с пор­та­ми Fast Ethernet (10/100), и со­единение ва­ших уст­ройств че­рез та­кой мар­шру­ти­за­тор за­мед­лит их ра­бо­ту. Ку­пи­те мар­шру­ти­за­тор по­лу­чше, или про­сто со­едините бо­лее бы­ст­рые уст­рой­ст­ва че­рез ком­му­та­тор Gigabit – ско­ро­сти пе­ре­да­чи дан­ных ме­ж­ду ними уве­ли­чат­ся раз в 10!

За­чем? Что­бы уз­нать, по­тянет ли ваш ком­пь­ю­тер тре­буе­мые за­­да­­чи.

Как? За­пустив ко­ман­ду uptime или за­глянув в файл /proc/loadavg, вы уви­ди­те на­бор из трех чи­сел, ука­зы­ваю­щих сред­нюю на­груз­ку на ваш Linux-ком­пь­ю­тер. И что же эти чис­ла оз­на­ча­ют?

Во-пер­вых, их три, по­то­му что они по­лу­че­ны усреднением по трем раз­ным вре­мен­ным ин­тер­ва­лам – од­ной, пя­ти и 15 ми­ну­там. Чис­ло ука­зы­ва­ет ко­ли­че­­ст­во про­цес­сов, ис­поль­зую­щих CPU или жду­щих сво­ей оче­ре­ди на его ис­поль­зо­вание. Так, ес­ли ва­ша сред­няя на­груз­ка – 0,25, это зна­чит, что про­цес­сор ак­тив­но ис­поль­зо­вал­ся в те­чение 25 % со­от­вет­ст­вую­ще­го вре­мен­но­го интер­ва­ла.

Для мно­го­ядер­ных ма­шин си­туа­ция чуть услож­ня­ет­ся, по­сколь­ку чис­ло ядер не учи­ты­ва­ет­ся, и на­до раз­де­лить на это чис­ло ре­зуль­тат, по­ка­зан­ный в фай­ле /proc/loadavg или в вы­во­де ко­ман­ды uptime. На­при­мер, сред­няя на­груз­ка 1 на че­ты­рехъ­я­дер­ную ма­ши­ну на са­мом де­ле бу­дет оз­на­чать то же са­мое – сред­няя на­груз­ка рав­на 0,25, то есть ка­ж­дое яд­ро ра­бо­та­ет 25 % вре­мени.

Сред­няя на­груз­ка – не са­мый точ­ный по­ка­за­тель ско­ро­сти CPU, так как про­цес­сы мо­гут ока­зать­ся под­ве­ше­ны про­сто из-за мед­лен­но­го вво­да/вы­во­да; но да­ет пред­став­ление о вре­мени ожи­дания для поль­зо­ва­те­лей. В идеа­ле сред­няя на­груз­ка на­столь­но­го ком­пь­ю­те­ра долж­на быть мень­ше ко­ли­че­­ст­ва ядер. На сер­ве­ре этот по­ка­за­тель мо­жет быть и пре­вы­шен, но ес­ли сред­няя на­груз­ка по­сто­ян­но вы­со­ка, необ­хо­ди­мо дальней­шее рас­сле­до­вание.

До­бав­ле­ние к sudoers че­рез visudo

За­чем? Что­бы до­ба­вить пол­но­мо­чий поль­зо­ва­те­лям или про­цес­сам.

Как? Ко­ман­да sudo вре­мен­но пре­достав­ля­ет при­ви­ле­гии root [на самом деле предоставляет процессам привелегии любого другого пользователя, имеющегося в системе, то есть позволяет не только повышать привелегии для них, но и понижать их] поль­зо­ва­те­лям или про­цес­сам, что­бы те смог­ли вы­полнить за­да­чу, раз­ре­шен­ную толь­ко root. Это осо­бен­но важ­но для сис­тем ти­па Ubuntu: там нет поль­зо­ва­те­ля root [на самом деле пользователь есть, но у него нет пароля и, соответственно, под этой учетной записью невозможно зарегистрироваться в системе], и без ко­ман­ды sudo да­ле­ко не уй­дешь.

Све­дения о том, ка­кие пра­ва долж­ны быть пре­достав­ле­ны и ко­му, хра­нят­ся в ка­та­ло­ге /etc, в фай­ле под на­званием – вы уди­ви­тесь – sudoers. Его мож­но пра­вить в Vi, Gedit или лю­бом дру­гом ре­дак­то­ре, но ре­ко­мен­ду­ет­ся при­ме­нять Visudo. Дан­ный тек­сто­вый ре­дак­тор га­ран­ти­ру­ет, что ваш файл sudoers останет­ся цел, по­ка вы бу­де­те его ре­дак­ти­ро­вать, по­сколь­ку за­пре­ ща­ет од­но­вре­мен­ные прав­ки и про­ве­ря­ет син­так­си­че­­ские ошиб­ки. Это ог­ром­ное пре­иму­ще­ст­во в слу­чае сбо­ев или про­сто че­ло­ве­че­­ских оши­бок, спо­соб­ных сде­лать файл sudoers нечи­тае­мым, вы­ну­див вас восста­нав­ли­вать его из ре­зерв­ной ко­пии.

Здесь дей­ст­ву­ют при­мер­но те же пра­ви­ла, что и в Vi. Ес­ли вы с ними не зна­ко­мы – это оз­на­ча­ет, что пе­ре­ме­щать­ся по фай­лу мож­но с по­мо­щью кла­виш кур­со­ра (а так­же Page Up/Page Down), для пе­ре­хо­да в ре­жим вво­да необ­хо­ди­мо на­жать кла­ви­шу i, по­сле че­го мож­но на­чи­нать вво­дить текст. За­вер­шив ввод, на­бе­ри­те по­сле­до­ва­тель­ность Esc:wq <return>. Ес­ли при ре­дак­ти­ро­вании фай­ла вы до­пусти­те ошиб­ку, час­то бы­ва­ет про­ще за­крыть его без со­хранения, а за­тем по­пы­тать­ся вы­звать его еще раз. Для вы­хо­да из ре­дак­то­ра вве­ди­те ком­би­на­цию кла­виш Esc:q! <return>.

На­при­мер, что­бы дать че­рез sudo поль­зо­ва­те­лю evilnick все пра­ва root без необ­хо­ди­мо­сти вво­дить его па­роль – это опас­но, но эко­но­мит вре­мя – до­бавь­те

evilnick ALL=(ALL) NOPASSWD: ALL

Дви­жем­ся даль­ше

По­смот­рев в на­ча­ло фай­ла, вы об­на­ру­жи­те, что там оп­ре­де­ле­ны некие груп­пы. По су­ти, это мет­ки, при­ме­няе­мые к спи­ску ис­пол­няе­мых фай­лов (с пол­ны­ми име­на­ми пу­тей). При же­лании вы мо­же­те соз­дать соб­ст­вен­ные груп­пы, но уже го­то­вые обыч­но оп­ре­де­ле­ны очень хо­ро­шо.

Вме­сто от­дель­ных поль­зо­ва­те­лей мож­но так­же ука­зать и груп­пы, про­сто по­мес­тив сим­вол % пе­ред именем груп­пы. На­при­мер, ес­ли вы хо­ти­те раз­ре­шить поль­зо­ва­те­лям из груп­пы users доступ к ко­ман­дам из груп­пы Networking, ко­то­рые обыч­но оп­ре­де­ля­ют­ся здесь че­рез sudo, и по­зво­лить поль­зо­ва­те­лю mike за­гру­жать драй­ве­ры яд­ра че­рез modprobe, до­бавь­те та­кие стро­ки:

%users ALL=NETWORKING
mike ALL=/sbin/modprobe

За­меть­те, что пер­вое ALL от­но­сит­ся к хос­ту, так как фай­лы sudoers час­то пре­дос­тав­ля­ют­ся в об­щий дос­туп че­рез сеть, и при же­ла­нии здесь мож­но ука­зы­вать от­дель­ные хос­ты.

Ко­пи­ро­ва­ние фай­ло­вых сис­тем це­ли­ком

За­чем? Что­бы кло­ни­ро­вать свой ПК или сде­лать пол­ную ре­зерв­ную ко­пию.

Как? Су­ще­ст­ву­ет далеко не один ре­цепт, как на­чинить ин­дей­ку; то же ка­са­ет­ся соз­дания ко­пий сис­те­мы Linux. Воз­мож­но, про­стей­ший из них – при­менить ко­ман­ду dd, обыч­но ис­поль­зуе­мую для по­блоч­но­го ко­пи­ро­вания боль­ших фай­лов. Од­на­ко, раз уж в Linux прак­ти­че­­ски все яв­ля­ет­ся фай­ла­ми, ту же ко­ман­ду мож­но при­менить и для ко­пи­ро­вания все­го дис­ка. Со­дер­жи­мое од­но­го же­ст­ко­го дис­ка IDE ко­пи­ру­ет­ся на дру­гой при по­мо­щи коман­ды

dd if=/dev/hda of=/dev/hdb conv=noerror,sync

До­полнитель­ные оп­ции этой ко­ман­ды по­зво­ля­ют про­пускать ошиб­ки чтения (что удоб­но при ко­пи­ро­вании пор­че­но­го дис­ка) и при­ну­ди­тель­но син­хронизи­ро­вать ко­пии.

Ра­бо­тать-то она ра­бо­та­ет, но по ря­ду при­чин сто­ит ее из­бе­гать. Во-пер­вых, это про­цесс весь­ма дол­гий – ко­ман­да dd ко­пи­ру­ет ка­ж­дый блок дис­ка, вклю­чая и неис­поль­зуе­мое про­стран­ст­во. Дру­гая про­бле­ма – в том, что ваш вто­рой же­ст­кий диск дол­жен быть по воз­мож­но­сти иден­ти­чен с пер­вым. При ис­поль­зо­вании дан­но­го ме­то­да ко­пи­ру­ет­ся вся ин­фор­ма­ция, и ес­ли вто­рой же­ст­кий диск име­ет боль­ший раз­мер, ока­жет­ся, что вы зря те­ряе­те дис­ко­вое про­стран­ст­во. [это тоже не является пороблемой, просто после корппирования необходимо будет воспользоваться утилитой parted]]

Еще од­на по­тен­ци­аль­ная про­бле­ма – при та­ком ко­пи­ро­вании уста­нов­ки Linux ско­пи­ру­ет­ся и со­дер­жи­мое вир­ту­аль­ных фай­ло­вых сис­тем, на­при­мер, /proc, что то­же чревато не­при­­ят­­ностями.

Ес­ли вам нуж­на ко­пия фай­ло­вой сис­те­мы дис­ка, луч­ше возь­ми­те ко­ман­ду rsync:

rsync -av /source /target

В осо­бом слу­чае ко­пи­ро­вания корневой фай­ло­вой сис­те­мы, где со­дер­жит­ся за­гру­жае­мая ко­пия Linux, вы, воз­мож­но, за­хо­ти­те ис­клю­чить из ко­пи­ро­вания часть фай­лов – на­при­мер, те, что сис­те­ма генери­ру­ет при за­груз­ке. Для это­го сгенери­руй­те спи­сок фай­лов и на­зо­ви­те его blacklist.lst:

Не­мно­го по­кол­ду­ем

На­чи­ная с се­рии ядер Linux 2.6, па­ра­метр ‘swappiness’ стал управ­лять тем, на­сколь­ко аг­рес­сив­но яд­ро пы­та­ет­ся осво­бо­дить па­мять, вы­тес­няя ее со­дер­жи­мое в про­стран­ст­во под­кач­ки. Зна­чение это­го па­ра­мет­ра мож­но най­ти в фай­ло­вой сис­те­ме /proc:

cat /proc/sys/vm/swappiness

Чем вы­ше зна­чение swappiness, тем боль­ше дан­ных вы­тес­ня­ет­ся в раз­дел под­кач­ки. Это по­ве­дение мож­но из­менить, за­пи­сав в proc дру­гое зна­чение, но слиш­ком за­вы­шать его не сто­ит – ес­ли вы час­то пе­ре­клю­чае­тесь ме­ж­ду при­ло­жения­ми, ва­ша сис­те­ма станет менее от­зыв­чи­вой.

# фай­лы для вклю­че­ния
+ /dev/console
+ /dev/initctl
+ /dev/null
+ /dev/zero
# фай­лы для ис­клю­че­ния
- /dev/*
- /proc/*
- /sys/*
- /tmp/*

Не­ко­то­рые за­пи­си dev вклю­че­ны яв­но, по­сколь­ку они не воссоз­да­ют­ся по­втор­но, как и ка­та­лог /proc и неко­то­рые дру­гие ка­та­ло­ги: со­дер­жи­мое каталога ре­генери­ру­ет­ся, а сам ка­та­лог – нет. Те­перь за­пус­ти­те ко­ман­ду rsync со сле­дую­щими параметрами:

rsync -av --delete-excluded --exclude-from=blacklist.lst destination

Уч­ти­те, что это мож­но сде­лать и че­рез сеть, но то­гда на­до спер­ва долж­ным об­ра­зом на­стро­ить rsync.

Про­вер­ка про­блем с по­мо­щью dmesg

За­чем? Про­стой спо­соб вы­явить про­бле­мы с драй­ве­ра­ми ну­жен всем.

Как? Linux и ряд дру­гих Unix-по­доб­ных опе­ра­ци­он­ных сис­тем вклю­ча­ют в свой со­став очень по­лез­ную ко­ман­ду под на­званием dmesg: она ото­бра­жа­ет все сис­тем­ные со­об­щения, имею­щие от­но­шение к про­бле­мам, в сво­ем жур­на­ле. Это цен­ная ин­фор­ма­ция, в ча­ст­но­сти, о драй­ве­рах уст­ройств, а так­же о том, за­гру­же­ны ли они кор­рект­но, плюс еще на­бор по­лез­ных све­дений. Для про­смот­ра жур­на­ла про­сто за­пусти­те ко­ман­ду dmesg из обо­лоч­ки.

За­пуск dmesg сра­зу же по­сле до­бав­ления ап­па­рат­но­го уст­рой­ст­ва со­об­щит вам, за­гру­жен ли драй­вер уст­рой­ст­ва и ра­бо­та­ет ли он пра­виль­но, или о том, где бы­ли вы­де­ле­ны ре­сур­сы; но иногда бывает нужно про­смот­реть жур­нал. Здесь непло­хой иде­ей бу­дет пе­ре­на­править вы­во­д ко­ман­ды dmesg коман­де less:

dmesg | less

Ес­ли вы ище­те что-то кон­крет­ное – на­при­мер, уст­рой­ст­во SCSI или USB – все­гда мож­но про­се­ять жур­нал че­рез grep и пе­ре­на­пра­вить его в less:

dmesg | grep ‘usb’ | less

Управ­ле­ние раз­де­лом под­кач­ки

Не­мно­го по­кол­ду­ем

При вводе ко­ман­де sudo невер­ного па­роля по­яв­ит­ся зло­ве­щее со­об­щение о за­ме­чен­ном ин­ци­ден­те – уг­ро­зе безо­пас­но­сти. Но кто его по­лу­чит? Это за­ви­сит от на­строй­ки ва­шей сис­те­мы. Мож­но ука­зать поч­то­вый ад­рес при сбор­ке па­ке­та sudo или пе­ре­оп­ре­де­лить его в фай­ле sudoers. Обыч­но это ад­ре­с поч­ты админа. А на са­мом де­ле кто? См. http://xkcd.com/838.

За­чем? Что­бы ус­ко­рить ва­шу сис­те­му или при­спо­со­бить ее к об­стоя­тель­ст­вам.

Как? Раз­дел под­кач­ки очень ва­жен для Linux-сис­тем, или, по крайней ме­ре, бы­ва­ет очень важ­ным. Он по­зво­ля­ет яд­ру от­ло­жить в сто­рон­ку ин­фор­ма­цию, ко­то­рая не яв­ля­ет­ся необ­хо­ди­мой в дан­ный кон­крет­ный мо­мент, и осво­бо­дить ОЗУ сис­те­мы под ра­бо­таю­щие про­цес­сы. Ста­рое эм­пи­ри­че­­ское пра­ви­ло гла­сит, что объ­ем это­го раз­де­ла дол­жен быть не мень­ше объ­е­ма фи­зи­че­­ско­­го ОЗУ, а же­ла­тель­но – вдвое боль­ше, но это пра­ви­ло боль­ше не по­кры­ва­ет все вари­ан­ты.

Во-пер­вых, в на­ши дни вы, ско­рее все­го, бо­га­ты фи­зи­че­­ским ОЗУ, по­сколь­ку це­ны на них ста­ли вме­няе­мы­ми и при же­лании вполне мож­но вса­дить на ма­те­рин­скую пла­ту 8, а то и 16 ГБ. По­это­му слиш­ком боль­шой раз­дел под­кач­ки уже ни к че­му, но сис­тем­ные ад­минист­ра­то­ры счи­та­ют иде­аль­ным объ­ем око­ло 2 ГБ.

Что­бы уз­нать фак­ти­че­­ски ис­поль­зуе­мый объ­ем раз­де­ла под­кач­ки, за­пусти­те ли­­бо ко­ман­ду free, ли­бо ко­ман­ду swapon, например:

swapon -s

Вы­ве­дет­ся пол­ный объ­ем раз­де­ла под­кач­ки в бай­тах.

Од­на­ко, воз­мож­но, вам по­тре­бу­ет­ся бо­лее эф­фек­тив­но управ­лять раз­де­лом под­кач­ки, ес­ли вы за­пускае­те мно­го эк­зем­п­ля­ров па­рал­лель­но ра­бо­таю­щих сер­ви­сов (на­при­мер, баз дан­ных или web-сер­ве­ров).

Уве­ли­чение раз­де­ла под­кач­ки

Соз­дав для под­кач­ки до­полнитель­ный раз­дел, мож­но до­ба­вить его к те­ку­ще­му (счи­тая, что но­вый раз­дел под­кач­ки – sdb2) коман­да­ми

mkswap /dev/sdb2
swapon /dev/sdb2
echo ‘/dev/sdb2 swap swap sw 0 0 ‘ >> /etc/fstab

По­след­няя стро­ка до­бав­ля­ет но­вый раз­дел под­кач­ки на по­сто­ян­ной осно­ве, и он бу­дет мон­ти­ро­вать­ся при за­груз­ке.

Ин­те­рес­но, что яд­ру хва­та­ет ума на че­ре­до­вание досту­па к раз­де­лам под­кач­ки, и вы мо­же­те серь­ез­но по­вы­сить про­из­во­ди­тель­ность, пре­ду­смот­рев раз­де­лы под­кач­ки на всех бы­ст­рых же­ст­ких дис­ках, имею­щих­ся у вас в сис­те­ме.

Кро­ме то­го, мож­но ис­поль­зо­вать для под­кач­ки файл. Хо­тя обыч­но это не луч­ший спо­соб ре­шения про­бле­мы, он по­мо­га­ет в си­туа­ци­ях, когда тре­бу­ет­ся вре­мен­но уда­лить диск из сис­те­мы или обес­пе­чить се­бе до­полнитель­ное ме­сто для под­кач­ки (на­при­мер, при ви­зуа­ли­за­ции ог­ром­ной и детальной 3D-сцены).

Что­бы об­за­вес­тись фай­лом под­кач­ки, мож­но соз­дать пустой файл ко­ман­дой dd, а за­тем его смон­ти­ро­вать:

dd if=/dev/zero of=/var/swapfile bs=1024 count=2097152
mkswap /var/swapfile
swapon /var/swapfile.

На­конец, за­ме­тим, что соз­дание раз­де­ла под­кач­ки на мед­лен­ных уст­рой­ст­вах – на­при­мер, USB-брел­ках – идея от­нюдь не здра­вая. Яд­ро, конеч­но, съест и та­кое, ес­ли до­ба­вить его к сис­те­ме, но ско­рость USB 2.0, око­ло 400 Mbps, су­ще­ст­вен­но снизит про­из­во­ди­тель­ность. А вот бы­ст­рый твер­до­тель­ный диск – иде­аль­ное ме­сто.

Руч­ное до­бав­ле­ние и уда­ле­ние драй­ве­ров

За­чем? По­то­му что драй­ве­ры по умол­ча­нию го­дят­ся не все­гда.

Как? Пре­иму­ще­ст­во со­вре­мен­ных ди­ст­ри­бу­ти­вов Linux – от­лич­ная под­держ­ка драй­ве­ров. Серь­ез­но, взять про­из­воль­ное уст­рой­ст­во и до­бить­ся его ра­бо­ты с Linux на­мно­го про­ще, чем с Windows или Mac OS X, по­то­му что Linux до­бав­ля­ет функ­ции драй­ве­ров в яд­ро по­сред­ст­вом мо­ду­лей. Код мо­ду­лей от­крыт, и, за ис­клю­чением осо­бых об­стоя­тельств, вам ничто не ме­ша­ет об­но­вить код ста­ро­го драй­ве­ра, что­бы он по­ла­дил с но­вей­шей вер­си­ей яд­ра.

Вы мо­же­те вы­яснить, ка­кие мо­ду­ли ра­бо­та­ют в ва­шей сис­те­ме, ко­ман­дой lsmod. Она по­ка­жет вам за­гру­жен­ные на дан­ный мо­мент мо­ду­ли, а так­же спи­сок мо­ду­лей, от ко­то­рых те за­ви­сят. На­при­мер, мо­дуль kvm_intel за­ви­сит от на­ли­чия мо­ду­ля kvm, а мо­дуль snd – от мо­ду­ля sndcore.

При необ­хо­ди­мо­сти мож­но уда­лить драй­ве­ры из ра­бо­таю­щей сис­те­мы с по­мо­щью rmmod и вновь за­гру­зить их с по­мо­щью modprobe. На­при­мер, что­бы от­клю­чить и вновь вклю­чить джой­стик, ско­ман­дуй­те

sudo rmmod joydev
sudo modprobe joydev

Знай­те так­же, что иногда при за­груз­ке мо­ду­лей доступ­ны оп­ции. Драй­ве­ры web-ка­мер час­то име­ют необя­за­тель­ные па­ра­мет­ры, по­зво­ляю­щие от­клю­чить ин­фра­крас­ные све­то­дио­ды или из­менить раз­мер кад­ра ли­бо час­то­ту сме­ны кад­ров. Вы мо­же­те про­честь до­ку­мен­та­цию о мо­ду­ле ли­бо при­менить ко­ман­ду modinfo. Как пра­ви­ло, спи­сок доступ­ных па­ра­мет­ров при­во­дит­ся в кон­це, на­при­мер:

$ modinfo gspca_ov519
filename:	 /lib/modules/2.6.35.10-74.fc14.x86_64/kernel/
drivers/media/video/gspca/gspca_ov519.ko
license:	 GPL
description:	 OV519 USB Camera Driver
…
alias:	 usb:v041Ep4003d*dc*dsc*dp*ic*isc*ip*
depends:	 gspca_main
vermagic:	 2.6.35.10-74.fc14.x86_64 SMP mod_unload
parm:	 frame_rate:Frame rate (5, 10, 15, 20 or 30 fps) (int)

От­сю­да вид­но, что при за­груз­ке мо­ду­ля мож­но ука­зать час­то­ту сме­ны кад­ров вруч­ную.

sudo rmmod gspca_ov519
sudo modprobe gspca_ov519 frame_rate=20

Конеч­но, непло­хо иметь та­кую воз­мож­ность; ну, а ес­ли вы хо­ти­те за­дать эти оп­ции по умол­ча­нию? Для этой це­ли пре­ду­смот­рен спе­ци­аль­ный файл – обыч­но он на­зы­ва­ет­ся /etc/modules.d/options.conf. (Ес­ли он не су­ще­ст­ву­ет, соз­дай­те его.) До­бавь­те в не­го та­кую стро­ку:

options gspca_ov519 frame_rate=20

Она га­ран­ти­ру­ет, что дан­ные оп­ции бу­дут брать­ся при ка­ж­дой за­груз­ке мо­ду­ля, ес­ли вы не от­мените их вруч­ную.

Кста­ти, в том же ка­та­ло­ге обыч­но име­ет­ся и файл blacklist.conf – он при­го­дит­ся, ес­ли по­на­до­бит­ся от­клю­чить про­блем­ное обо­ру­до­вание или драй­ве­ры, ко­то­рые но­ро­вят предъ­я­вить пра­ва на ап­па­рат­ные уст­рой­ст­ва пер­вы­ми.

Ос­та­но­ви­те SSH-ата­ки

Не­мно­го по­кол­ду­ем

Ре­ги­ст­ри­руе­тесь на уда­лен­ных ма­ши­нах? Лю­ди при этом склон­ны за­бы­вать, на ка­ком ком­пь­ю­те­ре на­хо­дят­ся. По­это­му не по­жа­лей­те вре­ме­ни на по­до­баю­щую на­строй­ку при­гла­ше­ния ко­манд­ной стро­ки, что­бы от­ли­чать ком­пь­ю­те­ры, на ко­то­рых вы ре­ги­ст­ри­руе­тесь, друг от дру­га. По­про­буй­те до­ба­вить сле­дую­щий текст в файл .bashrc в ва­шем ка­та­ло­ге уда­лен­но­го поль­зо­ва­те­ля:

export PS1=”\
[\e[41;1m\]\u@\
[\e[32;1m\]\H> \
[\e[0m\]”

За­чем? Когда ваш ком­пь­ю­тер досту­пен че­рез Internet, ка­ж­дая сви­нья рвет­ся по­лу­чить к нему доступ.

Как? От­крыв доступ к сво­ей ма­шине че­рез Internet – ска­жем, вы хо­ти­те ра­бо­тать на сво­ем до­машнем ком­пь­ю­те­ре, бу­ду­чи в отъ­ез­де, или дер­жи­те web-сер­вер – вы по­ра­зи­тесь ко­ли­че­­ст­ву зон­ди­рую­щих атак зло­умыш­ленников. Про­вер­ки ра­ди, за 60 ми­нут он­лайн мы на­счи­та­ли 43 по­тен­ци­аль­ных взлом­щи­ка, ка­ж­дый из ко­то­рых неод­но­крат­но пы­тал­ся вой­ти на SSH-сер­вер.

Есть несколь­ко про­стых ве­щей, ко­то­рые мож­но сде­лать, что­бы от­ра­жать ата­ки. Во-пер­вых, про­ставь­те дру­гой порт в фай­ле на­строй­ки SSH вза­мен стан­дарт­но­го 22. Это ма­лость ослож­ня­ет, по­сколь­ку по­том нуж­но бу­дет за­помнить но­мер пор­та и вруч­ную вво­дить его при ка­ж­дой ре­ги­ст­ра­ции. Во-вто­рых, мож­но бло­ки­ро­вать ре­ги­ст­ра­цию с па­ро­лем. Но тогда при­дет­ся уста­но­вить клю­чи SSH, что­бы иметь воз­мож­ность ре­ги­ст­ри­ро­вать­ся, при­чем доступ бу­дет вы­да­вать­ся толь­ко из­вест­ным ком­пь­ю­те­рам.

Еще один трюк – вклю­чать SSH толь­ко тогда, когда это дей­ст­ви­тель­но тре­бу­ет­ся. Мы од­на­ж­ды про­бо­ва­ли ме­тод сек­рет­но­го ко­до­во­го сло­ва, ко­то­рое от­прав­ля­ли на спе­ци­аль­ный ад­рес элек­трон­ной поч­ты. Ко­до­вое сло­во пе­ре­хва­ты­вал скрипт на сер­ве­ре и на час вклю­чал SSH. Это бы­ло очень хит­ро, но канитель­но. Но ка­ким бы ва­ри­ан­том вы ни восполь­зо­ва­лись, все рав­но по­на­до­бит­ся раз­вер­нуть скрипт fail2ban.

Он бу­дет чи­тать ва­ши жур­на­лы и оп­ре­де­лять, кто пред­при­нял неудав­шие­ся по­пыт­ки ре­ги­ст­ра­ции. По­сле неко­го чис­ла неудач­ных по­пы­ток ре­ги­ст­ра­ции – ска­жем, шес­ти за 10 ми­нут – скрипт ак­ти­ви­зи­ру­ет iptables, что­бы бло­ки­ро­вать со­единение с ва­шим ком­пь­ю­те­ром с это­го хоста на за­дан­ный про­ме­жу­ток вре­мени. По умол­чанию, это 10 ми­нут – вро­де и недол­го, но боль­шин­ст­во та­ких атак осу­ще­ст­в­ля­ет­ся скрип­та­ми, ко­то­рые че­рез несколь­ко неудач­ных по­пы­ток пре­кра­ща­ют ата­ку и пе­ре­клю­ча­ют­ся на дру­гую ми­шень.

Скрипт fail2ban вы най­де­те на сай­те sourceforge: http://www.fail2ban.org/wiki/index.php/Main_Page. Внима­тель­но про­чти­те до­ку­мен­та­цию по на­строй­ке это­го сер­ви­са и не от­де­лы­вай­тесь зна­чения­ми по умол­чанию. В по­ряд­ке бо­ну­са, скрипт да­ет воз­мож­ность на­блю­дать за по­пыт­ка­ми взло­ма и дру­гих сер­ви­сов.

За­щи­та па­ро­лем при за­груз­ке

За­чем? Что­бы до­пускать к оп­ре­де­лен­ным ин­стал­ля­ци­ям и во­об­ще к за­груз­ке ком­пь­ю­те­ра толь­ко до­ве­рен­ных поль­зо­ва­те­лей!

Как? Боль­шин­ст­во основ­ных ди­ст­ри­бу­ти­вов пе­ре­хо­дят или уже пе­ре­шли на за­груз­чик Grub 2 (за­мет­ное ис­клю­чение – Fedora). Это по­зво­ля­ет уста­но­вить ау­тен­ти­фи­ка­цию поль­зо­ва­те­лей для пунк­тов за­гру­зоч­но­го ме­ню и как минимум от­час­ти за­щи­тить сис­те­му(ы) от несанк­циониро­ван­но­го досту­па: на­при­мер, раз­ре­шить толь­ко неко­то­рым поль­зо­ва­те­лям за­гру­жать кон­крет­ные яд­ра.

Во вре­мя за­груз­ки ме­ню ото­бра­жа­ет­ся как обыч­но, но когда кто-то по­пы­та­ет­ся вы­звать за­щи­щен­ный пункт за­гру­зоч­но­го ме­ню, ему пред­ло­жат вве­сти имя поль­зо­ва­те­ля и па­роль. Вы­полнить эту на­строй­ку не так уж про­сто, но мы ри­скнем. Пер­вый порт вы­зо­ва – за­го­ло­воч­ный файл. Он на­хо­дит­ся в /etc/grub.d/ и на­зы­ва­ет­ся 00‑header или по­хо­же. От­крой­те его для ре­дак­ти­ро­вания в лю­би­мом тек­сто­вом ре­дак­то­ре и до­бавь­те в его ко­нец текст

cat << EOF
set superusers=”myname”
password myname 1234
EOF

Он уста­нав­ли­ва­ет поль­зо­ва­те­ля (myname) и его па­роль (1234). Имей­те в ви­ду, что ес­ли вы здесь что-то на­пу­тае­те, об­ви­нять бу­дет неко­го, кро­ме се­бя, по­это­му по­за­боть­тесь, что­бы в ме­ню был пункт, из ко­то­ро­го вы смо­же­те за­гру­зить­ся и ис­пра­вить де­ло, ес­ли что-то пой­дет не так.

Те­перь от­ре­дак­ти­руй­те файл 10‑linux из то­го же ка­та­ло­га. Вам нуж­ны за­пи­си, на­чи­наю­щие­ся с

menuentry “$1” {

или с

printf “menuentry \”${title}\” --class linux {

До­бавь­те в эти стро­ки пе­ре­клю­ча­тель --users и ука­жи­те имя поль­зо­ва­те­ля сра­зу же по­сле от­кры­ваю­щей фи­гур­ной скоб­ки или эле­мен­та ме­ню, на­при­мер:

menuentry “$1” --users myname {

или

printf “menuentry \”${title}\” --class linux --users myname {

Со­хра­ни­те файл и об­но­ви­те Grub ко­ман­дой:

sudo update-grub

Те­перь вы го­то­вы пе­ре­за­гру­зить ком­пь­ю­тер и про­тес­ти­ро­вать но­вое за­гру­зоч­ное ме­ню, за­щи­щен­ное па­ро­лем. Мо­же­те да­же под­шу­тить над лю­би­те­ля­ми вле­зать в ва­шу ма­ши­ну: не го­во­ри­те им, что за­щи­ти­ли за­гру­зоч­ное ме­ню па­ро­лем, и до­ж­ди­тесь, что­бы они при­бе­жа­ли к вам с во­про­са­ми. Вот, кста­ти, и при­чи­на не де­лать па­ро­ли слиш­ком про­сты­ми для уга­ды­вания – на­при­мер, про­сто ‘password’ или ваш день ро­ж­де­ния.

NAS: Сде­лать са­мим или ку­пить?

Воз­мож­но, вас по­се­ща­ла идея пре­вра­тить свой ста­рый, ни на что дру­гое не год­ный ПК или но­ут­бук в се­те­вое уст­рой­ст­во, что­бы хранить там ре­зерв­ные ко­пии, слать че­рез него по­ток ме­диа-дан­ных и про­чее. Да, это мож­но; но не факт, что все бу­дет так за­ме­ча­тель­но, как вы во­об­ра­жа­ли. ПК, пре­вра­щен­ный в NAS, хо­рош тем, что мо­жет ра­бо­тать как пол­но­цен­ная вер­сия Linux или на­стоя­щий сер­вер. Од­на­ко боль­шин­ст­во ПК не рас­счи­та­но на круг­ло­су­точ­ную ра­бо­ту, и да­же ес­ли их к это­му при­ну­дить, оче­ред­ной счет за элек­тро­энер­гию вас ско­рее все­го непри­ят­но уди­вит. Со­вре­мен­ные NAS-уст­рой­ст­ва, на­при­мер, Qnap 219 или Excito B3, уме­ют ин­тел­лек­ту­аль­но управ­лять элек­тро­пи­танием и по­треб­ля­ют око­ло 20 Вт (а не 200), а так­же за­ранее на­строе­ны на вы­полнение функ­ций уст­ройств се­те­во­го хранения дан­ных.

Приложения звездного уровня

Back in Time

Цель: Уп­ро­ще­ние ре­зерв­но­го ко­пи­ро­ва­ния

Сайт: http://backintime.le-web.org

Ни­че­го осо­бен­но­го здесь нет; Back In Time про­сто соз­да­ет ре­зерв­ные ко­пии ука­зан­ных ва­ми ка­та­ло­гов, что в прин­ци­пе де­ла­ет­ся за пять ми­нут из ко­манд­ной стро­ки. Но вот в чем ис­тин­ное пре­иму­ще­ст­во этой про­грам­мы: она на­столь­ко уп­ро­ща­ет ре­зерв­ное ко­пи­ро­ва­ние, что вы дей­ст­ви­тель­но ста­не­те его вы­пол­нять; а уж это всем ма­ги­ям ма­гия.

Webmin

Цель: Управ­ле­ние всем под­ряд с безо­пас­но­го рас­стоя­ния

Сайт: http://webmin.com

Ес­ли у вас есть уда­лен­ный Linux-ком­пь­ю­тер, тре­бую­щий за­бо­ты ад­ми­ни­ст­ра­то­ра, вам при­го­дит­ся Webmin. Это про­стое при­ло­же­ние с web-ин­тер­фей­сом уп­ро­ща­ет по­иск нуж­ных эле­мен­тов управ­ле­ния, ка­кая бы вер­сия Linux у вас ни бы­ла. Кро­ме то­го, про­грам­ма пунк­ту­аль­но об­нов­ля­ет­ся и от­ли­ча­ет­ся за­щи­щен­но­стью.

Dansguardian

Цель: Безо­пас­ный се­мей­ный сер­финг

Сайт: http://dansguardian.org

Dansguardian – это про­кси с web-фильт­ра­ци­ей, ко­то­рый не про­сто по­ла­га­ет­ся на на­ско­ро соз­дан­ные чер­ные спи­ски, но и фильт­ру­ет со­дер­жи­мое web-стра­ниц, оп­ре­де­ляя, сле­ду­ет ли его ото­бра­жать. Ес­те­ст­вен­но, это нель­зя счи­тать пол­но­цен­ной за­ме­ной кон­тро­ля за сай­та­ми, ко­то­рые по­се­ща­ют ва­ши де­ти, но по­мо­ жет пре­дот­вра­тить их слу­чай­ные по­па­да­ния в гряз­ные за­ко­ул­ки се­ти.

Palimpsest

Цель: Выс­ший пи­ло­таж управ­ле­ния дис­ка­ми

Сайт: http://library.gnome.org/users/palimpsest/2.32/intro.html.en

Gnome Disk Utility или Palimpsest (на­зва­ние пер­га­мен­та, очи­щен­но­го для по­втор­но­го ис­поль­зо­ва­ния) – ве­ли­ко­леп­ный ин­ст­ру­мент для управ­ле­ния дис­ка­ми, хо­тя лишь не­мно­гие во­об­ще зна­ют о его су­ще­ст­во­ва­нии. По­ми­мо обыч­ных мон­ти­ро­ва­ния и фор­ма­ти­ро­ва­ния, вы мо­же­те ре­дак­ти­ро­вать раз­де­лы и за­пус­кать ди­аг­но­сти­че­ские сред­ст­ва на под­клю­чен­ных но­си­те­лях. И это сред­ст­во ус­та­нав­ли­ва­ет­ся как часть Gnome, так что упот­реб­ляй­те!

FSlint

Цель: Воз­врат по­тра­чен­но­го про­стран­ст­ва

Сайт: www.pixelbeat.org/fslint

Из­ряд­ная часть ва­ше­го дис­ко­во­го про­стран­ст­ва тра­тит­ся без тол­ку. По су­ти, оно рас­хо­ду­ет­ся вхо­ло­стую, мед­лен­но де­гра­ди­ру­ет и хра­нит из­бы­точ­ные ко­пии ин­фор­ма­ции. Это толь­ко од­на из об­лас­тей, где вам мо­жет по­мочь FSlint. Про­грам­ма обы­щет все об­лас­ти ва­ше­го дис­ка и очи­стит их для вас, вы­ки­нув не­нуж­ный хлам.

Partimage

Цель: Кло­ни­ро­ва­ние ва­ших дис­ков

Сайт: http://www.partimage.org/Main_Page

Partimage – ин­ст­ру­мент кло­ни­ро­ва­ния дис­ков, спо­соб­ный соз­да­вать об­ра­зы раз­де­лов или уст­ройств и да­же их ре­зерв­ные ко­пии че­рез сеть. Ле­жа­щее в его ос­но­ве ПО ис­поль­зу­ет ин­тер­фейс Curses, и его тре­бо­ва­ния ми­ни­маль­ны; но вы мо­же­те так­же рас­смот­реть од­ну из оп­ций дис­ков ава­рий­но­го вос­ста­нов­ле­ния, для про­сто­ты ис­поль­зо­ва­ния вклю­чаю­щих Partimage – на­при­мер, Clonezilla (см. http://clonezilla.org).

Шаг за ша­гом:

От­кат об­нов­ле­ний PPA

Шаг 1

  • 1 Ста­вим Ubuntu Tweak
Ubuntu Tweak – от­лич­ный ин­ст­ру­мент для управ­ле­ния па­ке­та­ми Ubuntu. Он ус­та­нав­ли­ва­ет­ся так:
sudo add-apt-repository ppa:tualatrix/ppa
sudo apt-get update
sudo apt-get install ubuntu-tweak
Те­перь ин­ст­ру­мент поя­вит­ся в ме­ню System Tools.

Шаг 2

  • 2 Чис­тим PPA
Вы­бе­ри­те оп­цию Package Cleaner в ле­вом ме­ню, за­тем оп­цию Purge PPA в пра­вом ниж­нем уг­лу глав­ной па­не­ли. На дан­ном эта­пе, ве­ро­ят­но, все бу­дет бло­ки­ро­ва­но. Щелк­ни­те по кноп­ке, сни­маю­щей бло­ки­ров­ку, и вве­ди­те па­роль, что­бы ав­то­ри­зо­вать­ся для вне­се­ния из­ме­не­ний.

Шаг 3

  • 3 Ша­га­ем на­зад
В на­шем слу­чае вы­бра­но уда­ле­ние Firefox и ря­да дру­гих про­грамм. На са­мом де­ле, мы не хо­тим ос­тать­ся без Firefox или уда­лить все, что име­ет к не­му от­но­ше­ние. Ubuntu Tweak по­ни­ма­ет это и да­ет нам воз­мож­ность сни­зить вер­сию па­ке­та до по­след­них ре­по­зи­то­ри­ев Ubuntu. Де­ло сде­ла­но!

Мо­ни­то­ринг сис­те­мы с Ksysguard

Шаг 1

  • 1 За­пуск Ksysguard
Ksysguard – часть ба­зо­вой ин­стал­ля­ции KDE, и ес­ли у вас есть KDE, то Ksysguard у вас то­же есть. За­пус­тив эту про­грам­му, вы по­лу­чи­те стан­дарт­ное ок­но мо­ни­то­рин­га ре­сур­сов. Оно очень по­хо­же на эк­ви­ва­лент из Gnome, но да­ет на­мно­го боль­ше воз­мож­но­стей!

Шаг 2

  • 2 Вы­бор но­вых оп­ций
На па­не­ли ин­ст­ру­мен­тов вы­бе­ри­те New Tab, и соз­да­ст­ся но­вая пус­тая вклад­ка. Из рас­по­ло­жен­но­го спра­ва де­ре­ва те­перь мож­но пе­ре­тас­ки­вать мы­шью свой­ст­ва, за ко­то­ры­ми вы ре­ши­ли на­блю­дать. Ksysguard так­же ото­бра­жа­ет ап­па­рат­ные мо­ни­то­ры ва­ше­го CPU и ма­те­рин­ской пла­ты.

Шаг 3

  • 3 Сле­ди­те за всем
На один и тот же гра­фик мож­но пе­ре­та­щить мно­же­ст­во по­ка­за­те­лей и мо­ни­то­рить, на­при­мер, все опе­ра­ции дос­ту­па к дис­ку. Ес­ли у вас боль­ше од­ной сис­те­мы, мож­но на­блю­дать за все­ми ра­бо­таю­щи­ми сис­те­ма­ми в од­ном ок­не. Для ус­та­нов­ки со­еди­не­ния щелк­ни­те по кноп­ке Monitor Remote Machine.
Личные инструменты
  • Купить электронную версию
  • Подписаться на бумажную версию