I-Nex, wydać 0.5.6 czy 0.5.8 na mikołajki?
Posted In: I-Nex, Nowe wersje, Uncategorized
Tagi: decode-dimms, i-nex, i2c, i2c-tools, memory, sensors-detect, skrypt, vel_linux
No właśnie dobre pytanie. Już dawno powinienem wydać I-Nex 0.5.6, kod już dawno był w fazie stable, zaraz po tym jak wprowadziłem bazę tych historycznych 1080 procesorów o których to wspominałem w poprzednim wpisie.
Na wikipedii możecie przeczytać o tym w jaki sposób nadaje się wersje programom na linuksie.
Po wprowadzeniu bazy danych procesorów rozpocząłem pracę nad zakładką System oraz Memory.
Memory:
Od dawien dawna szukałem sposobu na to w jaki sposób wyciągnąć informacje o pamięci ram, producencie, taktowaniu, dacie produkcji, rozmiarze oraz o ilości banków pamięci w płycie głównej.
Natrafiłem na i2c (Ubuntu pakiet: i2c-tools) i przeczytałem poradnik na stronie Ubuntu See Live RAM Timings Decode DIMMS
decode-dimms działa i pokazuje informacje o ramie bez użycia praw użytkownika root, wykorzystując dane z pliku eeprom, znajdującego się w:
/sys/bus/i2c/drivers/eeprom/*/*
Jedynym minusem jest to że i2c trzeba poddać modprobe osobno dla każdego chipsetu płyty głównej.
Ja mam płytę Intel Desktop Board D425KT, czyli w moim przypadku bedzie to
modprobe i2c-i801
Aby automatycznie sprawdzić jakiego modułu nam potrzeba wystarczy:
sudo sensors-detect
I moduł zostanie dodany automatycznie do /etc/modules. by przy starcie ładował się automatycznie.
Teraz tylko pozostaje mi napisać wszystko by działało i nie wymagało pakietu i2c-tools.
System:
Zakładka system przybrała standardowy wygląd, czyli Labelki obok siebie z pogrubionym obramowaniem i kilkoma nowymi przydatnymi informacjami.
Pewne skrypty wyciągnąłem z kernela linuksa.
cat /usr/src/linux-3.12/scripts/ver_linux
uname -a
gcc -dumpversion 2>&1| awk
‚NR==1{print „Gnu C „, $1}’
make –version 2>&1 | awk -F, ‚{print $1}’ | awk
‚/GNU Make/{print „Gnu make „,$NF}’
echo „binutils $(ld -v | egrep -o ‚[0-9]+.[0-9.]+’)”
echo -n „util-linux ”
fdformat –version | awk ‚{print $NF}’ | sed -e s/^util-linux-// -e s/)$//
echo -n „mount ”
mount –version | awk ‚{print $NF}’ | sed -e s/^mount-// -e s/)$//
depmod -V 2>&1 | awk ‚NR==1 {print „module-init-tools „,$NF}’
tune2fs 2>&1 | grep „^tune2fs” | sed ‚s/,//’ | awk
‚NR==1 {print „e2fsprogs „, $2}’
fsck.jfs -V 2>&1 | grep version | sed ‚s/,//’ | awk
‚NR==1 {print „jfsutils „, $3}’
reiserfsck -V 2>&1 | grep ^reiserfsck | awk
‚NR==1{print „reiserfsprogs „, $2}’
fsck.reiser4 -V 2>&1 | grep ^fsck.reiser4 | awk
‚NR==1{print „reiser4progs „, $2}’
xfs_db -V 2>&1 | grep version | awk
‚NR==1{print „xfsprogs „, $3}’
pccardctl -V 2>&1| grep pcmciautils | awk ‚{print „pcmciautils „, $2}’
cardmgr -V 2>&1| grep version | awk
‚NR==1{print „pcmcia-cs „, $3}’
quota -V 2>&1 | grep version | awk
‚NR==1{print „quota-tools „, $NF}’
pppd –version 2>&1| grep version | awk
‚NR==1{print „PPP „, $3}’
isdnctrl 2>&1 | grep version | awk
‚NR==1{print „isdn4k-utils „, $NF}’
showmount –version 2>&1 | grep nfs-utils | awk
‚NR==1{print „nfs-utils „, $NF}’
echo -n „Linux C Library ”
sed -n -e ‚/^.*/libc-([^/]*).so$/{s//1/;p;q}’ < /proc/self/maps ldd -v > /dev/null 2>&1 && ldd -v || ldd –version |head -n 1 | awk
‚NR==1{print „Dynamic linker (ldd) „, $NF}’
ls -l /usr/lib/libg++.so /usr/lib/libstdc++.so 2>/dev/null | awk -F.
‚{print „Linux C++ Library ” $4″.”$5″.”$6}’
ps –version 2>&1 | grep version | awk
‚NR==1{print „Procps „, $NF}’
ifconfig –version 2>&1 | grep tools | awk
‚NR==1{print „Net-tools „, $NF}’
# Kbd needs ‚loadkeys -h’,
loadkeys -h 2>&1 | awk
‚(NR==1 && ($3 !~ /option/)) {print „Kbd „, $3}’
# while console-tools needs ‚loadkeys -V’.
loadkeys -V 2>&1 | awk
‚(NR==1 && ($2 ~ /console-tools/)) {print „Console-tools „, $3}’
oprofiled –version 2>&1 | awk
‚(NR==1 && ($2 == „oprofile”)) {print „oprofile „, $3}’
expr –v 2>&1 | awk ‚NR==1{print „Sh-utils „, $NF}’
udevinfo -V 2>&1 | grep version | awk ‚{print „udev „, $3}’
iwconfig –version 2>&1 | awk
‚(NR==1 && ($3 == „version”)) {print „wireless-tools „,$4}’
if [ -e /proc/modules ]; then
X=`cat /proc/modules | sed -e „s/ .*$//”`
echo „Modules Loaded „$X
fi
Większości z tych przydatnych poleceń jeszcze nie wprowadziłem do I-Nex.