barcode -i kodi.txt -e code39 -o mee.ps -t 7x18+5+18-5-10 -u mm
piektdiena, 2011. gada 14. oktobris
Svītru kodi komandrindas režīmā
Ģenerājam PS failu ar svītru kodiem, kas atrodas failā kodi.txt.
svētdiena, 2011. gada 31. jūlijs
How to create PDF photo album with ImageMagick
rinda=""; a=1 ; p=1 ;
for fails in ./*JPG
do
rinda=$rinda" "$fails[200x150]
a=$(($a+1))
if [ $a == 37 ]
then
echo "processing $p set"
montage -label '%f' -tile 6x $rinda -page A4 index-$p.pdf
a=1 ; p=$(($p+1)) ; rinda=""
fi
done
echo "processing last set"
montage -label '%f' $rinda -page A4 index-$p.pdf
Update
OMG. The following simple line just works and puts all thumbnails in one PDF file - 35 frames per PDF page.
montage -label "%f" -tile 5x7 -page A4 ../*JPG[200x150] index.pdf
piektdiena, 2011. gada 15. jūlijs
DHCP kļūda pie LTSP instalēšanas
Vasarā lēnām migrējam serverus uz jaunām versijām un virtuālām mašīnām.
Pēc DHCP servera pārcelšanas no Debian Etch uz Debian Squeeze vairs nestartējās LTSP mašīnas - LTSP Etherboot saņem gan IP adresi gan PXE, bet tālāk turpinot ielādi - apstājas.
Ar Wireshark tika noskaidrots, ka "vainīgais" ir atkārtots DHCP pieprasījums no LTSP klienta. Ja DHCPD3 uz Etch deva atpakaļ pieprasītos datus, tad DHCPD3 (isc-dhcp-server 4.1.1-P1-15+squeeze2) atmeta šādu atbildi:
Risinājums tika atrasts te: http://www.nubae.com/logs/ltsp20110317_pg2.html
Jeb, failam /var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default galā ir jāpieraksta "IPAPPEND 3" un tā saturs ir šāds:
Pēc DHCP servera pārcelšanas no Debian Etch uz Debian Squeeze vairs nestartējās LTSP mašīnas - LTSP Etherboot saņem gan IP adresi gan PXE, bet tālāk turpinot ielādi - apstājas.
Ar Wireshark tika noskaidrots, ka "vainīgais" ir atkārtots DHCP pieprasījums no LTSP klienta. Ja DHCPD3 uz Etch deva atpakaļ pieprasītos datus, tad DHCPD3 (isc-dhcp-server 4.1.1-P1-15+squeeze2) atmeta šādu atbildi:
...
Unexpected hash function at hash.c:53.
DHCPDISCOVER from 08:00:27:36:2e:d3 via eth0
DHCPOFFER on 10.0.3.41 to 08:00:27:36:2e:d3 via eth0
DHCPREQUEST for 10.0.3.41 (10.0.0.1) from 08:00:27:36:2e:d3 via eth0: lease 10.0.3.41 unavailable.
DHCPNAK on 10.0.3.41 to 08:00:27:36:2e:d3 via eth0
...
Risinājums tika atrasts te: http://www.nubae.com/logs/ltsp20110317_pg2.html
Jeb, failam /var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default galā ir jāpieraksta "IPAPPEND 3" un tā saturs ir šāds:
default ltsp
label ltsp
kernel vmlinuz
append ro initrd=initrd.img quiet splash nbdport=2000
IPAPPEND 3
trešdiena, 2011. gada 18. maijs
Total traffic counter from MRTG log files
Script to count total traffic for last day for switch port from MRTG log files, and output file name, if total traffic is more than 10GB.
# period
sakums=`date -d -1day +%s`
# 1GB
ttrafic=$((1024*1024*1024))
pushd /var/www/mrtg
for fails in `find *log -mtime -1`
do tail -n +4 $fails |
awk -vsakums=$sakums -vfails=$fails -vttrafic=$ttrafic '{ if ($1 > sakums)
{intr += ($2*300); outtr += ($3*300) }}
END { if (outtr > 10000000000)
printf("%s\t%10.2f\t%10.2f\n",fails,intr/ttrafic,outtr/ttrafic) }'
done
sestdiena, 2010. gada 4. decembris
Dell PERC H700 RAID kontroliera testi
RAID kontrolieris: LSI MegaSAS 9260
Failu serveris: 8GB RAM
EXT4 Failu sistēma
Kontroliera RAID policy - write back (tāpēc "izcili" rakstīšanas ātrumi)
RAID5:
11 diski *1,5TB SATA 7200
RAID6
Failu serveris: 8GB RAM
EXT4 Failu sistēma
Kontroliera RAID policy - write back (tāpēc "izcili" rakstīšanas ātrumi)
RAID5:
11 diski *1,5TB SATA 7200
Command line used: iozone -i0 -i1 -i2 -c -e -a -n 4g -g 16g -y 2048 -s 2048 -q 8192 -f /media/iozone
random random
KB reclen write rewrite read reread read write
4194304 2048 507265 601835 5217335 6075021 6059073 204259
4194304 4096 545864 613254 4900901 5980252 5960771 304020
4194304 8192 484461 494155 3393424 3486067 3487220 339015
8388608 2048 535145 647667 228315 230911 178499 158751
8388608 4096 522054 603106 242188 239015 262852 278510
8388608 8192 511561 547605 238473 238133 450990 325700
16777216 2048 535339 602858 169483 170419 62861 144048
16777216 4096 504894 608561 171000 168866 111390 255407
16777216 8192 547588 627476 167334 170551 177473 315782
RAID6
Command line used: iozone -i0 -i1 -i2 -c -e -a -n 4g -g 16g -y 2048 -s 2048 -q 8192 -f /media/iozone
random random
KB reclen write rewrite read reread read write
4194304 2048 485579 674330 4778832 6087938 6077705 234536
4194304 4096 516627 625204 4709220 5904143 5801122 308782
4194304 8192 577226 695833 3320708 3436157 3439575 326137
8388608 2048 597535 637466 1034064 1108340 200691 182545
8388608 4096 566840 653885 1011363 1134390 333880 298285
8388608 8192 565815 586244 880734 954526 534508 314980
16777216 2048 603074 592641 880728 932588 74480 170545
16777216 4096 589522 606359 882282 930832 135046 283768
16777216 8192 601818 634115 815697 845830 237286 307365
RAID50 (3 x (RAID5 no 4 diskiem))
Command line used: iozone -i0 -i1 -i2 -c -e -a -n 4g -g 16g -y 2048 -s 2048 -q 8192 -f /media/iozone
random random
KB reclen write rewrite read reread read write
4194304 2048 565397 622376 4765631 6042603 6073691 305175
4194304 4096 594191 692283 4799720 5840998 5833904 363215
4194304 8192 566268 641491 3323537 3471235 3468972 353852
8388608 2048 597915 682548 227525 229925 177328 263220
8388608 4096 597083 655845 236983 234054 261084 366365
8388608 8192 593327 647889 232636 227249 436282 340496
16777216 2048 602848 675974 175752 177381 68520 234357
16777216 4096 610316 695315 173770 173823 114449 367738
16777216 8192 615497 662729 172606 175156 184357 328476
piektdiena, 2010. gada 22. oktobris
DWL-2100AP klienti un pārstartēšana
DWL-2100AP klientus var skatīt ar komandu:
Vai arī varam novilkt visus mib, piem., no ftp://ftp.dlink.ru/pub/Wireless/DWL-2100AP/SNMP/ un komanda:
AP pārstartēšanu savukārt veic ar komandu:
snmpbulkwalk -v2c -c public IPADRESE .1.3.6.1.4.1.171.11.37.4.4.5.2.1.2.1
Vai arī varam novilkt visus mib, piem., no ftp://ftp.dlink.ru/pub/Wireless/DWL-2100AP/SNMP/ un komanda:
snmpbulkwalk -v2c -c public -m ./mibs/ IPADRESE AP-Config::adClientMAC
AP pārstartēšanu savukārt veic ar komandu:
snmpset -v2c -c private IPADRESE .1.3.6.1.4.1.171.11.37.4.3.2.1.0 i 1
# jeb
snmpset -v2c -c private -m ./mibs/ IPADRESE AP-Config::sysRestart.0 i 1
piektdiena, 2010. gada 13. augusts
Dažas atziņas par datorklašu klonēšanu
Ok, tātad esmu uzinstalējis un pārklonējis visās datorklasēs Ubuntu 10.04 (bija Ubuntu 8.04)
Ubuntu10.04 instalēšana
Pati instalēšanas gaita bija vienkārša:
Patika:
Fsarchive
Tā kā līdz šim izmantotais parted vairs neuztur ext4, nācās pāriet uz fsarchive. Manas atziņas par fsarchive:
Patīk:
Klonēšana:
Klonēšanai tiek izmantots arī LTSP serveris (gan tikai tīkla būtošanai, bet ja jau LTSP darbojas, kāpēc gan izgudrot jaunu velosipēdu).
Klonēšanas vajadzībām LTSP klienta daļā papildu tika pieinstalēts:
Pēc parstartēšanas (datori paceļas kā tīkla plānie klienti), skriptu pielabo uz :
Pēc pārstartēšanas datoram atliek nomainīt datora vārdu un piejoinot to domēnam:
Hosta nosaukumi:
Lai nebūtu jāskraida gar datoriem un manuāli jāmaina hosta nosaukums (var jau pieslēgties arī ar ssh un katru konfigurēt atsevišķi), var izmantot dhcp iespēju datora nosaukumu paņemt no DHCP servera. Lai tas notiktos, ir jādzēš /etc/hostname fails. Vienīgais trūkums ir tas, ka hosta nosaukumam ļoti vēlams ir jābūt arī /etc/hosts failā, lai datoram pašam sevi nebūtu jāmeklē. Tāpēc lieto skriptu, kas jauno, dhcp hostname ieraksta, gan /etc/hostname gan /etc/hosts failā
Pievienošanās domēnam:
Domēnā tiek izveidots pagaidu konts (expirējas jau rīt), kuram ir tiesības pielikt datorus domēnam, un šis konts tiek pielikts skriptam.
Tātad pēc klonēšanas un pārstartēšanas var laist sekojošo mainīto skriptu:
Ubuntu10.04 instalēšana
Pati instalēšanas gaita bija vienkārša:
- sainstalējam desktopu
- no iepriekšējās sistēmas ar dpkg --get-selections apskatamies vērtīgās pakotnes un dpkg --set-selections && apt-get dselect-upgrade visu uzinstalējam
- novācam visu lieko (indiešu fonti, akonadi u.t.t.)
- piekonfigurējam datoru tīklam (winbind, krb5, security/group.conf, cups/client.conf, umask, uzliekam ssh atslēgas, lai var pieslēgties bez paroles, u.t.t.)
Patika:
- winbind un pam_mount strādāja "Out of Box" - pēc to standarta piekonfigurēšanas nebija nepieciešamas nekāda papildu /etc/pam.d/* pieslīpēšana
- pēc winbind autentifikācijas lietotājiem ir arī kerberos biļete.
- visi desktop efekti strādā arī uz datoriem, uz kuriem līdz šiem tie nedarbojās (datoriem ir iebūvētās Intel videokartes)
- GDM ir galīgi sačakarēts, jo netiek piedāvātas nekādas normālas konfigurēšanas iespējas
- ???
Fsarchive
Tā kā līdz šim izmantotais parted vairs neuztur ext4, nācās pāriet uz fsarchive. Manas atziņas par fsarchive:
Patīk:
- Vienkāršs
- Gana čakls
- Nav vairs prasība pēc identiskiem sējumu lielumiem.
- ???
- servera atbalstu - lai attēlus var paņemt uzreiz no servera, nevis montēta tīkla sējuma
- statusa indikatoru (%, ātrums ..)
Klonēšana:
Klonēšanai tiek izmantots arī LTSP serveris (gan tikai tīkla būtošanai, bet ja jau LTSP darbojas, kāpēc gan izgudrot jaunu velosipēdu).
Klonēšanas vajadzībām LTSP klienta daļā papildu tika pieinstalēts:
- nfs-common, lai var montēt tīkla sējumus
- fsarchiver, lai var klonēt diskus
- openssh server, lai var attālināti pieslēgties plānajam klientam, kā arī sakopētas attiecīgās atslēgas uz known_hosts un authorized_keys
#!/bin/bash
komanda="ssh -n -o ConnectTimeout=1 -i .ssh/id_rsa"
scpkom="scp -o ConnectTimeout=1 -i .ssh/id_rsa"
for hstend in `seq 64 95`
do
hst=10.XXX.XXX.$hstend
$scpkom gpxe.lkrn root@$hst:/boot/
$komanda -n root@$hst '
echo >> /boot/grub/menu.lst
echo title LTSP2 >> /boot/grub/menu.lst
echo root"(hd0,0)" >> /boot/grub/menu.lst
echo kernel /boot/gpxe.lkrn >> /boot/grub/menu.lst
sed -i "s/^default.*0/default 4/g" /boot/grub/menu.lst
reboot
exit' &
done
Pēc parstartēšanas (datori paceļas kā tīkla plānie klienti), skriptu pielabo uz :
$komanda -n root@$hst '
mount -t nfs 10.X.X.XXX:/data/images /media
fsarchiver restfs /media/CSDA1.fsa id=0,dest=/dev/sda1,mkfs=ext4
mkdir /tmp/sda1
mount /dev/sda1 /tmp/sda1
/usr/sbin/grub-install --root-directory=/tmp/sda1 /dev/sda && reboot' &
done
Pēc pārstartēšanas datoram atliek nomainīt datora vārdu un piejoinot to domēnam:
Hosta nosaukumi:
Lai nebūtu jāskraida gar datoriem un manuāli jāmaina hosta nosaukums (var jau pieslēgties arī ar ssh un katru konfigurēt atsevišķi), var izmantot dhcp iespēju datora nosaukumu paņemt no DHCP servera. Lai tas notiktos, ir jādzēš /etc/hostname fails. Vienīgais trūkums ir tas, ka hosta nosaukumam ļoti vēlams ir jābūt arī /etc/hosts failā, lai datoram pašam sevi nebūtu jāmeklē. Tāpēc lieto skriptu, kas jauno, dhcp hostname ieraksta, gan /etc/hostname gan /etc/hosts failā
Pievienošanās domēnam:
Domēnā tiek izveidots pagaidu konts (expirējas jau rīt), kuram ir tiesības pielikt datorus domēnam, un šis konts tiek pielikts skriptam.
Tātad pēc klonēšanas un pārstartēšanas var laist sekojošo mainīto skriptu:
$komanda -n root@$hst 'hostname
### Uzstadam hostname no DHCP servera
rm /etc/hostname ; dhclient eth0 && echo `hostname` >> /etc/hostname && echo 127.0.1.1 `hostname` >> /etc/hosts && hostname `hostname`
### echo == turpinam ar winbindu =======
/etc/init.d/winbind stop
killall winbindd
rm -vf /var/lib/samba/*
rm -vf /var/lib/samba/winbindd_idmap.tdb
rm -vf /var/cache/samba/winbindd_cache.tdb
### echo == pievienojam ldap administratoru ==
smbpasswd -w VerySecretLDAPPassword
### echo == uzgaidam 3 sekundes un joinojamies domenam ====
sleep 3
net ads join -S ADServer -U KlonesanasTmpUser%LotiSlepenaParole
### echo === uzgaidam veelreiz 3 sekundes un starteejam winbindd ===
/etc/init.d/winbind start
sleep 3
### echo === Te varam pārliecināties, vai winbind strādā ===
wbinfo -t
wbinfo -u | tail -n 1 '
Abonēt:
Ziņas (Atom)