LINUX.ORG.RU

Сообщения router

 

Нужен совет по выбору 3d принтера

Доброго времени суток

Сабж. Что лучше из reprap'ов - mendel или prusa? Или уже появились другие открытые проекты?

update. судя по тому, что я прочитал, prusa - потомок mendel. prusa проще в сборке и наладке, больше область печати. Но при этом на mendel можно напечатать гораздо больший процент деталей к самому mendel

 ,

router
()

Кто-нибудь использует SCL ( software collections ) ?

Доброго времени суток

Требуется ли подписка redhat для использования коллекций с https://www.softwarecollections.org/en/ ?

Если нет, то зачем rhel и centos часть scl тащат в свои репозитории?

 , , scl

router
()

Посоветуйте howto по установке linux на вендопланшет

Доброго времени суток

Сабж. Интересуют именно хауту, документации и ликбезы

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

 ,

router
()

Что вы используется для поиска дубликатов файлов?

Доброго времени суток

Сабж. Из fdupes давно убрали замену найденных дублей на хардлинки

Есть небольшая файлопомойка, хочется разгрести место для новых дистрибутивов :) Велосипед-обёртку над fdupes на perl в принципе написать могу, но это долго и чревато потерей данных при ошибке.

 ,

router
()

Можно ли разделить время обработки запроса на время в ядре и время в СХД?

Доброго времени суток.

Есть результат запуска fio ( libaio, рандомное чтение, блок 4k, queue depth 32, process count 4 ) и одновременно сбор данных через

( date; iostat -x 2 ) > iostat.log

fio выдал

  • clat avg 4.3 мс
  • iops 29548

При этом iostat в это же время показывает

  • await ~ 4.0 - 4.5 мс
  • svctm ~ 0.13 - 0.15 мс

svctm хорошо сходится с iops ( 4 fc пути, нагрузка раскидывается равномерно, и это подтверждается графиками await(t), kbps(t) для отдельных путей ), поэтому

$ echo '1/(29548/4) ' | bc -l
.00013537295248409367

Но. судя по исходникам sysstat, svctm - синтетика, вычисляется исходя из загрузки диска, числа выполненных запросов и интервала измерения )

Потребитель видит 4.3 мс, это понятно. Но при этом может быть 4.16 мс запрос в ядре, потом один запрос улетает в fc и возвращается за 0.14 мс . А может быть и наоборот, в ядре время почти не тратится, пачка запросов улетает в fc и каждый в среднем выполняется 4.3, но выполняются одновременно.

Вопрос, возможно ли как-то оценить время, которое запрос ждёт в ядре?

Возможно ли снять статистику не с дисков, а с HBA?

 , , ,

router
()

Как посчитать статистику, экономя память?

Доброго времени суток.

Есть несколько файлов, в каждом - данные отдельного теста, список прочитанных блоков HDD

Нужно посчитать кратность чтения. Т.е. суммарно по всем тестам было прочитано X блоков, из них 1 раз N_1 блоков, 2 раза N_2 блоков и т.д. Всего прочитано Y уникальных блоков ( Y = sum N_i по всем i )

Всего уникальных номеров блоков допустим 100M ( объём тестового диска / размер блока ). Поэтому первая же идея - загнать всё в ассоциативный массив { номер_блока -> количество чтений } - оказалось неудачной, требуется слишком много памяти.

Есть идеи?

 , ,

router
()

Как в l4d2 после смерти перейти в режим наблюдения от 1 лица?

Доброго времени суток

Сабж

Что-то случайно нажал правым мизинцем внизу алфавитной клавиатуры. В результате 1, 2

Как бы это повторить? В настройках и в гугле не нашёл.

 

router
()

Возможно ли копировать файлы по scp/sftp без шифрования?

Доброго времени суток

Тема время от времени вплывает, и вроде даже читал что у кого-то получилось, но найти не смог

Сабж. scp/sftp даже с "-o Ciphers=arcfour -o Compression=no" показывают скорость копирования 40 MB/s на гигабитном канале, упираясь в одно ядро. ftp на том же канале использует весь гигабит. Но мне не нравится идея ставить ftp сервер на кучу хостов.

Возможно ли без особых извращений отключить шифрование для передачи файлов в стандартном openssh?

 , , ,

router
()

Есть ли ПО, которое может обнаружить подозрительную активность в логах squid?

Доброго времени суток

Сабж

Сразу уточню, моральный облик пользователей меня не интересует ( от слова «вообще» ). Что нужно, так это поиск активности, которая характерна для вирусов, червей и прочих зловредов. Т.е. IDS. Также интересно, если можно задать профиль устройства и искать отклонения ( вот это - принтер, ему веб без надобности. а это телевизор, для него характерен только ютуб )

Для сетевого трафика есть snort. Но хотелось бы что-то подобное для squid

 , ,

router
()

Обновились debian jessie и wheezy

Доброго времени суток

Changelog:

Интересен список обновлений безопасности для минорных релизов. А то некоторые до сих пор чувствуют себя неуязвимыми хакирами ;) В других дистрибутивах и ОСях примерно то же самое.

«Следи за собой, будь осторожен»

 ,

router
()

Есть ли в Python аналог Data::Dumper ?

Доброго времени

Сабж. Первый подход к гуглу дал pprint. Он удобен для словарей, но абсолютно бесполезен для объектов

Perl:

use Data::Dumper;
use WWW::Mechanize;

my $browser = WWW::Mechanize->new();
printf "%s\n", Dumper($browser);
вывод:
$VAR1 = bless( {
                 'headers' => {},
                 'ssl_opts' => {
                                 'verify_hostname' => 1
                               },
                 'forms' => undef,
[...]
                 'cookie_jar' => bless( {
                                          'COOKIES' => {}
                                        }, 'HTTP::Cookies' ),
                 'proxy' => {},
                 'max_size' => undef
               }, 'WWW::Mechanize' );

Python:

import pprint
import mechanize

browser = mechanize.Browser()
pprint.pprint(browser)

вывод:

<mechanize._mechanize.Browser instance at 0x15e7c20>

Допустим, я понимаю почему так происходит. В perl ООП сделан через одно место. self, в котором хранятся поля класса - по сути обычная структура данных. Как правило - хэш ( в терминах Python - словарь ). Плюс области видимости позволяют при необходимости залезть и вытащить что угодно. А в Python практически всё - объект. И у объекта определён метод __str__, который приводит его к строке. И если автор класса об этом не подумал, __str__ даст бесполезный текст «блаблабла instance at адрес»

Второй подход к гуглу дал vars(), dirs(), которые вполне годятся для нормального дампа:

    pprint.pprint( vars( browser ) )

вывод:

{'_any_request': {},
 '_any_response': {},
 '_client_cert_manager': <mechanize._auth.HTTPSClientCertMgr instance at 0x1807758>,
 '_factory': <mechanize._html.DefaultFactory instance at 0x17a2f38>,
 '_handle_referer': True,
 '_handler_index_valid': False,
[...]
 'request': None,
 'request_class': <class mechanize._request.Request at 0x165fef0>}

Именно то, что нужно, поля и их значения. Но в дампе опять видим издевательские «instance at». Если хочется идти глубже - нужно вручную их дампить через vars. Наверняка можно пройти по вложенным объектам, пусть даже рекурсивно, и сделать как perl.

Вопрос, есть ли в python готовый модуль, в котором это уже сделано, т.е. модуль, который является полноценной заменой перловому Data::Dumper ?

 ,

router
()

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

Доброго времени суток

Сабж. До сих пор мои скрипты работали ограниченное время, а теперь появилась необходимость выполнения скрипта в течение нескольких часов или даже дней. Поэтому хочу написать что-то интерактивное ( но по-прежнему консольное ), чьим процессом выполнения может управлять пользователь.

Думаю сделать так:

  • отдельная процедура ask_human() выполняет неблокирующее чтение с консоли и парсинг того, что ввёл пользователь. На выходе 2 строки - управляющее воздействие ( continue, break, status ) и задача, которую нужно выполнять ( task1, task2 и т.д. )
  • в основном цикле программа будет выполнять ask_human() и sleep. Если команда получена - выполнение соответствующей задачи
  • в процедурах задач есть свой цикл, в котором так же выполняется ask_human(). Если получена новая команда - возврат в основной цикл.

Норм? Или есть best practice / pattern, больше подходящий для данной задачи?

Update. Всем спасибо, остановился на варианте с отдельным потоком

 ,

router
()

Как в apache ограничить количество одновременных запросов с одного IP к Location?

Доброго времени суток

Сабж. Штатной возможности похоже нет.

Пытаюсь сделать через mod_security по аналогии с rate limit:

    ############################################################################
    # modsecurity
    ############################################################################
    SecRuleEngine On

    SecAuditEngine RelevantOnly
    SecAuditLog /var/cache/modsecurity/audit.log

    SecDebugLog /var/cache/modsecurity/debug.log
    SecDebugLogLevel 9

    SecAction id:'12341',phase:1,initcol:ip=%{REMOTE_ADDR},pass,nolog
    SecAction "id:'12342',phase:5,setvar:ip.somepathcounter=-1,pass,nolog"
    SecRule IP:SOMEPATHCOUNTER "@gt 2" "id:'12343',phase:2,pause:300,deny,status:509,setenv:RATELIMITED,skip:1,nolog"
    SecAction "id:'12344',phase:2,pass,setvar:ip.somepathcounter=+1,nolog"
    Header always set Retry-After "10" env=RATELIMITED
    ############################################################################

Перезапускаю апач, проверяю через apache benchmark с другого хоста:

~$ ab -c 50 -n 150 <URL>
[...]
Concurrency Level:      50
Time taken for tests:   5.256 seconds
Complete requests:      150
Failed requests:        0
Write errors:           0
[...]

В логе apache тоже нет 509 кода, только 200. В /var/cache/modsecurity/debug.log видно, что счётчик ip.somepathcounter не превышает 1:

# grep -i somepathcounter /var/cache/modsecurity/debug.log | grep Relative | cut -d ' ' -f 4- | sort | uniq -c
     26 Relative change: somepathcounter=0-1
    150 Relative change: somepathcounter=0+1
    150 Relative change: somepathcounter=1-1

Сижу и пытаюсь понять, где я ошибся

update. nginx не предлагайте, сейчас у меня цель - научиться ограничивать запросы в самом apache

 , ,

router
()

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

Доброго времени суток

Сабж. Квотсы заросли спамом в неподтверждённых и нетрадиционными анонимусами в гостевухе. Только массовые расстр^W^W^W

Если анонимусы под защитой, дайте хоть спам буду удалять

sudo cast far_tuna, geek, JB, one117, Teak

 

router
()

Существуют ли многоканальные наушники под linux?

Доброго времени суток

Сабж. В моих G35 фейковый 7.1, большая часть из которого переложена на проприетарный драйвер. К наушникам идёт обработанное стерео. Но блин, при этом в l4d/l4d2 реально слышно направление. А под linux logitech этот драйвер не портировали. Именно g35 гвоздями прибили мой игровой комп к винде :\

Так вот, есть ли многоканальные ( 5.1, 7.1 ) наушники, которые будут работать с pulseaudio в многоканальном же режиме?

Колонки не предлагать, соседи по подъезду линчуют.

 , ,

router
()

Linux и информация об ssd. Поговорим?

Доброго времени суток.

Сабж. На форуме crucial случайно наткнулся на команду

smartctl -l devstat $ssd_device
# smartctl -l devstat /dev/sdd
[...]
  7  =====  =                =  == Solid State Device Statistics (rev 1) ==
  7  0x008  1                6~ Percentage Used Endurance Indicator
                              |_ ~ normalized value

Да это ж способ узнать износ ssd в этом нашем linux'е! Единственный [теперь] известный мне способ. Как ни странно, поиск по лор'у ничего не находит. Даже в вики арча этого нет

Может кто-нибудь знает, как получить информацию о работе trim? Не просто lsblk -D, а даные контроллера по количеству свободных секторов.

 , ,

router
()

xmpp мёртв, и нифига никто не да здравствует

Доброго времени суток

Я похоже старый идиот и слишком привязался к xmpp. Но сегодня увидел похожую точку зрения и подумал, наверняка ещё кого-нибудь тошнит от бесконечного клонирования всяких виберо-ватсапо-хангауто-мейло-телеграмо-фигни. Потому что контакты разбежались кто куда и предлагают ставить сотни IM клиентов для общения.

Люто, бешено хочется найти ПО, которое бы через API работало с локально установленными клиентами всяких вибро-мейло-ханго-ватсапов, отдавая пользователю единую морду. В идеале клиент-серверное. Смело поставить зоопарк IM в виртуалку, и пусть они тырят друг у друга логи, не касаясь основной системы.

Но блин понимаю, что написание такого ПО с нуля на голову выше моих возможностей. Если есть готовые проекты на чём-нибудь высокоуровневом ( perl, python, ruby ), готов вписаться в разработку. Даже жабу выучить. Потому что уже реально задрало

----------

Субъективный взгляд на историю, может что пропустил:

Сначала были irc для хакиров и icq для всех остальных. И это было круто общаться с знакомыми и незнакомыми через интернет.

Потом пришёл xmpp как универсальная замена, а для совместимости сделаны транспорты для других протоколов. И это было ещё круче, один универсальный клиент. А сервер можно было поставить свой. Социальные сети давали свой xmpp сервер для домашних пользователей ( которым было пофиг чем пользоваться), всё было прекрасно.

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

Не знаю, первым ли начал гугл или нет, но для меня именно гугл своим хенгаутом похоронил xmpp. Контакты разбежались кто куда - скайп, вибер, vk и т.д.

Так вот. Нет ли у кого-нибудь ещё ощущения, что пора ещё раз запилить универсальный IM с транспортами для hangout, viber, skype и т.д.?

update

Если есть готовые проекты на чём-нибудь высокоуровневом ( perl, python, ruby ), готов вписаться в разработку

Прошу прощения, переоценил свои возможности. Спасибо человеку, который предложил присоединиться к разработке, но моих знаний python явно недостаточно.

 , ,

router
()

Реально ли вытащить диск из linear software raid, если на нём нет данных

Доброго времен суток

Сабж. Раньше использовал только raid1, теперь понадобился большой объём без отказоустойчивости. Создал linear raid на одном диске, перенёс данные. Добавил второй диск. Данных на нём ещё нет - ФС не расширял.

И тут внезапно понял, что оказался идиотом - ИМХО, гораздо лучше вместо linear raid использовать lvm

Не нашёл в man mdadm, как удалить диск из linear raid

Понятно, что у меня всегда есть вариант с dd. Скилов, чтобы расчитать skip, bs, count - хватит. Но вдруг можно без геморроя сделать через mdadm?

 linear,

router
()

firefox не позволяет добавить исключение для https

Доброго времени суток

Есть веб ресурс с https ( management module к одному блейдцентру ) , для которого firefox 37.0.1 ( linux, x86_64 ) отображает стандартную страницу «Недоверенное соединение». Но добавить исключение не позволяет. При нажатии на кнопку «Добавить исключение...» вообще ничего не происходит: не появляется окно с сертификатом, не крутится анимация reload в заголовке таба. Выполнить Refresh пробовал, не помогло.

При этом firefox 33.0.2 ( windows, x86_64 ) на той же странице позволяет добавить исключение.

Есть идеи, что полудурки из MoCo сломали на этот раз?

 , ,

router
()

Представлен отчёт о развитии проекта FreeBSD

 ,

router
()

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