Рассмотрим создание двухмерного графика.
Пусть у нас текстовый файл из трех колонок чисел output.dat. В первой и второй колонках - аргументы функции, в третей - ее значение. Визуализируем эти данные. Есть тонкость - колонки "разделены" пустыми строками на блоки, в которых один из аргументов должен иметь постоянное значение. Рассматриваем случай, когда аргументы есть равномерная сетка точек на поверхности.
Заходим из командной оболочки в каталог с этим файлом. Привожу минимальный список команд - пополнять и редактировать можно на любой вкус:
#gnuplot
gnuplot> splot 'output.dat' using 1:2:3 w l
gnuplot> set grid
gnuplot> set contour base
gnuplot> set pm
gnuplot> set cntrparam levels 100
gnuplot> set cntrparam levels discret -100,100,150
gnuplot> set xrange [100: 200]
gnuplot> set yrange [200: 300]
gnuplot> key outside
gnuplot> set key off
Цифры даны для примера.
Вывод можно делать и в файл. Возьмем тип postscript:
gnuplot> set term postscript
gnuplot> set out 'picture.ps'
Вернем вывод на консоль:
gnuplot> set out x11
gnuplot> set term x11
Еще немного полезных команд:
gnuplot> set view map
gnuplot> set surface no
gnuplot> unset surface
Хорошая ссылка по теме на русском языке.
вторник, 15 декабря 2009 г.
пятница, 11 декабря 2009 г.
Использование portdowngrade
Инсталлируем portdowngrade:
#cd /usr/ports/sysutils/portdowngrade
#make DEFAULT_CVS_SERVER=\”:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs\” install clean
Можно выбрать другой сервер, по желанию.
Используем:
#portdowngrade portname
Заметим, что portdowngrade изменяет только порты, а не само программное обеспечение. Поэтому необходимы следующие шаги:
#portsdb -Uu
#portupgrade -f portname
#cd /usr/ports/sysutils/portdowngrade
#make DEFAULT_CVS_SERVER=\”:pserver:anoncvs@anoncvs.at.FreeBSD.org:/home/ncvs\” install clean
Можно выбрать другой сервер, по желанию.
Используем:
#portdowngrade portname
Заметим, что portdowngrade изменяет только порты, а не само программное обеспечение. Поэтому необходимы следующие шаги:
#portsdb -Uu
#portupgrade -f portname
четверг, 3 декабря 2009 г.
Минимальный набор функций OpenGL для освещения сцены
Освещение сцены OpenGL необходимо не только для ее собственно освещения, но без реализации освещения сцена не будет восприниматься как трехмерная. Приведем минимальный набор функций для релизации этой возможности:
1)По умолчанию машина OpenGL находиться в состоянии с выключенным освещением. Включим его:
glEnable(GL_LIGHTING);
2)Но это только "состояние" этой машины. Нужно теперь "включить" источник света. Он может быть не один. На каждый - своя команда:
glEnable(GL_LIGHT0);
3)Кроме просто включить, надо еще установить свойства каждого источника света:
glLightfv(GL_LIGHT0, GL_POSITION, l0_pos);
glLightfv(GL_LIGHT0, GL_DIFFUSE , l0_dif);
Первый параметр указывает источник, второй - свойство, третий - значение свойства. Этих двух параметров достаточно для "минимальной" функциональности.
А вообще параметров целое множество:
а)Параметры GL_SPOT_EXPONENT,GL_SPOT_CUTOFF,GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION и GL_QUADRATIC_ATTENUATION устанавливаются функциями glLightf() и glLighti().
б)Параметры GL_AMBIENT, GL_DIFFUSE, GL_SPECULAR,GL_POSITION, GL_SPOT_CUTOFF, GL_SPOT_DIRECTION, GL_SPOT_EXPONENT,GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION и GL_QUADRATIC_ATTENUATION утанавливаются функциями glLightfv() или glLightiv()
4)Свойства есть не только у света, но и у материала, который освещаеться:
glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE, par_mat);Первый параметр функции определяет сторону материала, для которой задаются свойства, второй задает свойство, третий - его значение.
1)По умолчанию машина OpenGL находиться в состоянии с выключенным освещением. Включим его:
glEnable(GL_LIGHTING);
2)Но это только "состояние" этой машины. Нужно теперь "включить" источник света. Он может быть не один. На каждый - своя команда:
glEnable(GL_LIGHT0);
3)Кроме просто включить, надо еще установить свойства каждого источника света:
glLightfv(GL_LIGHT0, GL_POSITION, l0_pos);
glLightfv(GL_LIGHT0, GL_DIFFUSE , l0_dif);
Первый параметр указывает источник, второй - свойство, третий - значение свойства. Этих двух параметров достаточно для "минимальной" функциональности.
А вообще параметров целое множество:
а)Параметры GL_SPOT_EXPONENT,GL_SPOT_CUTOFF,GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION и GL_QUADRATIC_ATTENUATION устанавливаются функциями glLightf() и glLighti().
б)Параметры GL_AMBIENT, GL_DIFFUSE, GL_SPECULAR,GL_POSITION, GL_SPOT_CUTOFF, GL_SPOT_DIRECTION, GL_SPOT_EXPONENT,GL_CONSTANT_ATTENUATION, GL_LINEAR_ATTENUATION и GL_QUADRATIC_ATTENUATION утанавливаются функциями glLightfv() или glLightiv()
4)Свойства есть не только у света, но и у материала, который освещаеться:
glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE, par_mat);Первый параметр функции определяет сторону материала, для которой задаются свойства, второй задает свойство, третий - его значение.
среда, 25 ноября 2009 г.
top of monitoring tools for SysAdmin
Taked from http://www.cyberciti.biz/tips/top-linux-monitoring-tools.html
1)vmstat - System Activity, Hardware and System Information
2)free - Memory Usage
3)iostat - Average CPU Load, Disk Activity
4)sar - Collect and Report System Activity
5)mpstat - Multiprocessor Usage
6)pmap - Process Memory Usage
7)netstat - Network Statistics
8)ss - Network Statistics too
9)iptraf - Real-time Network Statistics
10)/Proc file system - Various Kernel Statistics
# cat /proc/cpuinfo
# cat /proc/meminfo
# cat /proc/zoneinfo
# cat /proc/mounts
11)Nagios - Server And Network Monitoring
12)Cacti - Web-based Monitoring Tool
13)Gnome System Monitor - Real-time Systems Reporting and Graphing
14)lsof - list open files, network connections and much more
15)ntop web based tool - ntop is the best tool to see network usage in a way similar to what top command does for processes
16)vnstat - vnStat is a console-based network traffic monitor
17)htop - htop is an enhanced version of top
18)mtr - mtr combines the functionality of the traceroute and ping programs in a single network diagnostic tool
1)vmstat - System Activity, Hardware and System Information
2)free - Memory Usage
3)iostat - Average CPU Load, Disk Activity
4)sar - Collect and Report System Activity
5)mpstat - Multiprocessor Usage
6)pmap - Process Memory Usage
7)netstat - Network Statistics
8)ss - Network Statistics too
9)iptraf - Real-time Network Statistics
10)/Proc file system - Various Kernel Statistics
# cat /proc/cpuinfo
# cat /proc/meminfo
# cat /proc/zoneinfo
# cat /proc/mounts
11)Nagios - Server And Network Monitoring
12)Cacti - Web-based Monitoring Tool
13)Gnome System Monitor - Real-time Systems Reporting and Graphing
14)lsof - list open files, network connections and much more
15)ntop web based tool - ntop is the best tool to see network usage in a way similar to what top command does for processes
16)vnstat - vnStat is a console-based network traffic monitor
17)htop - htop is an enhanced version of top
18)mtr - mtr combines the functionality of the traceroute and ping programs in a single network diagnostic tool
среда, 11 ноября 2009 г.
Инсталляция и использование DCC клиента на FreeBSD
DCC можно использовать в виде клиента или в виде сервера. Для того чтобы использовать серверный вариант необходимо получить server-ID. Получить его можно (следуя инструкции по инсталляции) через соответствующую веб-форму на сайте производителя. Чтобы вас рассматривали как успешного кандидата на получение этого идентификационного кода, вам необходимо иметь почтовый "оборот" не менее 100 тысяч писем в день и 4 гигабайта оперативной памяти для процесса сервера DCC. Поэтому далее обсуждать будем только "клиентский" вариант.
Рассмотрим случай, когда роль почтового сервера играет sendmail. Взаимодействие с DCC осуществляется через механизм мильтеров.
#uname -prs
FreeBSD 7.0-RELEASE i386
# cd /usr/ports
# make search name=dcc
...
Port: dcc-dccd-1.3.115
Path: /usr/ports/mail/dcc-dccd
Info: Distributed Checksum Clearinghouse bulk email detector
Maint: cgreen@sentex.net
B-deps:
R-deps:
WWW: http://www.rhyolite.com/dcc/
...
#cd mail/dcc-dccd
#make install
Делаем без clean, так как нам понадобиться директория work
Правим фаерволл (я использую pf):
#vim /etc/pf.conf
pass out on fxp0 proto udp from fxp0 to any port { 6276 6277 }
pass in on fxp0 proto udp from any port {6276 6277 } to fxp0
Правим
#vim /var/dcc/dcc_conf
DCCM_ENABLE=on
# vim /etc/rc.conf
dccm_enable="YES"
# cd mail/dcc-dccd/work/dcc-1.3.115/
# ./configure
В директории mail/dcc-dccd/work/dcc-1.3.115/misc/ появится файл dcc.m4. Скопируем его в /usr/local/share/sendmail/cf/feature/.
Далее - комментируем в нем всю часть, относящуюся к LOCAL_RULESETS. И добавляем в конфигурационный mc файл, находящийся в /etc/mail:
FEATURE(`dcc')dnl
Добавляем в том же файле "dcc" в строчку перечисления используемых мильтеров (если это единственный мильтер, который мы используем, то слово dcc будет одно):
define(`confINPUT_MAIL_FILTERS', `milter1,milter2,...,dcc')
#vim /var/dcc/whiteclnt
mx ip xxx.xxx.xxx.xxx адрес вашего почтовика
ok env_to postmaster административные почтовые адреса
ok env_to root@xxx.xxx.xxx.xxx
ok ip 10.10.0.0/16 ваша локальная сеть
Стартуем мильтер и рестартуем почтовый сервер:
# /usr/local/etc/rc.d/dccm start
# /usr/local/etc/rc.d/sendmail.sh stop start
#ps ax|grep dcc
...
47063 ?? Is 0:00.00 /usr/local/dcc/libexec/dccm -Idcc -tREP,20 -tCMN,5, -wwhiteclnt -llog -Uuserdirs -SHELO -Smail_host -SSender -SList-ID
47065 ?? S 0:00.20 /usr/local/dcc/libexec/dccm -Idcc -tREP,20 -tCMN,5, -wwhiteclnt -llog -Uuserdirs -SHELO -Smail_host -SSender -SList-ID
...
Полезными будут следующие ссылки:
http://linux.die.net/man/8/dcc
http://www.rhyolite.com/dcc/INSTALL.html#configure-dccproc
http://kocmuk.ru/2008/12/27/dcc-distributed-checksum-clearinghouse/
Рассмотрим случай, когда роль почтового сервера играет sendmail. Взаимодействие с DCC осуществляется через механизм мильтеров.
#uname -prs
FreeBSD 7.0-RELEASE i386
# cd /usr/ports
# make search name=dcc
...
Port: dcc-dccd-1.3.115
Path: /usr/ports/mail/dcc-dccd
Info: Distributed Checksum Clearinghouse bulk email detector
Maint: cgreen@sentex.net
B-deps:
R-deps:
WWW: http://www.rhyolite.com/dcc/
...
#cd mail/dcc-dccd
#make install
Делаем без clean, так как нам понадобиться директория work
Правим фаерволл (я использую pf):
#vim /etc/pf.conf
pass out on fxp0 proto udp from fxp0 to any port { 6276 6277 }
pass in on fxp0 proto udp from any port {6276 6277 } to fxp0
Правим
#vim /var/dcc/dcc_conf
DCCM_ENABLE=on
# vim /etc/rc.conf
dccm_enable="YES"
# cd mail/dcc-dccd/work/dcc-1.3.115/
# ./configure
В директории mail/dcc-dccd/work/dcc-1.3.115/misc/ появится файл dcc.m4. Скопируем его в /usr/local/share/sendmail/cf/feature/.
Далее - комментируем в нем всю часть, относящуюся к LOCAL_RULESETS. И добавляем в конфигурационный mc файл, находящийся в /etc/mail:
FEATURE(`dcc')dnl
Добавляем в том же файле "dcc" в строчку перечисления используемых мильтеров (если это единственный мильтер, который мы используем, то слово dcc будет одно):
define(`confINPUT_MAIL_FILTERS', `milter1,milter2,...,dcc')
#vim /var/dcc/whiteclnt
mx ip xxx.xxx.xxx.xxx адрес вашего почтовика
ok env_to postmaster административные почтовые адреса
ok env_to root@xxx.xxx.xxx.xxx
ok ip 10.10.0.0/16 ваша локальная сеть
Стартуем мильтер и рестартуем почтовый сервер:
# /usr/local/etc/rc.d/dccm start
# /usr/local/etc/rc.d/sendmail.sh stop start
#ps ax|grep dcc
...
47063 ?? Is 0:00.00 /usr/local/dcc/libexec/dccm -Idcc -tREP,20 -tCMN,5, -wwhiteclnt -llog -Uuserdirs -SHELO -Smail_host -SSender -SList-ID
47065 ?? S 0:00.20 /usr/local/dcc/libexec/dccm -Idcc -tREP,20 -tCMN,5, -wwhiteclnt -llog -Uuserdirs -SHELO -Smail_host -SSender -SList-ID
...
Полезными будут следующие ссылки:
http://linux.die.net/man/8/dcc
http://www.rhyolite.com/dcc/INSTALL.html#configure-dccproc
http://kocmuk.ru/2008/12/27/dcc-distributed-checksum-clearinghouse/
Подписаться на:
Сообщения (Atom)