LINUX.ORG.RU

Сообщения lucky_guy

 

практическое использование нейросети

Форум — Development

Нечего делать, решил изучить простейшую нейросеть на практическом примере. Задача: поддерживать температуру диска в 37 градусов регулируя скорость куллера (PWM 0-1023). Берем простейший пример перцептрона:

import numpy as np

def sigmoid(x):
    return 1/(1 + np.exp(-x))

training_inputs = np.array ([[1,0,0,0],
                            [0,1,1,0],
                            [1,0,1,1],
                            [1,1,0,1]])

training_outputs = np.array([[0],
                             [1],
                             [1],
                             [0]])

np.random.seed(1)
synaptic_weights = 2 * np.random.random((4,1)) - 1

for i in range(100000):
    input_layer = training_inputs
    outputs = sigmoid(np.dot(input_layer, synaptic_weights))

    err = training_outputs - outputs
    adjustments = np.dot(input_layer.T, err * (outputs))
    synaptic_weights += adjustments

print("веса после обучения")
print(synaptic_weights)
print("result")
print(outputs)

берем температуру диска из smartctl и статистику нагрузки

iostat -m
Device             tps    MB_read/s    MB_wrtn/s
sda               4.00         0.00         0.00
...
sda               76.00         0.00        85.50
...
sda               105.00        98.00       0.00

Подставляем это все во входные данные:

training_inputs = np.array ([[37,4,0,0],
                            [39,76,0,85],
                            [38,105,98,0],
                            [37,0,0,0]])
И тупик. Какие выходные значения мне нужно искать и как связать их с оборотами?

 ,

lucky_guy
()

регулировка частот гостя в proxmox

Форум — Admin

Всем добра!
Подскажите пожалуйста где в proxmox находится регулировка частот процессора и памяти? На скринах по ссылкам тесты скоростей на системе установленной непосредственно на машину и в виртуалке. Что интересно, проброшенная видеокарта выдает почти 100% скорости.

https://ibb.co/18cS4Lt
https://ibb.co/GcY4XKy

https://ibb.co/dQsQW6D
https://ibb.co/TBM7L8c

https://ibb.co/WtLgQBc
https://ibb.co/R6CKYwh

Спасибо!

 

lucky_guy
()

бэкап двух каталогов имеющих одинаковые файлы

Форум — Admin

Всем добра! Есть простая задача, бэкапить 2 архивные директории с документацией в одну общую. Структуры в них разные но много файлов одинаковых. Нужно уменьшить занимаемое место и очень желательно сохранить структуры директорий.

Напрашивается копирование rsync’ом с опцией -u а затем проход rdfind -makehardlinks.

Есть ещё идеи? А то эта не кажется мне идеальной.

 ,

lucky_guy
()

Перетянуть изменения с master на старую ветку, к которой применены патчи.

Форум — Development

Доброго дня!
Решил обновить openwrt на роутере keenetic, официальной поддержки нет, но люди с 4pda делали патчи под актуальную тогда версию 15.05.1. Попробовал подогнать их под текущую версию, но сейчас некоторых файлов уже нет, у других структура изменилась и мне не по силам это провернуть.

Вопрос: можно ли скачать версию 15.05.1, пропатчить, а затем средствами git перетянуть все изменения с актуальной версии? Или при каждом последующем изменении файлов которые затронули патчи будут вываливаться ошибки?

Почитал про merge и rebase, кажется выполнимо, но не хочется тратить время зря...

 ,

lucky_guy
()

когда файл появится на ipfs.io

Форум — Desktop

Тыкаю в IPFS, выглядит интересно, но либо я что-то не так делаю, либо не работает как должно.

Добавил я файл в сеть, добавлял без копирования(опцией --nocopy), на локальном шлюзе вижу его, а через глобальный шлюз ipfs.io нет. Прошло уже несколько часов, но файл упорно не хочет появляться. Порт 4001 открыт наружу, количество пиров поднималось до 700.

Проверьте кто-нибудь на локальных шлюзах появился ли файл в сети? https://ipfs.io/ipfs/Qmf2TU9KHSK353uX15JdhWEcSA6QEVD8SZSKJDy9cprjMs

 

lucky_guy
()

memory leak в multiprocessing

Форум — Development

Почему при передачи кадров подпроцессу питон сжирает всю память? Причем если передавать например счетчик i то утечки нет.

from multiprocessing import Process, Queue
from pympler.tracker import SummaryTracker
import cv2


def worker(inputQueue, outputQueue):
	while True:
		if not inputQueue.empty():
			frame = inputQueue.get()

inputQueue = Queue(maxsize=1)
outputQueue = Queue(maxsize=1)

vs = cv2.VideoCapture(0)

p = Process(target=worker, args=(inputQueue, outputQueue))
p.daemon = True
p.start()
i = 0
tracker = SummaryTracker()

while True:
	ret, frame = vs.read()
	if ret == True:
		i += 1
		if inputQueue.empty():
			inputQueue.put(frame)	# <--утечка тут!
		cv2.imshow("Camera", frame)

		if i == 100:
			tracker.print_diff()
			i = 0

	if cv2.waitKey(1) & 0xFF == ord("q"):
		break

p.terminate()
vs.release()
cv2.destroyAllWindows()

Спасибо!

 , ,

lucky_guy
()

Буфер кадров с камеры в python

Форум — Development

Имеется скрипт для распознавания человека в кадре и автоматической записи видео. Работает на rpi3 и т.к. для обработки нейросетью каждого кадра мощности не хватает, то кадры подаются в отдельный поток через каждые 2 секунды (+ время на обработку кадра), соответственно запись начинается с момента когда человек находится уже посередине коридора. После пропадания человека из поля зрения камеры записывается еще 100 кадров.

Вопрос в том, как сделать буфер кадров, что бы при обнаружении человека запись начиналась с кадров в буфере, что бы сохранялись записи с момента появления человека в поле зрения камеры? Если можно то с примером, мну не программист.

Спасибо!

 , , , ,

lucky_guy
()

Проброс портов на роутере

Форум — Admin

Имеется роутер с openwrt на котором 2 точки доступа с 2 независимыми сетями (lan - 10.0.0.1/24; guest - 192.168.1.1/24), в каждой сети по одному клиенту (10.0.0.2; 192.168.1.2) с установленным syncthing, который слушает на 22000 порту и вещает на 21027 порту. Как настроить проброс портов на роутере, что бы клиенты видели друг друга и синхронизировались по локалке. Сами клиенты 100% исправны и через инет синхронизируются.

 , ,

lucky_guy
()

Пуск игрового трафика в обход vpn.

Форум — Desktop

Настроил впн на домашнем маршрутизаторе, завернул в него весь трафик, все хорошо, но хочется играть с наименьшим пингом. Добавляю маршрут:

route add "IPGameServer" gw "DefaultGW" dev ppp0
что бы пакеты до игрового сервера шли по дефолтному шлюзу модема и сервер пропадает из онлайна. Если проделать то же самое с сайтом проверки ip адреса, то все удаётся, и на сайте вырисовывается мой реальный ip. Какие могут быть тонкости? Пробовал найти адреса стимовских серверов и добавить для них по правилу, но гугл молчит. И есть ли тут связь со стимом вообще?

Пока приходится полностью отключать vpn, не комильфо.

 , ,

lucky_guy
()

Запуск программы с параметрами из screen

Форум — Desktop

screen -dmS openvpn --config /etc/openvpn/server.conf
Error: Unknown option --config

Пробовал скобки, экранирование, ман читал, гугл молчит.

 

lucky_guy
()

изолированная сеть whonix

Форум — Talks

Цитата из вики

Система Whonix состоит из двух виртуальных машин, соединенных через изолированную сеть.

Что это значит? Правила iptables запрещающие всё кроме 192.168.0.1:9050? В статях про whonix говорят о изоляции потоков, отключении ntpdate и DNS leak, но ничего конкретного о изоляции сети. Или позаботившись обо всем этом сеть становится «изолированной»?

Кто пробовал? Как реализовано?

 , , ,

lucky_guy
()

Чем заменить iprange в iptables?

Форум — Admin

Имеется локальный сервер(10.0.0.1) с установленным privoxy и wifi роутер(10.0.0.2) подключенный к провайдеру. Мне нужно чтобы весь www трафик от клиентов(10.0.0.3-10.0.0.255) перенаправлялся на локалхост, там чистился, а оттуда уже через роутер в веб. Состряпал такое правило для роутера:

iptables -t nat -I PREROUTING -i eth0.1 -p tcp --dport 80 -m iprange --src-range 10.0.0.3-10.0.0.255 -j DNAT --to-destination 10.0.0.1
А для моей прошивки openwrt(неофициальная сборка) отсутствует модуль kmod-ipt-iprange как на зло.
Какими правилами можно обойтись что бы 10.0.0.1 и 10.0.0.2 ходили напрямую, а с диапазона 10.0.0.3-10.0.0.255 трафик перенаправлялся?

 ,

lucky_guy
()

Настройка маршрутизации в домашней сети

Форум — Admin

Помогите пожалуйста решить проблемку, провел я интернет через кабель и не могу разобраться как настроить маршрутизацию.

Раньше интернет приходил от усб модема к одноплатнику который выступал в роли DHCP сервера и через гигабитный хаб раздавал ip и интернет на wifi роутер(который являлся DHCP сервером для сети wifi) и ноутбук который настроен как толстый клиент.

Теперь кабель от провайдера втыкается в wan порт wifi роутера, но подключать одноплатник и ноут к lan портам не желательно т.к. 100 Mbit и толстый клиент будет тормозить. Предложите хотя бы концепцию, как настроить я сам найду. Выкинуть роутер не предлагать.

 

lucky_guy
()

Запуск программ через irexec

Форум — Desktop

Настроил lirc для управления плеером, назначил клавиши для запуска и остановки самого плеера

begin
	prog = irexec
	button = 1
	config = audacious 1>/tmp/1 2>/tmp/2 &
end
Но он вылетает с ошибкой
D-Bus error: Cannot autolaunch D-Bus without X11 $DISPLAY
Unable to init server: Could not connect: Connection refused

(audacious:9218): Gtk-WARNING **: cannot open display:
Из консоли все работает. Полагаю irexec не передает программе переменной $DISPLAY, как это победить?

 ,

lucky_guy
()

Турбобанан v2.

Галерея — Рабочие места

По заявкам ЛОРовцев, обновленная версия(ver.1) моего хобби на основе одноплатника BananaPi в корпусе.

Под крышкой слева направо: БП, банан, 1Gb свитч, под бананом и свитчем - wifi роутер KEENETIC LITE, чуть пониже 2 харда по 1Tb. Сплетение проводов в центре это полевик регулирующий скорость вращения 5 вентиляторов, управляется ШИМ с банана и релюха отключающая питание харда, подключенного через usb. Мера вынужденная, т.к. переходник usb2sata не поддерживает SMART, винт постоянно крутится а сам переходник жутко греется. Контроллер питания одноплатника при этом тоже не слабо разогревается.

Так же, для этого дела был приобретен usb 3g модем на 21Mbps и 27" монитор подключенный по hdmi, одноплатник с легкостью крутит фильмы в FullHD.

Софт тоже подвергся изменению:
1) Был установлен образ armbian с иксами(и всеми вытекающими).
2) Настроен PXE сервер. Второй хард был выдран из ноута, который теперь грузится либо с PXE, либо с SSD харда с виндой, купленного специально для игорей.
3) Все та же цепочка dnsmasq, squid + privoxy + tor. dnsmasq теперь прозрачно форвардит на onion домены.
5) Вэбморда rtorrent`a была удалена за ненадобностью. Все полностью автоматизировано вплоть до удаления закачки по достижении заданного рейтинга.

И, как повелось, напоследок пару фотографий отвратительного качества, но передающих концепцию.

Раз.
Два.
Три.

>>> Просмотр (4160x3120, 1504 Kb)

 , , , ,

lucky_guy
()

pxeboot и сборка rootfs

Форум — Linux-install

Понадобилось мне настроить так называемый «толстый клиент» pxeboot(т.е. при загрузке выкачиваем все что нужно с сервера и работаем локально), занимаюсь этим впервые да и о загрузке линукса в принципе знаю понаслышке. dhcp, tftp, nfs настроил, все загружается, дошло дело до rootfs... В сети нашел несколько вариантов:

debootstrap не подходит т.к. сервер на arm, клиент на x64(ведь в новую систему нужно делать чрут что бы доустановить все необходимое)

LTSP в принципе подойдет, есть опция --arch amd64 для создания клиента, но сильно ограничено по дистрам.

Хочу бы поставить elementary os и в связи с этим вопрос: [trollmode]чтоделатькудыбечь?[/trollmode]. Мне нужно установить дистр локально, потом скопировать оттуда рамдиск initrd.img ядро vmlinuz и созданный архив фс rootfs.squashfs? Или есть другой выход?

[upd] и как потом обновлять систему, устанавливать/удалять программы?

Спасибо за любую помощь!

 ,

lucky_guy
()

Турбобанан.

Галерея — Рабочие места

Хочу поделиться своим детищем: торрентокачалка, NAS, маршрутизатор и много чего еще на основе одноплатника BananaPi.
Изначально планировалось что он же будет и WiFi роутером, но при отсутствии активности вафля будто засыпала, и при возобновлении активности на клиентах пишет «получение IP адреса», а на банане ничего не происходит. Ко всеобщему счастью под столом валялся KEENETIC LITE, который был настроен на 2 точки доступа: запароленную и гостевую.

Итак, сверху вниз:
1) HDD 160G: 5G = squid кэш; 155G = /mnt/trash - временный каталог загрузок rtorrent`а. Подключен через переходник SATA2USB
2) HDD 1T: каталог для готовых загрузок, которые самим rtorrent`ом автоматически сортируются по типу(music, films, images...), NFS шара и бакапы. Вся мультимедиа хранится в нём, а на клиентах локальные каталоги с музыкой, фильмами и фотками заменены ссылками на эту шару.
3) Сама плата. Подверглась небольшой переделки: выпаян аналоговый видеовыход(цеплялся о куллер), припаяна батарея для RTC, припаян разъем для резервного питания, позже добавлю к конструкции батарею, приклеены радиаторы на процессор, память, контроллер питания и на сетевую плату.
4) Платка с 4-мя релюшками для управления вентилятором. Управляется естественно через GPIO, в зависимости от температуры процессора и жесткого диска замыкая нужные реле и подавая на кулер 3, 5, 8 или 12В. Большую часть времени крутится на минимальной скорости с едва различимым шумом уже с 2-х метров. Должен сказать, что проблем с перегревом платы либо харда не было, а сделал я это все просто потому что смог(:
5) Блок питания 5V6A/12V2A.
6) Вентилятор какой-то thermaltake.
7) Рядом лежит дешманский USB хаб, множащий единственный свободный порт на 3 + все форм-факторы SD карт. К нему постоянно подключен 3G свисток(да, в моей деревне нет инета:().
Т.к. теперь доступ к GPIO ограничен, я сразу воткнул в него провода для прошивки микроконтроллеров через SPI.

На плате вертятся:
1) Сборка на основе Debian от некоего Igor Pečovnik. Голая консоль, куча надстроек. 2) squid.
3) privoxy - режет все оставляя чуть ли не голый текст на всех сайтах кроме доверенных. Сайты которые блочит роскомнадзор перенаправляются на tor.
4) tor - время смены цепочки увеличено до 10 минут, мне скрытность не к чему, лишь бы блокировки обойти.
5) dnsmasq с кэшем DNS и настроенный на OpenDNS.
6) rtorrent - подхватывает торренты скачанные в определённые директории и, в зависимости от вышеупомянутых переносит готовые торренты в другие заданные директории. Например: /mnt/storage/torrents/films/ -> /mnt/storage/media/films/.
7) вебморда rutorrent со всеми зависимостями(lighttpd, etc...).

iptables`ом 80 порт перенаправляется на цепочку squid+privoxy+tor, что бы через неё ходили и те, кто подключается через гостевую точку доступа.
Одно время баловался wireshark`ом, дампил распарсивал трафф гостей... Товарищи, пользуйтесь https!(;

Есть еще куча всяких мелочей не столь серьезных, но добавляющих комфорта, производительности, либо долговечности тому или иному компоненту сборки. На этом все. Напоследок пару фотографий отвратительного качества, но передающих концепцию.

Раз.
Два.
Три.

>>> Просмотр (2800x2300, 1611 Kb)

 , , , ,

lucky_guy
()

conky на удаленной машине

Форум — Desktop

Такой вопрос: можно ли каким-нибудь образом заставить коньки передавать информацию об удалённой машине? Что бы запустить программу на сервере а изображение на десктопе лицезреть.

Либо какими программами мониторинга пользуетесь вы? Желательно без использования браузера а что б аналог коньков.

 ,

lucky_guy
()

Настройка vpn на vps

Форум — Admin

Надоело что провайдер режет торренты. Заказал vps, установил openvpn

конфиг сервера(не полный)

port 1194
proto udp
dev tun
server 192.168.2.0 255.255.255.0
route 192.168.2.0 255.255.255.0
push "route 192.168.2.0 255.255.255.0"
push "dhcp-option DNS 8.8.8.8"

ifconfig сервера

eth0          inet addr:000.000.107.23  Bcast:000.000.107.63  Mask:255.255.255.192
tun0          inet addr:192.168.2.1  P-t-P:192.168.2.2  Mask:255.255.255.255
route сервера
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         000.000.107.1    0.0.0.0         UG    0      0        0 eth0
000.000.107.0    *               255.255.255.192 U     0      0        0 eth0
192.168.2.0     192.168.2.2     255.255.255.0   UG    0      0        0 tun0
192.168.2.2     *               255.255.255.255 UH    0      0        0 tun0

iptables сервера

iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth0 -j SNAT --to-source 000.000.107.23

конфиг клиента(не полный)

remote 000.000.107.23
redirect-gateway def1
port 1194
dev tun
proto udp

ifconfig клиента

ppp0          inet addr:000.000.182.184  P-t-P:10.64.64.64  Mask:255.255.255.255
tun0          inet addr:192.168.2.6  P-t-P:192.168.2.5  Mask:255.255.255.255

route клиента

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.2.5     128.0.0.0       UG    0      0        0 tun0
default         *               0.0.0.0         U     0      0        0 ppp0
10.64.64.64     *               255.255.255.255 UH    0      0        0 ppp0
128.0.0.0       192.168.2.5     128.0.0.0       UG    0      0        0 tun0
192.168.2.0     192.168.2.5     255.255.255.0   UG    0      0        0 tun0
192.168.2.1     192.168.2.5     255.255.255.255 UGH   0      0        0 tun0
192.168.2.5     *               255.255.255.255 UH    0      0        0 tun0

При этом первый маршрут «убивает» всю связь но если закомментировать redirect-gateway def1 в конфиге клиента, то сервер vpn(192.168.2.1) пингуется. Следовательно проблема в маршутах на клиенте, но что именно нужно сделать не знаю. Для начала, мне нужно что бы весь траффик шел через vpn(просто что бы понять как это сделать), затем поднять там прокси и пустить через него траффик торрента(или прокси поднимать не обазательно а можно обойтись правилом iptables?).

Спасибо за любую помощь.

 , ,

lucky_guy
()

Как просмотреть промаркированные iptables'ом пакеты?

Форум — Admin

настраиваю динамический шейпер с помощью костыля htb.init, мне нужно равномерно распределить канал между входящими соединениями из локалки. Для этого нужно сначала промаркировать пакеты:

iptables -t mangle -A INPUT -s 192.168.0.0/24 -j MARK --set-mark 99
iptables -t mangle -L INPUT 
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
MARK       all  --  192.168.0.0/24       anywhere             MARK set 0x63
Т.е. iptables говорит что все пучком, но шейпер не режет, чем можно просмотреть промаркированные пакеты?
Сам шейпер настроен правильно, т.к. скопировал правило на исходящий траффик и добавил в него строчку
MARK=99

 ,

lucky_guy
()

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