Установка и использование NMON для мониторинга системы

nmon — утилита мониторинга производительности системы.

Установка в Ubuntu или Debian:
sudo apt-get install nmon

Запуск nmon со стандартными параметрами:
sudo nmon

Пример запуска с указанием параметров:
sudo nmon -s 1 -c 100

Команды для вывода справки по nmon:
nmon -? x
nmon -h

Опишу некоторые параметры запуска:
-f (формат вывода таблицы (стандартно -s300 -c288))
-s число (частота обновления (стандартно 2 сек))
-c число (число обновлений (стандартно 1 млн))
-d число (количество отображаемых дисков (стандартно 256))
-t (основные процессы)
-x (планирование мощности)
-g имяфайла (пользовательские группы дисков)
-b (черный и белый (стандартно цветной))

Опишу некоторые функциональные клавиши:
q — выход
c — статистика загрузки процессора
l — статистика загрузки процессора в виде графика
m — информация об оперативной памяти
j — информация о файловой системе
d — статистика использования дисков
n — статистика использования сетевых интерфейсов
V — информация о виртуальной памяти, разделе подкачки
r — информация о ресурсах, версии ядра, процессоре, операционной системе и т.д.
N — информацию о сетевой файловой системе
v — информация о ресурсах в плане безопасности, в процентном соотношении, загрузка дисков/процессора
k — информация о ядре
t — список процессов (. — отображение только работающих в данный момент процессов)
h — больше опций
+ или — служит для изменения частоты обновления данных

Установка tmpwatch и удаление старых файлов

tmpwatch это очень удобная и легкая утилита для удаления старых файлов.

Установка в Linux Ubuntu/Debian:

Скачивание последней версии исходников из https://fedorahosted.org/tmpwatch/wiki/TmpwatchDownloads:

wget https://fedorahosted.org/releases/t/m/tmpwatch/tmpwatch-2.11.tar.bz2

Распаковка:

tar jxf tmpwatch-2.11.tar.bz2

Устанавка:

cd tmpwatch-2.11
./configure
make check
make install

Для CentOS, Fedora:

yum install tmpwatch

Параметры запуска:
-u –atime (время последнего доступа к файлам)
-m –mtime (время создания файлов)
-c –ctime (время изменения индексного дискриптора для файлов)

Опции запуска:
-a, —all (удаление всех файлов, каталогов, символических ссылок)
-d, —nodirs (без удаления каталогов)
-d, —nosymlinks (без удаления символических ссылок)
-f, —force (форсированное удаление файлов)
-q, —quiet (отображение только критических ошибок)
-U, —exclude-user=user (исключение файлов и директорий, принадлежащих указанному по имени или ID пользователю)
-x, —exclude=path (без удаления указанной директории)
-t, —test (режим теста, ничего не удаляется)
-X, —exclude-pattern=pattern (без удаления указанных директорий и файлов и маске)

Пример команд запуска (удаление всех файлов старше 168 часов (7 дней)):

tmpwatch -vv 168 /tmp

Установка и использование Firewall Builder (fwbuilder)

Firewall Builder — утилита позволяющая легко подготовить правила для множества брандмауэров, например iptables, ipfw, acl для HP, Cisco и т.д.

Утилиту можно fwbuilder запускать как под Windows так и Linux, в Linux когда она установлена ее можно запускать из меню или набрав команду fwbuilder.

В Linux Ubuntu fwbuilder можно установить скачав его по ссылке http://sourceforge.net/projects/fwbuilder/files/Current_Packages/ и запустив скачанный файл либо через консоль, например командой:
dpkg -i fwbuilder_5.1.0.3599-ubuntu-precise-1_amd64.deb

Инструкцию по использованию fwbuilder для dd-wrt можно посмотреть на официальном сайте http://www.dd-wrt.com/wiki/index.php/Firewall_Builder

Использование текстового редактора vim

vim — бесплатный мощный текстовый редактор созданный на основе текстового редактора vi.

Читать далее «Использование текстового редактора vim»

Просмотр лог-файлов Linux в реальном времени

Пример команды просмотра лог файла в реальном времени:

tail -f /var/log/syslog

Вывод данных можно подсветить разными цветами, для этого можно установить ccze:

sudo apt-get install ccze

И например сформулировать команду следующим образом:

tail -f /var/log/syslog | ccze --mode ansi

Для прекращения просмотра можно использовать комбинацию клавиш Ctrl+C.

Решение ошибок Samba «Unable to connect to CUPS server» и «failed to retrieve printer list»

Заметил однажды на некоторых серверах ошибки в лог-файле /var/log/samba/log.smbd:

Unable to connect to CUPS server localhost:631 — Connection refused
Unable to connect to CUPS server localhost:631 — Bad file descriptor
failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL

Если расшаривать принтеры не нужно, то в конфигурационном файле /etc/samba/smb.conf можно настроить следующее параметры:

[global]
...
load printers = no
show add printer wizard = no
printing = bsd
printcap name = /dev/null
disable spoolss = yes

Перезапустить smbd чтобы изменения вступили в силу:

sudo restart smbd

После этого ошибка не должна появляться.

Смотрите также мою статью:
Установка и настройка Samba в Linux

Проверка ссылок с помощью LinkChecker

LinkChecker — инструмент проверки сайта на несуществующие ссылки.

Установка в Linux Ubuntu/Debian:

sudo apt-get install linkchecker

Примеры запуска:

linkchecker http://www.example.net
linkchecker --ignore-url=^mailto: mysite.example.org (исключая email адреса)
linkchecker ../index.html (проверка локального файла)
linkchecker www.example.com
linkchecker -r0 ftp.example.org
linkchecker -odot -v www.example.com | dot -Tps > sitemap.ps (создание карты сайта)

Опции запуска можно посмотреть в официальной документации wummel.github.io/linkchecker/man1/linkchecker.1.html
Официальная страница: wummel.github.io/linkchecker/

Установка и настройка Weathermap

Страница загрузки www.network-weathermap.com/download
Скачивание wethermap, например:

wget http://www.network-weathermap.com/files/php-weathermap-0.97c.zip

Распаковка в директорию ../cacti/plugins/weathermap
Для включения редактор необходимо изменить $ENABLED=false; на $ENABLED=true; в файле ../cacti/plugins/weathermap/editor.php
Права файлов:

chown www-data ../cacti/plugins/weathermap/output
chown www-data ../cacti/plugins/weathermap/configs
chmod u+w ../cacti/plugins/weathermap/configs
chmod u+w ../cacti/plugins/weathermap/output

Необходимо изменить $mapdir в ../cacti/plugins/weathermap/editor-config.php
Необходимо открыть в браузере http://домен/cacti/plugins/weathermap/check.php и убедится все ли нормально.
Если необходимо, то установить дополнительную библиотеку:

sudo apt-get install php5-gd

Создание таблицы weathermap в базе cacti:

CREATE TABLE weathermap_maps (
id int(11) NOT NULL auto_increment,
sortorder int(11) NOT NULL default 0,
group_id int(11) NOT NULL default 1,
active set('on','off') NOT NULL default 'on',
configfile text NOT NULL,
imagefile text NOT NULL,
htmlfile text NOT NULL,
titlecache text NOT NULL,
filehash varchar (40) NOT NULL default '',
warncount int(11) NOT NULL default 0,
debug set('on','off','once') NOT NULL default 'off',
runtime double NOT NULL default 0,
lastrun datetime,
config text NOT NULL default '',
thumb_width int(11) NOT NULL default 0,
thumb_height int(11) NOT NULL default 0,
schedule varchar(32) NOT NULL default '*',
archiving set('on','off') NOT NULL default 'off',
PRIMARY KEY (id)
) ENGINE=MyISAM;

CREATE TABLE weathermap_settings (id int(11) NOT NULL auto_increment,
mapid int(11) NOT NULL default '0',
groupid int(11) NOT NULL default '0',
optname varchar(128) NOT NULL default '',
optvalue varchar(128) NOT NULL default '',
PRIMARY KEY (id) ) ENGINE=MyISAM;

CREATE TABLE weathermap_auth (
userid mediumint(9) NOT NULL default '0',
mapid int(11) NOT NULL default '0'
) ENGINE=MyISAM;

CREATE TABLE weathermap_groups (
`id` INT(11) NOT NULL auto_increment,
`name` VARCHAR( 128 ) NOT NULL default '',
`sortorder` INT(11) NOT NULL default 0,
PRIMARY KEY (id)
) ENGINE=MyISAM;

INSERT INTO weathermap_groups (id,name,sortorder) VALUES (1,'Weathermaps',1);

CREATE TABLE IF NOT EXISTS weathermap_data (id int(11) NOT NULL auto_increment,
rrdfile varchar(255) NOT NULL,data_source_name varchar(19) NOT NULL,
last_time int(11) NOT NULL,last_value varchar(255) NOT NULL,
last_calc varchar(255) NOT NULL, sequence int(11) NOT NULL, local_data_id int(11) NOT NULL DEFAULT 0, PRIMARY KEY (id), KEY rrdfile (rrdfile),
KEY local_data_id (local_data_id), KEY data_source_name (data_source_name) ) ENGINE=MyISAM;

Дополнительные SQL для Weathermap:

DROP TABLE IF EXISTS `weathermap_data`;
DROP TABLE IF EXISTS `weathermap_settings`;
DROP TABLE IF EXISTS `weathermap_groups`;
DROP TABLE IF EXISTS `weathermap_auth`;
DROP TABLE IF EXISTS `weathermap_maps`;

DROP TABLE IF EXISTS `weathermap_data`;
CREATE TABLE IF NOT EXISTS weathermap_data (
id int(11) NOT NULL auto_increment,
rrdfile varchar(255) NOT NULL,
data_source_name varchar(19) NOT NULL,
last_time int(11) NOT NULL,
last_value varchar(255) NOT NULL,
last_calc varchar(255) NOT NULL,
sequence int(11) NOT NULL,
local_data_id int(11) NOT NULL DEFAULT 0,
PRIMARY KEY (id),
KEY rrdfile (rrdfile),
KEY local_data_id (local_data_id),
KEY data_source_name (data_source_name)
) ENGINE=MyISAM;

DROP TABLE IF EXISTS `weathermap_settings`;
CREATE TABLE weathermap_settings (
id int(11) NOT NULL auto_increment,
mapid int(11) NOT NULL default '0',
groupid int(11) NOT NULL default '0',
optname varchar(128) NOT NULL default '',
optvalue varchar(128) NOT NULL default '',
PRIMARY KEY (id)
) ENGINE=MyISAM;

DROP TABLE IF EXISTS `weathermap_groups`;
CREATE TABLE weathermap_groups (
`id` INT(11) NOT NULL auto_increment,
`name` VARCHAR( 128 ) NOT NULL default '',
`sortorder` INT(11) NOT NULL default 0,
PRIMARY KEY (id)
) ENGINE=MyISAM;

INSERT INTO weathermap_groups (
id,name,sortorder) VALUES (1,'Weathermaps',1);

DROP TABLE IF EXISTS `weathermap_auth`;
CREATE TABLE weathermap_auth (
userid mediumint(9) NOT NULL default '0',
mapid int(11) NOT NULL default '0'
) ENGINE=MyISAM;

DROP TABLE IF EXISTS `weathermap_maps`;
CREATE TABLE weathermap_maps (
id int(11) NOT NULL auto_increment,
sortorder int(11) NOT NULL default 0,
group_id int(11) NOT NULL default 1,
active set('on','off') NOT NULL default 'on',
configfile text NOT NULL,
imagefile text NOT NULL,
htmlfile text NOT NULL,
titlecache text NOT NULL,
filehash varchar (40) NOT NULL default '',
warncount int(11) NOT NULL default 0,
config text NOT NULL,
thumb_width int(11) NOT NULL default 0,
thumb_height int(11) NOT NULL default 0,
schedule varchar(32) NOT NULL default '*',
archiving set('on','off') NOT NULL default 'off',
PRIMARY KEY (id)
) ENGINE=MyISAM;

Официальная документация www.network-weathermap.com/manual/0.97b/pages/install-cacti-editor.html