LINUX.ORG.RU

Сообщения sunny1983

 

Как получить значение трафика в системе мониторинга по snmp с входным параметром?

Форум — Admin

Пытаюсь разобраться как опрашивать устройства по snmp. Использую инструменты snmpget и snmpwalk из linux-пакета snmp. Вот допустим мне нужно получить трафик на порту PON-коммутатора, порт идентифицируется по MAC-адресу на порту устройства. snmpwalk выдаёт значение указанного и всех последующих OID. Команда:

snmpwalk -v 2c -c ###### 10.*.*.* ELTEX-LTE8ST::lte8stONTStatReceive
выдаст простыню из всех MACов и всех значений трафика. Я могу использовать параметр -On, чтобы представить параметр не в виде текстовой строки, а в виде OID и грепнуть вывод по MAC-адресу, чтобы вычислить OID для моего MAC, также я сравниваю первые строки вывода:
$ snmpwalk -On -v 2c -c ###### 10.*.*.* ELTEX-LTE8ST::lte8stONTStatReceivePONMac | grep 2:0:5e:4:39:64
.1.3.6.1.4.1.35265.1.21.7.1.1.1.1.6.2.0.94.4.57.100 = STRING: 2:0:5e:4:39:64
$ snmpwalk -On -v 2c -c ###### 10.*.*.* ELTEX-LTE8ST::lte8stONTStatReceivePONMac | head -n 1
.1.3.6.1.4.1.35265.1.21.7.1.1.1.1.6.2.0.34.0.34.196 = STRING: 2:0:22:0:22:c4
$ snmpwalk -On -v 2c -c ###### 10.*.*.* ELTEX-LTE8ST::lte8stONTStatReceivePONBytes | head -n 1
.1.3.6.1.4.1.35265.1.21.7.1.1.1.2.6.2.0.34.0.34.196 = Counter64: 26391219106629
Аналитическим путём определяю какую цифру нужно поменять, чтобы получить OID, который выдаст трафик на порту с MAC 2:0:22:0:22:c4 и скармливаю этот OID snmpget:
$ snmpget -Oqv -v 2c -c ###### 10.*.*.* .1.3.6.1.4.1.35265.1.21.7.1.1.1.2.6.2.0.94.4.57.100
20441240270200
Теперь задача как автоматизировать эту аналитику, чтобы можно было получать значение трафика, вводя MAC в качестве входного параметра, но интересует не просто скрипт, нужен xml-файл для системы мониторинга cacti.

 , ,

sunny1983
()

Снять снимок procfs

Форум — Admin

Что произойдёт, если заархивировать каталог /proc например с целью сравнить его с текущей версией /proc спустя какое-то время и безопасно ли это для системы? Может быть для снятия снимков /proc какие-то специальные инструменты есть?

 

sunny1983
()

Закрыть файлы lsof

Форум — Admin

Такой вопрос. Можно ли закрыть некоторые файлы, которые отображает lsof, не останавливая процесс, который их открыл, и как это сделать?

 

sunny1983
()

Прописать запуск скрипта через ExecStartPost

Форум — Admin

Есть некий сервис, который запускается из systemd-юнита /lib/systemd/system/coolservice.service
Нужно сделать так, чтобы сразу после запуска юнита выполнялся скрипт, запуск скрипта прописать можно в юните в опции ExecStartPost, подскажите как это сделать, не меняя текст юнита, куда-то в /etc/systemd/system это небось запендюрить надо?

 

sunny1983
()

выполнение bash-скрипта на удалённом сервере по ssh

Форум — Admin

Хочу в bash-скрипте реализовать выполнение bash-скрипта на удалённом сервере по ssh, при этом текст удалённого скрипта должен быть встроен в текст вызывающего скрипта на локальном компьютере.
Сделал так: скрипт выводит данные о потреблении памяти процессом httpd на удалённом сервере:

#!/bin/bash

ssh -i /home/iskatel/id_rsa iskatel@172.17.17.1 <<'ENDSSH'
   cat /proc/$(cat /run/httpd/httpd.pid)/status | grep VmSize | awk '{print $1 $2*1024}'
   cat /proc/$(cat /run/httpd/httpd.pid)/status | grep VmRSS | awk '{print $1 $2*1024}'
ENDSSH

Подскажите, что неправильно в этом скрипте. Так то скрипт данные из /proc на удалённом сервере выводит, но он при этом на удалённом сервере bash запускается как login shell.

 

sunny1983
()

Свободная и занятая память в Linux

Форум — General

Уже был этот вопрос, но спрошу ещё раз, потому что хоть убейте не понимаю:

Как цифры из /proc/meminfo преобразуются в цифры, которые выдаёт команда «free -k»

 

sunny1983
()

команды в cygwin не работают

Форум — General

Вопрос не совсем по линуксу, а по cygwin, кто пользуется этим эмулятором, подскажите, у меня при вводе некоторых команд ничего не происходит, просто возвращает в командную строку, примеры команд:
cygcheck -l
cygcheck -V
telnet

Существуют ли другие эмуляторы командной строки линукс для винды, кроме cygwin? Нужно чтобы были: bash, sed, awk, grep, ssh, telnet, whois, dig, curl, может ещё какие мелочи, можно было писать однострочники и чтобы работа с буфером обмена нормальная, а не уродская как в PuTTY.

 ,

sunny1983
()

Добавить ExecStartPre в существующий systemd-юнит

Форум — Admin

Задача такая. Есть сервер mariadb, в конфигурации которого я изменил путь к файлу unix-сокета, теперь это /run/mysqld/mysqld.sock Однако каталог run очищается при перезагрузке системы, поэтому запуск mariadb будет фейлиться. Нужно сделать так, чтобы перед запуском mariadb создавался каталог /run/mysqld, я хотел решить задачу правкой юнита mariadb.service, содержимое юнита такое:

[Unit]
Description=MariaDB 10.3 database server
Documentation=man:mysqld(8)
Documentation=https://mariadb.com/kb/en/library/systemd/
After=network.target

[Install]
WantedBy=multi-user.target
Alias=mysql.service
Alias=mysqld.service

[Service]
Type=notify
User=mysql
Group=mysql
ExecStartPre=/usr/libexec/mysql-check-socket
ExecStartPre=/usr/libexec/mysql-prepare-db-dir %n
ExecStart=/usr/libexec/mysqld --basedir=/usr $MYSQLD_OPTS $_WSREP_NEW_CLUSTER
ExecStartPost=/usr/libexec/mysql-check-upgrade
PrivateNetwork=false
KillMode=process
KillSignal=SIGTERM
SendSIGKILL=no
Restart=on-abort
RestartSec=5s
UMask=007
TimeoutSec=300
PrivateTmp=True
Мне стало быть надо добавить параметр ExecStartPre, содержащий команду по созданию каталога. Я правильно понимаю, что для этого я создаю файл /etc/systemd/system/mariadb.service.d/params.conf с секцией [Service], содержащие параметры, которые должны перекрыть параметры оригинального /usr/lib/systemd/system/mariadb.service никак правда не соображу, что в него вписать нужно.

 

sunny1983
()

Как правильно пробрасывать unix-сокеты в docker?

Форум — Admin

Как правильно пробрасывать unix-сокеты в docker?
Допустим мне нужно, чтобы из docker-контейнера были возможны обращения к базе данных mysql через unix-сокет /run/mysqld/mysqld.sock Я запускаю контейнер командой:

docker run --mount type=bind,src=/run/mysql,dst=/run/mysql -it 660f41442a27 /bin/bash
И... не хватает прав для обращения к сокету из контейнера...

 ,

sunny1983
()

Принципы работы брандмауэра у нас и у них

Форум — General

Я сейчас собираюсь задать вопрос, который на ЛОРе запрещён, потому что он про винду. Но не спешите удалять тред либо злостно посылать на винфак, я там уже был и могу сказать, что большинство пользователей винды не знают эту систему настолько глубоко, поэтому проще спросить на форуме, где сидят люди с намёком на профессионализм.

Короче вопрос, чем отличаются брандмауэры Linux и Windows, а именно брандмауэр Windows он какой? Вот архитектурное устройство Windows сродни линуксовому, то же все процессы делятся на процессы ядра и процессы пространства пользователей, и если для Linux брандмауэр это - работающий на уровне ядра netfilter с дополнительными модулями типа conntrack плюс утилита пространства пользователей iptables для редактирования правил, то для Windows имеется целый зоопарк программ, начиная от стандартного Windows Firewall, заканчивая множеством «внешних» программ типа: Outpost Firewall, Comodo Internet Security и прочих. Собственно первый вопрос, брандмауэры Windows они где именно работают: в ядре или в пространстве пользователей, и может ли в системе Windows работать более одного брандмауэра (во всяком случае службы встроенного брандмауэра и COMODO одновременно точно работают)? Второй вопрос, чем именно две операционные системы архитектурно отличаются, из-за чего у них разный подход к написанию правил брандмауэра: в Linux - фильтрация по портам, в Windows - по приложениям, в Linux чисто теоретически возможно сделать фильтрацию по приложениям при помощи selunux, однако нет ни одного рабочего решения с такой реализацией, где бы она работала из коробки, в Windows тоже возможно не всё, нет, например, всех возможностей правил аналогичных правилам iptables цепочек PREROUTING и POSTROUTING причём даже в серверных версиях Windows.

 брандмауэр

sunny1983
()

Сборка модуля ядра

Форум — Admin

Возник один вопрос, зачем при сборке модулей ядра нужна команда:

make prepare modules_prepare
Пытаюсь собрать ipt_netflow, там в README есть следующий пункт:

( читать дальше... )

У меня как раз CentOS. Что эта команда делает? Я правильно понимаю, что она подготавливает заголовки и либы, которые необходимы gcc для компиляции? Но после я уйду из каталога исходников ядра и перейду в каталог исходников собираемого модуля, как тогда gcc будет знать где эти заголовки и либы лежат? И опять же вопрос, каталог исходников ядра это какой, не /usr/src/kernels/3.10.0-1160.2.2.el7.x86_64 сказано же, что в этом каталоге запускать команду не следует. Исходники ядра я могу получить командами:

yumdownloader --source kernel-3.10.0-1160.el7
rpm -i kernel-3.10.0-1160.el7.src.rpm
rpmbuild -bp rpmbuild/SPECS/kernel.spec
в этом случае исходники распакуются в ~rpmbuild/BUILD/kernel-3.10.0-1160.el7/linux-3.10.0-1160.el7.x86_64 Вобщем как делать правильно, чтобы собралось?

 , ,

sunny1983
()

Ищу годное решение для снятие статистики httpd

Форум — Admin

Задавал уже этот вопрос чуть более месяца назад, но ответа так и не получил, попытка номер 2.

Ищу годное решение для снятие статистики httpd, чтобы можно было из неё получать данные для конкретного сайта: число хитов, объём трафика, IP-адреса посетителей с анализом по подсетям и странам, статистика по User-Agent, вычисление времени пребывания пользователя на сайте, возможность строить графики и диаграммы, также нужна возможность отображать нагрузку на сайт в реальном времени либо смотреть нагрузку в момент времени t.

Из того что нагуглил, только mod_performance, awstats, webalizer и им подобные, мне такое не подходит по той причине, что эти программы в момент запроса к ним берут данные из access_log, если у меня настроен logrotate, который периодически обнуляет access_log, то и статистика тоже будет обнуляться, нужна программа, которая в момент запроса берёт данные не из access_log, а из собственной бд.

 , ,

sunny1983
()

awstats и logrotate

Форум — Admin

Подскажите хорошее решение для снятия статистики сайта, работающего на apache. Использовался mod_performance, но у него есть минус - он строит статистику из access_log, а последний у меня ежесуточно перезаписывается logrotate, соответственно статистика при этом обнуляется. Сейчас читаю про awstats, но у него вроде тоже такой же принцип. Хорошо бы решение. которое не просто будет читать access_log, но и сохранять данные из него где-нибудь у себя либо в бд.

 ,

sunny1983
()

efi-загрузчик syslinux

Форум — General

Кто-нибудь пробовал заменить загрузчик grub на syslinux на efi-системе. У меня не выходит, такое впечатление, что сам efi-загрузчик - битый.
Делаю по инструкции https://wiki.syslinux.org/wiki/index.php?title=Install#UEFI: Копирую файлы efi-загрузчика в efi-раздел:

cp /usr/share/syslinux/efi64/syslinux.efi /boot/efi/EFI/syslinux
cp /usr/share/syslinux/efi64/ldlinux.e64 /boot/efi/EFI/syslinux
Создаю конфиг /boot/efi/EFI/syslinux/syslinux.cfg
Затем добавляю пункт загрузки efibootmgr:
efibootmgr -c -d /dev/sda -p 1 -L syslinux -l "\EFI\syslinux\syslinux.efi"
Проверяю как добавилось:
efibootmgr -v
BootCurrent: 0001
BootOrder: 0000,0001
Boot0000* syslinux	HD(1,GPT,7f931161-1f14-4440-85be-a838222aaaa4,0x800,0x64000)/File(\EFI\syslinux\syslinux.efi)
Boot0001* grub	HD(1,GPT,7f931161-1f14-4440-85be-a838222aaaa4,0x800,0x64000)/File(\EFI\fedora\grubx64.efi)
Перезагружаюсь и нифига

 , , , syslinux.efi,

sunny1983
()

Смонтировать раздел диска с GPT-разметкой

Форум — Admin

Нужно извлечь файлы с харда сгоревшего компа, на харде таблица GPT, всего 4 раздела: EFI, swap, ext4 и ещё один ext4, только этих разделов не видно, fdisk -l показывает:

/dev/sdb1 ee GPT
Почему-то когда я с флешки грузился на том компе, все разделы нормально виделись, вставил в другой комп, и тут это. Какой тут секрет нужно знать, чтобы увидеть и смонтировать ext4-раздел?

 , , ,

sunny1983
()

Огромный CPU usage у виртуальной машины

Форум — Admin

Есть проблема с виртуальной машиной QEMU-KVM, в последнее время CPU USAGE процесса qemu-system-x86_64 стала время от времени увеличиваться до 98%, при этом сильно тормозит запущенная на виртуалке винда. Что можно сделать?

( Команда для запуска qemu-system-x86_64 )

Запускается qemu-system-x86_64 через libvirt.

( Содержимое xml-файла )

 , ,

sunny1983
()

Помогите с выбором конфигурации компьютера

Форум — Linux-hardware

Не знаю совсем рынок современного железа, поэтому прошу совета.

Для начала хотел бы определиться с процессором и матплатой (или хотя бы с чипсетом), память наверное DDR4, 16 Гбайт, с видюхой и всем остальным определюсь позже. Intel или AMD, сколько нужно ядер, физические ядра или виртуальные?

Чем занимаюсь за компьютером? Я работаю помощником админа и иногда из дома админю корпоративные сервера, на серверах стоит CentOS, на домашний комп специально из-за этого установил Fedora, на компе работают виртуальные машины KVM, на которых я ставлю различные эксперементы, также на компе крутится мой сайт, для которого работают Apache и MySQL. Есть виртуальная машина с Windows 10 специально для запуска виндовых программ, только на ней играть нельзя, так как функций 3D-ускорения в виртуальной машине нет.

Что думаю: либо установить Windows 10 как хостовую систему, а Linux запускать в виртуалке, либо оставить всё как есть, но приделать вторую видеокарту и второй монитор, чтобы видеокарта была прброшена в виртуалку как физическое устройство, тогда игры на виртуальной машине будут идти. Что посоветуете? Нужно чтобы, не останавливая сайт, не останавливая виртуальную машину, и, не закрывая браузер с 10 вкладками, компьютеру хватало бы мощности, чтобы смотреть фильмы или играть, играю в MMORPG в жанре фэнтези, такие как World of Warcraft и Аллоды Онлайн. Какой комп мне для этого нужен?

 

sunny1983
()

Перекодировать имена файлов

Форум — Admin

На ftp некто залил файлы с русскими именами в неродной кодировке. В консоли отображаются знаками вопроса. Пробовал явно указывать кодировку при чтении каталога:

LANG=ru_RU.utf8 ls
LANG=ru_RU.cp1251 ls
LANG=ru_RU.koi8r ls
Всё равно знаки вопроса, хотя если зайти на ftp под виндой через FileZilla, то русские буквы видны. Как определить что там за кодировка и как перекодировать их в кошерный utf8?

 

sunny1983
()

Получение информации о процессах с суммированием

Форум — Admin

Есть инструмент для получения информации о процессах вроде ps, top, htop, но чтобы он умел процессы суммировать? То есть, если у меня десять процессов /usr/bin/httpd то он должен отобразить одну строку, а не десять, в которой столбцы CPU%, RES, VIRT будут просуммированы.

 

sunny1983
()

Поговорим о зоопарке deb-based дистрибутивов

Форум — General

Такой вопрос! Вот Ubuntu является производной от Debian, но на самом деле это - самостоятельный дистрибутив, поскольку имеет собственный репозиторий у которого своя собственная команда разработчиков, свои даты выхода релизов, также куча других отличий.

Есть также дистрибутивы, производные от Debian: Kali Linux, MX Linux, deepin, а также есть дистрибутивы, производные от Ubuntu: Mint, elementary OS, Zorin OS. Тут есть те, кто юзал весь это зоопарк, как оно вообще? Это «болгеносы» или это дистрибы, имеющие свои репозитории, свой багтрекер и прочее? Как там внутри с зависимостями, с поддержкой? Я бы сам покопошился, но время жалко.

 

sunny1983
()

RSS подписка на новые темы