network disk clone
2010-03-22 12:19:51 UTC by maris in Linux, Quick Tips,ssh host "dd if=/dev/sda3 bs=4096" > sda3.img
bandwidth save:
ssh host "dd if=/dev/sda3 bs=4096 | gzip" | gunzip > sda3.img
with progressbar:
ssh host "dd if=/dev/sda3 bs=4096 | gzip" | gunzip | pv -c > sda3.img
/etc menedžments ar subversion (svn)
2009-09-11 09:07:25 UTC by maris in Linux, gentoo, Quick Tips,Kas ir subversion visi zina :)
Tā pielietojumu atradu arī /etc menedžēšanai, šad tad gribas redzēt kas kādam konfigam ko ir mainījis, un šad tad ir nepieciešams uztaisīt kādu izmaiņu rollback.
Tiek izveidota repozitorija struktūra
mkdir svnprep
mkdir -p {branches,logs,trunk}
svn import -m 'Initial import' svn://mansSVNservers/repozitorijs
cd ../
rm -rf svnprep
Tiek uztaisīta lokāla darba kopija
svn co svn://mansSVNservers/repozitorijs/trunk /Configs
cd /Configs
Struktūra ir apmēram šāda:
svn:
->branches
->logs
->trunk:
--->all (konfigi kopēji visiem serveriem)
--->$(hostname) (katra hosta individuālie konfigi)
tālāk visi konfigi, kas ir vienādi visiem serveriem tiek pārnesti zem /Configs/all/etc/ un izveidots simlinks.
mv /etc/make.conf /Configs/all/etc/
ln -s /Configs/all/etc/make.conf /etc/
konfigi, kas ir unikāli hostam tiek ienesti iekš /Configs/HOSTNAME
tad jaunie faili tiek pievienoti pie svn un uztaisīts komits.
pēc komita nostrādā post-commit hook, kas caur ssh uz katra servera izpilda 'svn update'.
post-commit hooks
#!/bin/sh
hosts=`ls /Configs`
for h in $hosts
do
ssh root@${h} "cd /Configs; svn update"
done
tādējādi izdarot izmaiņas uz viena hosta updeitojas visi hosti.
Vienīgais priekšnoteikums ir tāds, ka autorizācija uz serveriem notiek ar ssh atslēgām bez paroles.
Kā atjaunot formatētu partīciju?
2009-02-16 15:59:40 UTC by maris in Linux, Quick Tips,Sanāca tā, ka ārējais USB-HDD bija uz reiserfs v3 un kļudas pēc tika noformatēts uz FAT. Datus zaudēt neviens nevēlējās :) Par laimi šis disks bija reisersfs formatēts pirms pārformatēšanas uz FAT. Tādēļ atjaunošanas procedūra bija visai vienkārša.
Tika uztaisīts reiserfs superbloks:
reiserfsck --rebuild-sb /dev/sdb1
Un pēc tā sekoja reisera rebuild tree:
reiserfsck --rebuild-tree --scan-whole-partition /dev/sdb1
Tad visādam gadījumam partīcija tika pārbaudīta:
reiserfsck --check /dev/sdb1
pēc partīcijas piemontēšanas visi dati bija dzīvi, atskaitot pāris failus, kas tika iekš lost+found.
P.S. ieteikums: pāris reizes pārbaudi ko formatē pirms formatēšanas :).
MySQL toogle.
2009-02-16 15:48:23 UTC by maris in MySQL, Quick Tips,Šad tad vajag ātri notūglēt (toogle) kādu boolean vērtību.
īsumā: updeitojam uz 1 ja ir 0 un, ja nav 0 tad uz 0.
UPDATE tabula set kolonna=(IF(kolonna='0','1','0')) where cita_kolonna=kautkas;
Kā iekš postfix redirektēt mailu no viena domēna uz citu?
2009-02-16 15:42:54 UTC by maris in Linux, Quick Tips,Situācija: postfix ar vhostiem. uz domēna firma.lv ir mailboxi, tad firma pierego vēl vienu domēnu uber-firma.lv un vēlas, lai maili adresētie uz uber-firma.lv tiktu piegādāti attiecīgajam lietotājam iekš firma.lv.
Nelasot dokumentāciju, nolēmu veikt eksperimentu ar aliasēm:
/(.+)@uber-firma\.lv$/ $1@firma.lv
Ir ari cits variants - katram lietotājam atsevišķi taisīt aliases, bet šis variants šķiet ātrāks un tīrāks :)