всем начинающим - читать:
http://citkit.ru/articles/archlinuxcrux/
что привлекло (помимо arschloch-а) - возможность комбинировать систему из прекомпиленных пакетов и собранных вручную. имеет смысл собирать:
1. ядро (это сэкономит трафик и имеет ещё пару-тройку преимуществ)
2. пакеты мультимедиа (ffmpeg, mplayer, x264 и т.д.)
3. WM/DE (как пример: либо тянуть 60мб на очередной апдейт kdebase + kdegraphics + kdelibs или вытянуть патч на исходники в несколько десятков килобайт - это справедливо и в отношении ядра)
допустим, у нас одноядерный процессор без HT - нужно ли нам ядро с SMP? нужен ли нам SMP для 4-х ядерного проца по умолчанию? нужно ли нам качать пакет в 30мб на очередном обновлении или патч в 40кб (есть разница, не так ли)?
если мы принимаем волевое решение строить комбинированную систему (пакеты + своя сборка при помощи ABS) нам не помешает создать скрипт для обновления этой системы. очевидно, что собираемые вручную пакеты мы внесём в IgnorePkg и при
$ pacman -Syu
нам дадут знать о различиях в версиях пакетов на нашей машине и в репозиториях арча. но как-то неудобно выискивать эту разницу в цифирьках на глазок. рассмотрим следующий детский скриптец:
$ cat ~/bin/sys_update
#!/bin/sh
if [ `pacman -Ss freetype2 | grep current | awk '{printf $2}'` != \
`pacman -Q | grep freetype2-lcd_ | awk '{printf $2}'` ]
then echo -e '\E[37;31m'"\033[1mFreetype2-lcd_ SHOULD BE UPDATED!\033[0m"
else echo -e '\E[37;44m'"\033[1mFreetype2-lcd_ is ok\033[0m"
fi
if [ `pacman -Ss kernel26 | grep current | awk '{printf $2}'` != \
`pacman -Q | grep kernel26 | awk '{printf $2}'` ]
then echo -e '\E[37;31m'"\033[1mKernel26 SHOULD BE UPDATED!\033[0m"
else echo -e '\E[37;44m'"\033[1mKernel26 is ok\033[0m"
fi
if [ `pacman -Ss kqemu | grep extra | grep kqemu\ | awk '{printf $2}'` != \
`pacman -Q | grep kqemu\ | awk '{printf $2}'` ]
then echo -e '\E[37;31m'"\033[1mKqemu SHOULD BE UPDATED!\033[0m"
else echo -e '\E[37;44m'"\033[1mKqemu is ok\033[0m"
fi
if [ `pacman -Ss ntfs-3g | grep extra | grep ntfs-3g\ | awk '{printf $2}'` != \
`pacman -Q | grep ntfs-3g\ | awk '{printf $2}'` ]
then echo -e '\E[37;31m'"\033[1mntfs-3g SHOULD BE UPDATED!\033[0m"
else echo -e '\E[37;44m'"\033[1mntfs-3g is ok\033[0m"
fi
if [ `pacman -Ss truecrypt | grep extra | grep truecrypt\ | awk '{printf $2}'` != \
`pacman -Q | grep truecrypt\ | awk '{printf $2}'` ]
then echo -e '\E[37;31m'"\033[1mtruecrypt SHOULD BE UPDATED!\033[0m"
else echo -e '\E[37;44m'"\033[1mtruecrypt is ok\033[0m"
fi
sudo pacman -Syu
sudo abs
# EOF
вот теперь глазоньки ломать не надо. отслеживаются изменения в пакетах truecrypt, ntfs-3g, kernel26, kqemu и freetype2. неплохим началом будет запихать в cron что-то наподобие:
$ cat ~/bin/sys_settings_backup
#!/bin/sh
cd /backup_folder
sudo tar -cvvjf "`date +%m%d%Y`_etc.tar.bz2" /etc
sudo tar -cvvjf "`date +%m%d%Y`_var_lib_pacman.tar.bz2" /var/lib/pacman
# EOF
теперь можно покуражиться. если у вас нет острой необходимости (понимаю, что винт не резиновый, но всё же) - не стоит делать вот так:
$ sudo pacman -Scc
это моветон, особенно для экспериментаторов. ежели кто желает получить "домашнее задание" - может нарисовать скриптик для бэкапа/восстановления разрешений на файлы в системе (вариантов решения тут может быть масса) или скриптик для удаления старых версий скачанных ранее файлов из /var/cache/pacman/pkg/ (опять же только если всё нормально работает и нет необходимости откатываться на более ранние версии софта). иногда встречаю на форумах замечания о том, что компиляция своего софта из ABS в каталоге, отличном от /var/abs/local/, может привести к нежелательным последствиям - не сталкивался, собираю всё в домашней директории. сборку всего и вся логично вести PKGBUILD файлами и не пытаться самовольничать с ./configure && make && sudo make install, что в арче стоит приравнять к одному из самых глупых поступков. параметры компиляции при makepkg можно поменять в файле /etc/makepkg.conf. что именно менять - разжёвано здесь: http://gcc.gnu.org/onlinedocs/. вопрос в том, стоит ли?
$ cat /etc/makepkg.conf | grep -v \#
FTPAGENT="/usr/bin/wget --continue --passive-ftp --tries=3 --waitretry=3 --no-check-certificate"
CARCH="i686"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=i686 -mtune=generic -O2 -pipe"
CXXFLAGS="-march=i686 -mtune=generic -O2 -pipe"
BUILDENV=(fakeroot !distcc color !ccache)
OPTIONS=(strip !docs libtool emptydirs)
INTEGRITY_CHECK=(md5)
DOC_DIRS=(usr/{,share/}{info,doc,gtk-doc} opt/gnome/{,share/}{info,doc,gtk-doc})
настоящие джедаи обязаны подружиться с командой makeworld (пожелаю им всяческих успехов в этом нелёгком деле).
Ночь. Лежу без чужой жены
Кулер ревет, словно в жопе
Я Дженту компИлю для рОдной страны
Назло буржуазной Европе
alv (c)
конечно же AUR (http://aur.archlinux.org/) спасёт отцов демократии от недостатка софта. всё равно чего-то не нашли? - так сделайте пакет и залейте в AUR самостоятельно, хватит хныкать из конца-то в конец. ваш покорный слуга внёс свой махонький вклад в виде 2-х пакетов (один из которых мало кому пригодится, о чём честно написал в комментариях к пакету):
igmpproxy
freetype2-lcd_
при работе с этой системой (равно как и с любой другой) будьте крайне внимательны к конфигам сервисов, стартовым скриптам, сообщениям при загрузке и т.п. - это именно то поле, на котором славно порезвились пьяные в дымину сапёры с неограниченными боеприпасами. не хочу сказать, что всё плохо (есть варианты "гораздо мрачней"), но помнить о нюансах стоит (на эту тему - изумительный анекдот, как Петька спрашивал у Чапая про эти самые "нюансы", Чапай объяснил в "классическом стиле", загнув Петеньку раком). сразу бросается в глаза отсутствие опции "status" в /etc/rc.d/ скриптах. несомненно, что все должны знать о каталоге /var/run/, но уже некрасиво. дай Бог памяти, с тем же snort-ом повозился чуток дабы заставить работать, а не имитировать бурную деятельность. было очень забавно учиться особенностям работы и настройки iptables из /etc/rc.d/iptables (справедливости ради замечу, что далеко не все пользователи SuSE знают о наличии и возможностях интересного файлика - /etc/sysconfig/SuSEfirewall2) - всё это несомненно придётся по душе пользователям Slackware, где Патрик оттягивается с подобными "нюансами" по полной программе. было что-то ещё из этой же оперы, да запамятовал. расслабляться однозначно не стоит. каждый дистрибутив имеет эти свои "фичи": немного внимания, времени, терпения - вот и всё, что нужно для попадания в "Страну Пе*датию" (c) (где жизнь без забот и всё такое прочее...). тут сам собой напрашивается вывод, что все дистрибутивы - одинаковы, все мужики - гхм... слегка озабочены и от них плохо пахнет, а солнце смахивает на карманный фонарик.
на этой оптимистичной ноте позвольте завершить первую часть опуса "Eine Kleines Arschloch" и откланяться...
Подписаться на:
Комментарии к сообщению (Atom)
2 комментария:
Здрасьте,это Аттила с Юнихинфо.
Вот.
Прочитал не без интереса, спасибо.
Только вот слово "ньюанс", вообще говоря, пишется бэз мягкого знака. Так что там, где оно без кавычек...
Вот.
Спасибо за заметку!
эх... как был неграмотным - так и остался. спасибо, поправил. надо озаботиться плагинами на проверку орфографии или сразу всё в html-е загружать...
Отправить комментарий