Така работата продължава 😉 Имам си нова версия на NUKI основното подобрение е, че правилогове на това кога се рестартира приемника. За целта съм използвал nc като го вдигам на порт 666 😈 и през него хвърля лога преди да се рестрти. За да може да е вдигнат nc докато работи cron-a за логване по дримовете съм напсиал скрипт които върти в безкраен цикъл nc защото след всяка конекция към него се затваря с приключването на трансфера. Сами скрипт е досатъчно кратък и ясен при желание да се променят портовете и мястото каде да пише фаила 🙂 Самия лог смятам по натам в времето да го импортирам в база данни затова и формата на дата-та е такъв.

От доста време тия „спящи кутии“ ми торвят здравето 🙂 В конкретност работят работят и в някои момент забие приемника и изисква рестарт на CAM модула. В моя случаи ползвам newcs и mgcamd за декодиране на програмите и когато забиеше някоя програма mgcamd процеса се претоварваше развиваше стоиности от порядъка на 80-90% заемане на процесорна мощ 🙂 Ясно вече имаше болест имаше и симпом само лекарство ми трябваше 😉 хубаво ама мъничетат ми 500s не разполгат с голям капацитет от команди например ps няма u аргумента top няма -p и т.н много мразим busybox 😆 Стига дивотии нека да мина към същината 🙂 Всичката необходима информация се съдържа в папката /proc след достa четене напред назад и след помощ от добрия ми прител ShadowX без които нямаше да успея се стигна до следния прекрасен скрипт клик 🙂 Също така и моя прител Nathariel които ми търпеше жуженето през цялото време 😉  ХАХ типично за мен започвам да обяснвам нещо започвам второ трето и пето 🙂 хахахах Така стига дивотии ами да взема да се хваля колко готен програмист съм 😉

Най важната конструкция в скрипта е

# Get usage cpu time
cputime=`cat /proc/uptime | awk '{print $1}' | sed 's/\.//'`
# Get process usage cpu time
proctime=`cat /proc/${procpid}/stat | awk '{t = $14 + $15;print t}'`
# wait 5 seconds
sleep 5
# get usage cpu time, again
cputime2=`cat /proc/uptime | awk '{print $1}' | sed 's/\.//'`
# get process usage cpu time, again
proctime2=`cat /proc/$procpid/stat | awk '{t = $14 + $15;print t}'`
# calculate process usage cpu time over total usage cpu time as percentage
cpu=$((($proctime2-$proctime)*100/($cputime2-$cputime)))
# limit exceed check
echo CPU usage for PID $procpid is $cpu
if [ $cpu -gt $MAX ];
then
reboot
fi

като цяло добре съм си я описал с коментарчета като добре дете 😉 Общо взето това е сърцето на скрипта взима стоиност от /proc/ид-то-на процеса/stat и следтова изчита стоиноста 5 секунди по късно. Формулката за ичисляване е кристално ясна за разбиране и второкласник ще я реши лесно. Нещо много важно за наблягане е, че скрипта ползва ash които си е доста неприятно окълцан ако си свикнал с всички лигни на bash 😉 В страничката на скрипта съм описал по подробно технологията на работа и логиката на ползване. Ще се радвам на мнения препоръки и бъг репорт, защото една глава не стига 🙂

От няколко дни правя firewall за офиса ми, защото досега ползвах маскарадинг на ip-тата а трябва да прекарвам всичко през SNAT, абе объркана истояи 😆 Просто трябваше да пренапиша цялата рутерска логика. Както обичам да казвам речено сторено, написах го firewall-a всичко хубаво работи сега додие време да изрязвам портове ip-та кои да има достъп и кои не. Стана ми лошо като си дадох сметка че трябва да напиша около 40 правила за достъп, то само копи и песит пак не си е хава. Тогава програмиста в мен проговори ами наприво само да ги прави. Всичко беше ясно – идеята в 2 отделни фаила пиша портове и ip-та изчитат се създават се правила за разрешаване и всичко друго е изрязано. Самия код се получи доста „тънък“ чак неочаквано малък

##Allow and DROP ip and ports
while read PORT
do
while read IP
do
$IPT -A INPUT -p tcp -s $IP --dport $PORT -j ACCEPT
done < /etc/firewall/allow_ip
$IPT -A INPUT -p tcp --dport $PORT -j DROP
done < /etc/firewall/ports

Скриптчето е адски ясно цикъл в цикъла първия чете от /etc/firewall/ports a втория от /etc/firewall/allow_ip и се създават правилта 🙂

ps Заради синктактичното оцветяване не се показва корекно знака < а се показва html еквивалента му &lt;

вече го написах в sHITS страничката ама да си го дразна и тука че се кефя на надрасканото 🙂 Преди много време си бях намерил някакъв gpg key adder и си бях оправил предупреженитята по сорс листа ми ама кои да помни как беше това приложение 🙄 и затова надращих скрипче дето да добавя ключовте вместо мени че нали съм мързели да си ги свалям сам 😈 Скрипчето е тествано на debian sid мисля че ще върви и на останалите деривати без проблеми. А ето го и скрипчето цък

Вече колко стана 3 дни си имам Asus EEE 1000H-а и немога въобще да се оплача от него. За тия 3 дни го ударих яко на тестинг на дистроци кое как ще върви на мъника. Като цяло има разни Ubuntu хави дето са пречовъркани за ЕЕЕ-то ама нещо не ми се понравиха особено 😉 нали съм си садо/мазохистичен в това отношение. Провах разни Slax и BackTrack ама за момента wi-fi адаптера ми не подържа инджекшънче 😈 така че предпочитам нещо по так ада си сложа. След недълго обикаляне намерих това туториалче Debian EEE 😉 В него си е описано доста подробно как да си инсалирате Debian на вашето EEE PC. Ако не ви се чете или сте малко скарани с англиския е ви обощя като натъртя на 1-2 тънки момента.

1. Сваля те си това ~16MB image

2. С командата dd го меткате на флашка колкото голяма имате dd си има swin вариант. Самото разпактирване става с

Линукс – много е важно USB устроиството ви да не е маунтнато


dd if=debian-eeepc.img of=/dev/YOUR-USB-DEVICE
 sync

Свин <span style=“text-decoration: underline;“>Х: е буквата на вашето устроиство</span>

dd if=debian-eeepc.img od=X:

3. Стартирате си ЕЕЕ-то като му укажете да чете първо флаш устроиството ви. Инсталатора е познат 😉 Аз ;ично си избрах експерт инстал поради повечето опции и най вече че имах възможност да избера между 3-те варинта stable, testing & unstable 🙂 познаите кои избрах 😎 По време на инсталацията мрежовия хардуер е абсолютно опознат мрежовия и wi-fi адаптера си тръгват по default.

4. Когато приключи инсталацията всичко е наред имам си готов работещ дебиан на EEE PC. но има нужда от мъничко тунинг например функционалните бутони не работят или непоказва корекно спиид степинга и опциите за съхранение на батерията 😉 За това нещо се налага или да пачнете всичко на ръка или 😉 да ползате скрипчетата eee-ubuntu-support които преработих уекинко за дебинчето ни цък От скриптовете съм премахнал някои неща , като например че скапват Х-а на дебиан, добавил съм и активирането на камерата 🙂 че беше изключена по подразбиране. Има още какво да се пипне по тях ама като имам време ще го направя. Също така незнам дали скрипчето ще работи корекно с другите ЕЕЕ-та 😉

От тук на татък си добавяте хранилищата за варианта които сте си избрали и си ползвате с песен на уста вашето EEE PC.

ps Хубавое да си инсталирате lock-keys-applet за да виждате какво се слува с Caps Lock-a 😉