LINUX.ORG.RU

Сообщения stiner_rd

 

pyudev странное поведение

Имеются две абсолютно идентичные системы с ubuntu focal.

на обеих висит скрипт, который мониторит подключение SD-карт и производит определенные действия при подключении. Проблема состоит в том, что на одной системе pyudev показывает извлечение карты, а на второй нет.

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

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

from daemon3x import daemon

import os
import sys
import pyudev
import subprocess
import time
import re
from configparser import ConfigParser



def start_pyudev():

    context = pyudev.Context()
    monitor = pyudev.Monitor.from_netlink(context)
    #monitor.filter_by(subsystem='block', device_type='partition')
    monitor.filter_by(subsystem='block'
                      )
    monitor.start()

    for device in iter(monitor.poll, None):
        print('event %s' %device)
        print('node: %s' %device.device_node)
        print('action: %s' %device.action)

        log('usb %s %s' %(device.action, device.device_node))

на первой системе, которая работает нормально, выдает при подключении следующее

# INSERT

event Device('/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/host6/target6:0:0/6:0:0:0/block/sdb')
node: /dev/sdb

action: change

event Device('/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/host6/target6:0:0/6:0:0:0/block/sdb')

node: /dev/sdb

action: change

event Device('/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/host6/target6:0:0/6:0:0:0/block/sdb/sdb1')

node: /dev/sdb1

action: add



# REMOVE

event Device('/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/host6/target6:0:0/6:0:0:0/block/sdb')

node: /dev/sdb

action: change

event Device('/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/host6/target6:0:0/6:0:0:0/block/sdb/sdb1')

node: /dev/sdb1

action: remove

на второй системе при первом подключении все работает, но при извлечении карты выдает только

event Device('/sys/devices/pci0000:00/0000:00:14.0/usb1/1-7/1-7:1.0/host6/target6:0:0/6:0:0:0/block/sdb')

node: /dev/sdb

action: change



и потом, независимо от того втыкается карта или достается, видим только change на /dev/sdb, a /dev/sdb1 remove не происходит.

В трее тоже висит иконка USB, как будто карта еще не извлечена...

Куда копать?

 

stiner_rd
()

сгенерировать строку, удовлетворяющую регулярному выражению

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

stiner_rd
()

mysql и медленные запросы

В mysql есть возможность логгировать медленные запросы.
Кроме того есть возможность отправлять запросы с комментариями:

select /* check.py::312 */ passwd from users where id='1';
+----------------------------------+
| passwd |
+----------------------------------+
| d74d31db042c9d1b9d3750f986a7d6da |
+----------------------------------+

Вопрос: как заставить mysql логгировать запросы вместе с комментариями?

stiner_rd
()

php анонимные массивы не работают

Имеется php 5.2 почемуто не работают анонимные массивы

$a = ['1']; // выдает Parse error: syntax error, unexpected '[' in

$a = Array('1'); // работает нормально

в чем грабли????

stiner_rd
()

Zend + сессии + мультиязычность

Help. Понадобилось для одного проекта использовать Zend. Вроде в сети туча мануалов лежит, но я что-то не догоняю, или глаза кривые ...

В каком файле мне нужно объявить сессию, так чтобы ее было видно из всех контроллеров? при попытке объявить сессию в самом контроллере, говорит, что «headers already sent» и идите нафиг.

если же я объявляю сессию в Bootstrap.php, то контроллер ее просто не видит.

То же самое с Translate: что надо сделать написано достаточно ясно, но в каком именно файле непонятно...

stiner_rd
()

Тема танго не отключается

Собственно сабж...

Можно было бы и ее оставить, так на ней все прыгает и белые буквы на светлосером фоне читать сложно...

stiner_rd
()

mod_rewrite и #

Возможно ли с помощью mod_rewrite преобразовать запрос следующим образом:

http://myhost/path/to/file?foo=bar;id=123#foo=bar2;id=123;para=12
в
http://myhost/path/to/file?foo=bar2;id=123;para=12

и если возможно, то как именно?

stiner_rd
()

AJAX и перезагрузка сайта

Дано: сайт с навигацией на AJAX: большое многоуровневое меню и центральный div в который грузится контент актуальной страницы. Работает отлично, пока пользователю не придет в голову обновить страницу. После обновления страницы пользователь оказывается в самом начале (ну или в том месте, в которое он пришел по прямому линку).

Хотелось бы каким-нибудь образом после каждого AJAX запроса менять document.location без обновления страницы.

У кого есть идеи?

stiner_rd
()

MIPS

Народ, что почитать, чтобы скомпилировать программу для MIPS?

stiner_rd
()

php preg_replace

Вот такой пример имеется:

function doit($s) {
return '__'.$s.'__'.strlen($s);
}

$string = '<p>
tester<br/>
tester2<br/>
[[[ASSA]]]<br/>
[[[s]]]<br/>
tester3<br/>
</p>';


$a = preg_replace('/\[\[\[(.*)\]\]\]/',doit('\1'),$string);
print $a;

На выходе дает:

tester
tester2
__ASSA__2
__s__2
tester3

Как такое получается? и как в doit получить строку, которая была отправлена в качестве аргумента?

stiner_rd
()

apache mod_rewrite

Почемуто не хочет работать mod_rewrite

cat /etc/apache2/sites-available/default
<VirtualHost *:80>
ServerAdmin webmaster@localhost

DocumentRoot /var/www

RewriteEngine On
RewriteLog "/var/log/apache2/rewrite.log"
RewriteLogLevel 9

<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
....skipped......


в .htaccess

ErrorDocument 402 /sand/rec/errors/402.html
ErrorDocument 403 /sand/rec/errors/403.html
ErrorDocument 404 /sand/rec/errors/404.html
ErrorDocument 500 /sand/rec/errors/500.html

Options +FollowSymlinks
RewriteBase /

RewriteCond %{REQUEST_URI} !index.php$
RewriteRule ^(.*)$ index.php?s=$1


в лог пишет:
127.0.0.1 - - [05/Jun/2009:15:04:01 +0200] [127.0.0.1/sid#b8de61c0][rid#b8f76060/initial] (2) init rewrite engine with requested uri /sand/rec/assa/assa.php
127.0.0.1 - - [05/Jun/2009:15:04:01 +0200] [127.0.0.1/sid#b8de61c0][rid#b8f76060/initial] (1) pass through /sand/rec/assa/assa.php

где грабли?

stiner_rd
()

PHP help requested

Народ, пишу тест, в PHP никогда ничего не делал.
Где в коде ошибки?

sql по любому неправильный,
подозреваю, что функцию надо объявлять перед использованием,
что еще???

####################################
$order = strval(@$_REQUEST['order']);
$condition = array(
username => strval(@$_REQUEST['name']),
password => strval(@$_REQUEST['password']),
);
$sql = "SELECT 1 FROM users";

$results = getResults($sql, $condition, $order);

if (count($results)) {
echo "Login ok!";
} else {
echo "Login nicht ok!";
}


function getResults ( $sql, $condition, $order )
{
$where = array();
foreach ($condition as $field => $value) {
$where[] = $field . ' = ' . addslashes($value);
}
if (count($where)) {
$sql .= ' WHERE ' . implode(' AND ', $where);
}
$sql .= " $order";
$results = array();
$result = mysql_query($sql);
while (($row = mysql_fetch_object($result)) !== FALSE) {
$results[] = $row;
}
return $results;
}
####################################
Перемещено boombick из Development

stiner_rd
()

debian sarge

Появилась необходимость поставить debian sarge в chroot. Как заставить debootstrap использовать DVD для установки?

stiner_rd
()

топология сети

Чем можно нарисовать программно топологию сети?

stiner_rd
()

GTK Combo

Как определить, что в gtk.Combo изменился текст в entry? (Выбрана одна из строк в list). Moжет он какой сигнал посылает?

stiner_rd
()

Проблема с массивом

Пришлось мне переводить программу с питона на С, и вот наступил на первые грабли при работе с двумерным массивом:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int turm[3][4];


main(){
	int i;
	for (i=0;i<5;i++){
		turm[0][i] = 0;
		turm[0][i] = 0;
		turm[0][i] = 0;
		}
	for (i=0;i<5;i++){
		turm[0][i] = 3;
		}
	for (i=0;i<5;i++){
		printf("%i  ",turm[0][i]);
		printf("%i  ",turm[1][i]);
		printf("%i  \n",turm[2][i]);
		}
	}

На выходе получаю:

[stiner@stiner test]$ ./a.out
3  3  0
3  0  0
3  0  0
3  0  0
3  0  0

Как с этим бороться?
stiner_rd
()

определить по файловому дескриптору полное имя файла?

subj

stiner_rd
()

Python RPC ???

На удаленном компе запущен RPC-Server (написаный на питоне). Ему приписаны 10 портов (7500 - 7510). Сам сервер крутится на 7500.

Имеются несколько клиентов, которые к этому серверу коннектятся. На запрос клиента сервер проверяет свободные порты, и если таковые имеются, запускает специально для этого клиента другой RPC-Server и создает в специальном каталоге файл с номером порта. Клиент получает номер прота и коннектится к своему серверу. После завершения некоторых операций клиент просит главный RPC-Server прибить клиентский.

Главный сервер прибивает клиентский (kill -9) и стирает файл с номером порта. После этого другой клиент пытается получить клиентский сервер. И вот в этом месте возникает ошибка (98, addres allready in use). Если проходит достаточно времени (3-5 минут), то ошибки не возникает.

Вопрос: как правильно завершить RPC-Server, чтобы запустить его снова на этом-же порту?

stiner_rd
()

tar

При создании архива с помощью tar -cvzf я получаю сообщение тлько по окончании упаковки. Можно ли как нибудь определить в процессе упаковки сколько процентов готово?

stiner_rd
()

Модем ???

Народ, подскажите, есть ли библиотека для питона, с помощью которой можно коннектиться по модему (54 К) к удаленному устройству и принимать какие-либо данные?

stiner_rd
()

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