Ключевые слова:linux, optimization, kernel, module, size, packet, (найти похожие документы)
From: hatred <ia2.marketscore.com>
Newsgroups:
Date: Mon, 20 Sep 2004 18:21:07 +0000 (UTC)
Subject: Дневник оптимизации в Linux
Оригинал: http://linux.pk.ru/phorum/read.php?f=5&i=2&t=21. О размерах модулей ядра на винте
Замерьте размер своего каталога /lib/modules, особенно, если ядро не
самособранное. Ну как, не жалко места? нет, ну... тогда не читайте, а
если да, то вот такое сделать можно:
compress_modules.sh
#!/bin/sh
VERSION=`uname -r`
MAJOR=`uname -r | awk -F. '{print $1}'`
MINOR=`uname -r | awk -F. '{print $2}'`
if [ $MAJOR -ge 2 -a $MINOR -ge 5 ]; then
OBJ=ko
else
OBJ=o
fi
find /lib/modules/`uname -r`/ -name *.$OBJ -exec gzip -9 '{}' ';'
depmod -a
depmod -A
работает для ядер 2.6, 2.4, на 2.5 что-то сломали (но зачем оно нам?
:)
на других не пробывал.
2. О размерарах дистрибутивных пакетов
В один прекрасный момент всегда перестает хватать места на диске, ладно
еще когда не хватает метров 700--800, чтобы записать фильмец, тут можно на
время смириться, записать что-то на матриции, но это будет потом, но если
нехватает мегов 20, и они нужны позарез, тут можно поднапрячь мозги:
1) попробывть почисть документацию дистрибутива, ведь после настройки
пакета она вам врядли будет нужна, а потребуется, так всегда есть на
cd-rom
вот к примеру:
[16:06:59 hatred@localhost:doc]$ calc_doc_sizes
*CHANGES*: 1629991
*ChangeLog*: 3525776
*LICENSE*: 243082
*README*: 3662130
*AUTHORS*: 169306
*COPYING*: 4215931
*NEWS*: 3205992
*CREDITS*: 56180
*TODO*: 375895
*Changes*: 64683
*COPYRIGHT*: 71689
*GPL*: 195020
*CONTRIBUTOR*: 19072
*ABOUT*: 467804
*MIRRORS*: 686
*VERSION*: 6036
*license*: 18977
*HACKING*: 111091
*MAINTAINERS*: 47245
*ANNOUNCE*: 63674
*THANKS*: 118612
*lsm*: 16852
-----------------
TOTAL: 18285724
18 мегов, не мало, для файлов которые практически не нужны :)
сам скрипт вот:
#!/bin/sh
LIST="CHANGES ChangeLog LICENSE README AUTHORS COPYING \
NEWS CREDITS TODO Changes COPYRIGHT GPL CONTRIBUTOR \
ABOUT MIRRORS VERSION license HACKING MAINTAINERS ANNOUNCE \
THANKS lsm"
total=0
for i in $LIST
do
sizes=`find ./ -name "*$i*" -exec ls -l '{}' ';' | awk '{print $5}'`
size=0
for j in $sizes
do
size=`expr $size + $j`
done
total=`expr $total + $size`
echo -ne "*$i*:\t $size\n"
done
echo -ne "-----------------\n"
echo -ne "TOTAL:\t $total\n
чистить документацию можно и еще больше, это только порыв, у меня на ней
получилось высвободить около 70 метров на диске.
2) Почти все программы в Linux переведены на многие языки, благо NLS :)
но зачем нужны например чешские или польские локализации для нас,
русских?
Тем более, что они занимают нехило места: 85,941,354 у меня было!
Фтопку, всех их :) снемсти все в /usr/share/locale кроме алиасного файла, C и ru*