Архив

Архив раздела ‘Работа’

cu on linux

apt-get install uucp

vovan Работа

drop_caches

22 Апрель 2010

Writing to this will cause the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free.

To free pagecache:

* echo 1 > /proc/sys/vm/drop_caches

To free dentries and inodes:

* echo 2 > /proc/sys/vm/drop_caches

To free pagecache, dentries and inodes:

* echo 3 > /proc/sys/vm/drop_caches

As this is a non-destructive operation, and dirty objects are not freeable, the user should run «sync» first in order to make sure all cached objects are freed.

This tunable was added in 2.6.16.

vovan Работа , ,

rsync

20 Апрель 2010

копируем затем удаляем

rsync -a --backup --backup-dir=/home/vovan/bcrs --stats --progress --remove-source-files -z --filter='+ */' --filter='+ *.bz2' --filter='+ *.gz' --filter='- *' ./SHAPER/ vovan@backup:/home/vovan/SHAPER/

vovan Работа ,

Блокировка UTp FreeBSD

26 Февраль 2010

kldload ng_ipfw
ngctl shutdown utp_filter:
ngctl mkpeer ipfw: bpf 2 main
ngctl name ipfw:2 utp_filter
ngctl msg utp_filter: setprogram { thisHook=\»main\» ifMatch=\»\» ifNotMatch=\»main\» bpf_prog_len=9 bpf_prog=[ { code=48 jt=0 jf=0 k=0 } { code=84 jt=0 jf=0 k=240 } { code=21 jt=0 jf=5 k=64 } { code=32 jt=0 jf=0 k=40 } { code=21 jt=0 jf=3 k=2147483647 } { code=48 jt=0 jf=0 k=44 } { code=21 jt=0 jf=1 k=171 } { code=6 jt=0 jf=0 k=65535 } { code=6 jt=0 jf=0 k=0 } ] }

ipfw add 100 netgraph 2 udp from any to any via em0 iplen 0-128

Статистика

ngctl msg utp_filter: getprogram \»main\»
ngctl msg utp_filter: getstats \»main\»
ipfw show

tcpdump -i em1 -n -c 100 -v ‘ip[40:4]=0×7FFFFFFF and ip[44:1]=0xAB and udp’

попробовать http://citrin.ru/freebsd:ng_ipfw_ng_bpf

vovan Работа , ,

чистим кеш в powerdns_recursor

17 Февраль 2010

rec_control wipe-cache powerdns.org

vovan Работа

htb sfq

16 Февраль 2010

Конфигурация практически идентична вышеприведенному примеру:

# tc qdisc add dev eth0 root handle 1: htb default 30

# tc class add dev eth0 parent 1: classid 1:1 htb rate 6mbit burst 15k

# tc class add dev eth0 parent 1:1 classid 1:10 htb rate 5mbit burst 15k
# tc class add dev eth0 parent 1:1 classid 1:20 htb rate 3mbit ceil 6mbit burst 15k
# tc class add dev eth0 parent 1:1 classid 1:30 htb rate 1kbit ceil 6mbit burst 15k

Автор рекомендует устанавливать дисциплину SFQ для этих классов:

# tc qdisc add dev eth0 parent 1:10 handle 10: sfq perturb 10
# tc qdisc add dev eth0 parent 1:20 handle 20: sfq perturb 10
# tc qdisc add dev eth0 parent 1:30 handle 30: sfq perturb 10

Добавим фильтры, которые будут выполнять классификацию трафика:

# U32="tc filter add dev eth0 protocol ip parent 1:0 prio 1 u32"
# $U32 match ip dport 80 0xffff flowid 1:10
# $U32 match ip sport 25 0xffff flowid 1:20

В результате получаем ясную и понятную конфигурацию — никаких малопонятных чисел, никаких недокументированных параметров.

В HTB все выглядит достаточно прозрачно — классы 10: и 20: имеют гарантированную пропускную способность, при наличии свободной части пропускной способности они заимствуют ее в отношении 5:3.

Неклассифицированый трафик будет отнесен к классу 30:, который имет достаточно небольшую ширину, но может заимствовать незанятую часть канала.

64 порта
ending is 2^16=65536
mask is (2^16)-64=65472 -> convert to hex -> FFC0
32 порта
mask is (2^16)-32=65504 > convert to hex -> FFE0

маски портов

vovan Работа ,

exim чистка очереди

10 Февраль 2010

exiqgrep -r ‘domain.ru$’ -i | xargs exim -C /etc/exim4/exim4-delayed.conf -Mrm

vovan Работа ,

ddns and ping

2 Февраль 2010

есть 2 ip. если один из них недоступен надо обновить A запись в DNS

генерим ключи для nsupdate

dnssec-keygen -a HMAC-MD5 -b 128 -r /dev/urandom -n USER NSUPDATE

получаем 2 файлика

Knsupdate.+157+13990.key  Knsupdate.+157+13990.private

на основе Knsupdate.+157+13990.private делаем запись в named.conf

key NSUPDATE {
algorithm HMAC-MD5.SIG-ALG.REG.INT;
secret SCtSlSUwGYN3SdbUQgHJdQ==;
};
 
zone "dyn.net" {
 type master;
 allow-update { key "NSUPDATE"; };
 file "master/dyn.net";
};

а Knsupdate.+157+13990.key используем в скрипте

#!/bin/sh
 
curr=$(dig +short server.dyn.net @192.168.133.30)
#echo $curr
#exit
dt=`/bin/date +'%Y-%m-%d %H:%M:%S'`
prime=$(dig +short server1.stat.net @192.168.133.30)
second=$(dig +short server2.stat.net @192.168.133.30)
 
res=$(ping -c 2 $prime)
 
if [[ $? -ne 0 ]]
then
 if [ "$curr" = "$prime" ]
 then
 echo "$dt  ERROR! $prime not responding change to $second" >> /var/log/dynsip.log
 echo "server 192.168.133.30" > /var/tmp/nsupdate
 echo "zone dyn.net" >> /var/tmp/nsupdate
 echo "update delete server.dyn.net IN A" >> /var/tmp/nsupdate
 echo "update add server.dyn.net     60      IN      A   $second" >> /var/tmp/nsupdate
 echo "send" >> /var/tmp/nsupdate
 /usr/bin/nsupdate -k /home/manov/Knsupdate.+157+13990.key  /var/tmp/nsupdate
 fi
else
 if [ "$curr" != "$prime" ]
 then
 echo "$dt OK! $prime is alive" >> /var/log/dynsip.log
 echo "server 192.168.133.30" > /var/tmp/nsupdate
 echo "zone dyn.net" >> /var/tmp/nsupdate
 echo "update delete server.dyn.net IN A" >> /var/tmp/nsupdate
 echo "update add server.dyn.net     60      IN      A   $prime" >> /var/tmp/nsupdate
 echo "send" >> /var/tmp/nsupdate
 /usr/bin/nsupdate -k /home/manov/Knsupdate.+157+13990.key  /var/tmp/nsupdate
 fi
fi

vovan Работа ,

полезные комманды *NIX

29 Январь 2010

поиск в файлах c именем ‘28-01-2010*gz’ строки 21:21
find /var/log/ -name "28-01-2010.log*" -exec zgrep -e 21:21 {} \;|more

vovan Работа , ,

Writing FreeBSD memstick.img to a USB drive in Windows

28 Январь 2010

Потребуется dd for windows

и например 8.0-RELEASE-i386-memstick.img

C:\>dd --list
rawwrite dd for windows version 0.5.
Written by John Newbigin 
This program is covered by the GPL.  See copying.txt for details
Win32 Available Volume Information
\\.\Volume{585d8fd2-9ba8-11de-b573-806d6172696f}\
  link to \\?\Device\HarddiskVolume1
  fixed media
  Mounted on \\.\c:

\\.\Volume{5839172e-a1d4-11de-b580-0018f30bfe6d}\
  link to \\?\Device\HarddiskVolume4
  fixed media
  Mounted on \\.\d:

\\.\Volume{efe0fa36-c9e7-11de-b587-005056c00008}\
  link to \\?\Device\Harddisk1\DP(1)0-0+1c
  removeable media
  Mounted on \\.\f:

NT Block Device Objects
\\?\Device\Harddisk0\Partition0
  link to \\?\Device\Harddisk0\DR0
  Fixed hard disk media. Block size = 512
  size is 160041885696 bytes
\\?\Device\Harddisk0\Partition1
  link to \\?\Device\HarddiskVolume1
\\?\Device\Harddisk0\Partition2
  link to \\?\Device\HarddiskVolume2
  Fixed hard disk media. Block size = 512
  size is 1587479040 bytes
\\?\Device\Harddisk0\Partition3
  link to \\?\Device\HarddiskVolume3
  Fixed hard disk media. Block size = 512
  size is 85049395200 bytes
\\?\Device\Harddisk0\Partition4
  link to \\?\Device\HarddiskVolume4
\\?\Device\Harddisk1\Partition0
  link to \\?\Device\Harddisk1\DR27
  Removable media other than floppy. Block size = 512
  size is 2004353024 bytes
\\?\Device\Harddisk1\Partition1
  link to \\?\Device\Harddisk1\DP(1)0-0+1c
  Removable media other than floppy. Block size = 512
  size is 2004320768 bytes

Virtual input devices
 /dev/zero   (null data)
 /dev/random (pseudo-random data)
 -           (standard input)

Virtual output devices
 -           (standard output)

\\?\Device\Harddisk1\Partition0 – наша флешака

копируем образ

C:\>C:\>dd if=8.0-RELEASE-i386-memstick.img of=\\?\Device\Harddisk1\Partition0 bs=10240 --progress
rawwrite dd for windows version 0.5.
Written by John Newbigin 
This program is covered by the GPL.  See copying.txt for details
923,207,680
90157+0 records in
90157+0 records out

Готово =)

vovan Работа ,