В python, выполнив команду операционной системы через subprocess, можно получить и stdout и stderr. Можно ли получить также другие потоки если таковые есть?
Есть необходимость использовать radius с SQL в качестве бэкенда. Первичная настрока вопросов не вызвала. Если добавить атрибут Auth-Type := accept то radtest test test 127.0.0.1 1218 testing123 говорит Access-Accept. Если сделать атрибут Cleartext-Password то также Access-Accept. Если добавить другой атрибут, например Mikrotik-Rate-Limit, то возвращает его. Но с ip pool возникло затруднение.
Для того чтобы получить рабочий пример, поставил daloradius. В нём добавил адреса в пул, в таблице radippool появились записи в полях pool_name, framedipaddress и expiry_time. Добавил пользователя в профиль (группу), в профиле (группе) добавил Reply Attributes: Mikrotik-Rate-Limit и Pool-Name. Первый получаю, адрес из пула – нет. Может быть в выводе radtest адреса и не должно быть или это обычный атрибут? И если должен быть в выводе то как его правильно добавить?
И чтоб два раза не вставать, что нужно сделать чтобы заменить Cleartext-Password на MS-CHAP? Какие атрибуты использовать и как шифровать пароль для внесения в БД?
# cat /etc/apt/sources.list
deb cdrom:[Debian GNU/Linux 12.2.0 _Bookworm_ - Official amd64 DVD Binary-1 with firmware 20231007-10:29]/ bookworm main non-free-firmware
# ls /etc/apt/sources.list.d/
#
Это так и задумано и я что-то не накликал при установке?
И если это нормально то что нужно сделать чтобы там появилось что нужно?
Есть некий музыкальный центр с интерфейсом HDMI. Как оказалось он может не только вывести изображение но и получить таким образом звук если в телевизоре выбран другой источник изображения. Но возникло желание подключить его напрямую к компьютеру.
Конечно аналоговый аудио кабель заработал и конечно по HDMI кабелю он ничего не получил. В настройках есть два вывода: линейный выход и S/PDIF.
Самое простое и естественное решение это взять монитор с двумя HDMI интерфейсами. Но во первых замена монитора пока не планируется а во вторых нет уверенности что монитор в данном случае поведёт себя как телевизор.
И вот такой вопрос: возможно ли неким образом принудительно вывести звук на HDMI при том, что та сторона не выводит (внезапно) изображение и монитором не выглядит?
Доп.: Никак. Это называется ARC (а управление – cec), и в компьютерах эти контакты не разводят за невостребованностью.
$ cat test.sh
#!/bin/bash
#
INDEX="${1}"
echo "--- ${INDEX} ---"
INDEX="$(( "${INDEX}" + "1" ))"
if [[ "${INDEX}" -lt "10" ]] ; then
VAR="0${INDEX}"
else
VAR="${INDEX}"
fi
echo "${VAR}"
$ for i in {05..11} ; do bash test.sh "${i}" ; done
--- 05 ---
06
--- 06 ---
07
--- 07 ---
08
--- 08 ---
test.sh: line 8: 08: value too great for base (error token is "08")
test.sh: line 10: [[: 08: value too great for base (error token is "08")
08
--- 09 ---
test.sh: line 8: 09: value too great for base (error token is "09")
test.sh: line 10: [[: 09: value too great for base (error token is "09")
09
--- 10 ---
11
--- 11 ---
12
Разработчикам бывают нужны разные версии разных программ. Обычно можно поставить несколько версий php или python, но в некотором диапазоне в зависимости от возраста ОС. У старой ОС нет новых версий, но у новой может не быть чего нибудь старого.
Насколько я понимаю, для таких целей и нужен docker, но если docker не используется в эксплуатации и пока не планируется то возможно ли (удобно ли) использовать его только на машине разработчика?
Есть мотив сделать какую либо звукоизоляцию. Но условия сильно ограничены, кроме бюджета ограничивает толщина слоя. И есть не полное понимание работы.
В интернете пишут что эффект достигается сочетанием плотных и рыхлых материалов. Но мне непонятно почему не упоминается упругость.
Бетонную стену можно рассматривать как мембрану. Мне кажется что если на мембране разместить упругий слой, который закрыть видимой поверхностью, то колебания как раз будут гаситься. Если мы трясём мешок с песком и пружину, то противная сторона у песка должна повторять колебания по меньшей мере сильнее чем у пружины?
Дело в том, что нет материалов с подходящей упругостью? Или в том, что для разных частот таковая нужна будет разная?
У zabbix есть очень полезная возможность: автообнаружение узлов сети. Сразу появилось много, чего в nagios добавить не доходили руки. Но есть нюанс…
Некоторые устройства иногда начинают исчезать и появляться часто и подолгу. Такие уведомления мешают. Уведомления у меня подключаются при обнаружении и добавлении в группу. Чтобы отключить уведомления я убрал узел из группы рассчитывая сделать новую группу, такую же но без уведомлений, добавленные описания при обнаружении не менялись и я рассчитывал что изменение группы также сохранится. Но при следующем определении zabbix вернул узел в положенную группу.
Есть ли способ подавить повторное добавление в группу? Или подавить уведомления для определённого узла? Отказываться от автообнаружения не хочется.
В бюджет входит подержанный DELL PowerEdge R730. С dell я сталкивался только в отзывах на ноутбуки, да и то не помню положительные или отрицательные. Но с серверами, думаю, должно быть более предсказуемо. Вопрос только про perc.
На борту PERC (PowerEdge RAID Controller) S130. Настоящий ли это рейд контроллер или фейк рейд? И если полноценный то как у него с драйверами, надо ли что либо доустанавливать и докомпилировать? Или, если это фейк рейд то можно ли увидеть диски напрямую чтобы не он не давал осложнений?
Если не ошибаюсь, это HBA, то есть можно будет просто увидеть диски напрямую? И аккумулятора и кэша у него нет (они бывают по раздельности или только в паре)?
И, чтоб два раза не вставать, как определить наличие у диска smr? Вот здесь wd рассказывает про свои диски, но статье три года. И какие существуют критерии для выбора ssd? А то вот пример где оказывается что не все ssd одинаково хороши.
На сайт идёт значительное количество обращений в результате чего заметно вырастает load average. Это похоже на атаку медленными http запросами. Перед апачем поставлен nginx, но заметного изменения картины не произошло. По некой рекомендации выполнена команда:
netstat -nalt | grep :80
Вернула большой список подключений через 127.0.0.1 к апачу. Тогда выполнена команда:
netstat -nalt | grep :443
Здесь список был в несколько раз короче.
Насколько я понял, nginx передаёт соединение и затем закрывает по таймауту, но у апача это соединение продолжает висеть. Правильно ли это и если да то как можно обучить nginx говорить апачу что соединение нужно закрыть?
В bash кавычки в некоторых случаях нужны но в некоторых наоборот. В следующем примере мне казалось что если написать «${LIST[@]}» то в цикле будет один элемент.
LIST=({1..10})
for i in "${LIST[@]}" ; do
echo "${i}"
done
Но этот пример выводит все элементы массива. Почему здесь кавычки не «склеивают» элементы массива?
Во втором случае текст «admin» сдвигается влево (так это отображается у меня). Если поменять местами «admin» и «MySQL» то сдвигаться будет «MySQL». Это баг или так было задумано?
Установил в nextcloud дополнение transmission. Но трансмиссию установил на другом компьютере. Задать адрес оказалось возможным в файле /nextcloud/apps/transmission/lib/Controller/TransmissionController.php задав переменную $host. Но случилась ещё одна засада.
У меня дурная привычки не использовать административные привилегии. Но трансмиссия для nc работает только от пользователя состоящего в группе admin. Впрочем в PageController.php (там же) сказано:
/**
* CAUTION: the @Stuff turns off security checks; for this page no admin is
* required and no CSRF check. If you don't know what CSRF is, read
* it up in the docs or you might create a security hole. This is
* basically the only required method to add this exemption, don't
* add it to any other method if you don't exactly know what it does
*
* @NoAdminRequired
* @NoCSRFRequired
*/
Но не сказано как это сделать. Нет, я конечно попытался раскомментировать @NoAdminRequired, но результат получил ожидаемый.
Скажите пожалуйста, что они имели в виду и как использовать это указание? Все остальные приложения работают от любого пользователя но у них такая строка везде закомментирована. Попробовал добавить закомментированную секцию с нужным указанием в остальные два файла контроллера но это ничего не изменило.
Есть желание мониторить состояние клиентов астериска. Для этого можно раз в минуту выполнять команду
asterisk -rx 'sip show peers'
Но это кажется не очень красивым решением. Можно непрерывно читать логи и искать нужные записи, но кажется что было бы естественнее если бы астериск на таких событиях сам вносил изменение например в БД.
Может ли астериск выполнять произвольный скрипт при регистрации и потере клиента?
Чтобы добавить память нужно вытащить материнскую плату. А чтобы её вытащить нужно отсоединить разъёмы. Но есть один разъём, который не получается отсоединить.
На этой фотографии он в правом нижнем углу под элементом питания. Похож на SATA и с похожим фиксатором но немного больше. Возможно это дисковая корзина. На видео с ютуба его просто отсоединяют. Когда я тяну он не движется и кажется что добавив усилие можно оторвать его с куском платы.
Есть работающие системы мониторинга (nagios) и статистики (cacti). Неудобно то, что это две раздельные системы. Кроме того, периодически с cacti бывают некоторые проблемы.
Насколько мне известно, zabbix сочетает в себе и мониторинг и статистику. И кроме того, насколько я понимаю, довольно активно развивается. Но мне не совсем понятно что у него с графиками.
За какой интервал в zabbix по умолчанию хранятся данные для статистики? И если за короткий, то сильно ли вырастет база если увеличить до года или двух? Можно ли хранить усреднённые значения для старых данных (как в rrd у cacti)? Или там графики это второстепенный инструмент и таких как в cacti можно не ожидать?
Есть легаси система, которую я сопровождаю и до некоторой степени упорядочиваю. И есть потребность передать внутренний обмен (по loopback) на другой хост.
Для зеркалирования трафика можно использовать TEE как-то так:
iptables -t mangle -A POSTROUTING ${OPTIONS} -j TEE --gateway "${IP}"
Если сделать следующее правило и пинговать заданный адрес то на целевой машине появляются пакеты:
iptables -t mangle -A POSTROUTING -o eth0 -d 8.8.8.8 -j TEE --gateway 192.168.1.2
Но когда я пробую подставить в условия интерфейс lo то на целевой машине ничего не получаю (пинг на 127.0.0.1 виден в tcpdump на локальной машине и не виден на целевой):
iptables -t mangle -A POSTROUTING -o lo -j TEE --gateway 192.168.1.2
Пробовал на POST/PREROUTING, FORWARD, INPUT, OUTPUT. Это я что-то делаю не так и трафик локалхоста идёт другим путём или его принципиально невозможно зеркалировать?
Со следующим правилом пинг идти перестал, то есть трафик похоже идёт как в других случаях:
iptables -t mangle -A POSTROUTING -p icmp --icmp-type any -o lo -j DROP
В man iptables есть только одно упоминание loopback: «except loopback traffic, which involves both INPUT and OUTPUT chains».
Время от времени bind перестаёт резолвить некий произвольный домен. Вернее догадываюсь что их может быть много, но замечается один. Если не заметить (мониторинг проверяет ya.ru) то в течении 10 минут восстанавливается. Если просто перечитать конфиг: systemctl reload named то этого оказывается достаточно чтобы исправить.