Re: О вольных и невольных врагах свободного Интернета

2020-04-17 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Fri, 17 Apr 2020 08:59:42 
+0300:

 >>  > roundcube). Но что если у него нет почты?  
 >> 
 >> А cron ему куда пишет?

 > И cron-а у него тоже нет. У него systemd timers.

То есть, если у него что-то сломалось, то он об этом никогда не узнает?
Тогда ему ссылка на тексты отсюда, скорее всего, бесполезна...



Re: О вольных и невольных врагах свободного Интернета

2020-04-16 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Fri, 17 Apr 2020 03:05:22 +0300:

 >> А почему ему просто не переслать всю нитку по почте? Выделить и переслать -
 >> несколько секунд, вложений нет, улетит мгновенно.

 > Специально попробовал, конечно это на порядок лучше чем тыркать ссылки,
 > но в целом выглядит убого (в mutt, thunderbird и roundcube).
 > Но что если у него нет почты?

А cron ему куда пишет?



Re: О вольных и невольных врагах свободного Интернета

2020-04-13 Пенетрантность Artem Chuprina
Dmitry Alexandrov -> n...@nxmail.org  @ Tue, 14 Apr 2020 00:52:44 +0300:

 >>> n...@nxmail.org">--protonsignature--...@nxmail.org wrote:
  можно общаться почти в режиме реального времени.
 >>>
 >>> Так или иначе, нет ничего более незаменимого для элегантного перехода от
 >>> «заметил интересное письмо в паблике» в режим «треплемся в реальном
 >>> времени», чем полноценная децентрализованная почта: ведь круг адресатов
 >>> «реального времени» всегда счетен и конкретен, так что любые задержки на
 >>> проход письма в их направлении через сервер рассылки не «почти», а
 >>> полностью устранятся.
 >>
 >> Публикуете для своего сервера RSS ленту, открытую для всех, без браузера и
 >> JavaScript. Так лучше?

 > Я, честно говоря, не уловил вашей мысли.  Какое RSS лента имеет отношение к
 > тому, что по-нормальному (вот как сейчас) я пишу и точно знаю, мое письмо
 > будет доставлено вам вне зависимости от воли цензоров и без малейших задержек
 > на проход через третьи руки, а «Дискурс» принципиально замыкает весь поток
 > писем на себя?

Доставлено куда? На lists.debian.org? Чем это не "lists.debian.org
замыкает весь поток писем на себя"?

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

 >> Dmitry Alexandrov <321...@gmail.com> wrote:

Начиная вот лично с тебя.



Re: Discourse

2020-04-13 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Mon, 13 Apr 2020 16:57:46 +0300:

 >> redmine пробовали?

 > Я пробовал, и не впечатлился. Проект скорее мёртв, чем жив.

У нас используется. Работает. И даже жрать почти не просит. Для дела
достаточно.

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



Re: Discourse

2020-04-13 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Mon, 13 Apr 2020 13:47:17 
+0300:

 >> PS: лучше бы bugs.debain.org на что-нибудь приличное смигрировали. А
 >> то в дискусы развлекаться - много ума не надо.

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

redmine пробовали?

У меня нет опыта управления проектами, так что потребности менеджера я
не знаю ни там, ни там. Но поскольку "результатом автоматизации бардака
может быть только автоматизированный бардак", то вряд ли возможные
менеджерские ручки лучше, чем в редмайне имеют смысл.



Re: Настройка межсетевой экран / файрвол / брандмауэр ufw, iptables, gufw

2020-03-21 Пенетрантность Artem Chuprina
Dmitry Alexandrov -> L. Gogolev  @ Sat, 21 Mar 2020 19:48:54 +0300:

 >>> А теперь уже везде nft(8)
 >>
 >> версии стабильные есть?

 > Ну если именно он идет из коробки в стабильном (десятом) Дебиане, то 
 > наверное да.

Пакет ставить надо. И как показала практика, рановато им ещё
пользоваться.  Управляющая утилита (собственно nft) на сложных задачах
падает по нехватке памяти.

Это я в нее списочек адресов из-под РКН попытался засунуть. Даже близко не.

iptables + ipset в той же позе работает как часы. Плюс к этому ipset
позволяет провести проверку на попадание адреса в набор из командной
строки, а nft - нет.



Re: yandex-browser и пароли

2019-12-14 Пенетрантность Artem Chuprina
Andrey Jr. Melnikov -> debian-russian@lists.debian.org  @ Sat, 14 Dec 2019 
19:46:16 +0300:

 >> > У меня используется keepassx. Правда, линукс у меня все еще jessie, в
 >> > более новых другая мажорная версия, и я не проверял совместимость с
 >> > андроидом. Там менялся в том числе и формат файла. А вот Витус,
 >> > подозреваю, проверял. На винде он же, но стоит не первый год.

 >> Проверял. Тот keepass, который тогда был в fdroid.org, был совместим с
 >> обоими версиями.  Тот, который сейчас - заведомо совместим с новой. 

 > А почему не KeePassXC ? Как-то KeePassX самый заброшенный на фоне KeePass и 
 > KeePassXC.

Потому что, когда я искал себе программу с нужными свойствами, keepassx
был в дистрибутиве, работал, и совместимые программы для андроида и
винды существовали.

А дальше "не сломалось - не чини".

 > Под ведроид есть https://github.com/PhilippC/keepass2android который умеет
 > WebDav (в отличии от KeePass DX/KeePassDroid).



Re: yandex-browser и пароли

2019-12-13 Пенетрантность Artem Chuprina
Andrey Jr. Melnikov -> debian-russian@lists.debian.org  @ Fri, 13 Dec 2019 
01:03:07 +0300:

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

 >> Ну если речь идет о мнениях...

 > [...]

 >> Поэтому password manager должен быть отдельно от браузера и любое
 >> межпроцессное взаимодействие его с браузером должно происходить после
 >> явного действия пользователя в password-manager-е.

 > А что ставить то, чтоб и на линуксе и на винде и на ведроиде было "самое
 > безопасное хранилище паролей" и этим можно было пользоваться без прохождения
 > углубленных курсов по основам криптографии в ФСБ?

У меня используется keepassx. Правда, линукс у меня все еще jessie, в
более новых другая мажорная версия, и я не проверял совместимость с
андроидом. Там менялся в том числе и формат файла. А вот Витус,
подозреваю, проверял. На винде он же, но стоит не первый год.

На андроиде это KeepassDroid.



Re: yandex-browser и пароли

2019-12-12 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Thu, 12 Dec 2019 13:36:23 
+0300:

 >> > В яндексе категорически не умеют писать клиентский
 >> > софт. Поэтому не следует ставить себе на машину ни одного байта
 >> > бинарного кода, написанного в яндексе.  
 >> 
 >> Ну не знаю, Карты и Такси для ОС "Android" достаточно удобные и
 >> эстетичные :).
 >> 

 > Ну в ОС Андроид Гугль специально принял меры, чтобы неумение
 > разработчиков писать программы, которым можно доверять, не мешало.
 > Поэтому на телефон ставить продукты от яндекса можно.

Тоже крайне осторожно и вдумчиво. Вот Я-карты я снес. Потому что оно в
самый неподходящий момент вытаскивает прямо под палец рекламу Я-браузера
или Алисы. Со здоровенной кнопкой "установить", ага.

В итоге у меня от него остались только Я-метро и Я-транспорт, разумных
альтернатив которым нет. Еще Я-такси и Я-навигатор на крайний случай, в
норме я ими не пользуюсь.

А альтернативы Я-картам, к счастью, есть.



Re: выравнивание раздела: кому верить, fdisk или parted?

2019-12-06 Пенетрантность Artem Chuprina
yuri.nefe...@gmail.com -> debian-russian@lists.debian.org  @ Fri, 6 Dec 2019 
12:01:42 +0300 (MSK):

 >>> Лучше не напрягать мозг и не делать ни отступов ни таблиц разделов.
 >>
 >> Своп тоже не делать, чтобы мозг не перегрелся? :)
 >> --
 >> Eugene Berdnikov
 >>
 >   Опасно так шутить.
 >   Вот в планах по оптимизации кластера для обработки данных
 >   стоит - удалить своп.
 >   (Кусочек из презентации в приложении.)

Не всегда сегфолт лучше, чем замедление работы :)





Re: Firefox неправильно восстанавливает запомненную при выходе позицию

2019-10-03 Пенетрантность Artem Chuprina



On 1 October 2019 11:23:34 am GMT+02:00, "Andrey Jr. Melnikov" 
 wrote:
>Artem Chuprina  wrote:
>
>
>> On 29 September 2019 9:50:02 pm GMT+02:00, "Andrey Jr. Melnikov"
> wrote:
>> >> При этом что в шелле есть логические операции, что в командной
>строке
>> >> test есть логические операции и они РАЗНЫЕ.
>> >Витус, как так ЛОГИЧЕСКИЕ операции могут быть разными? AND и OR -
>они и в
>> >африке AND и OR.
>
>> Я, конечно, зануда, но должен заметить, что они у нас ни хрена не
>логические. 
>Вы мне тут оба-двое зубы не заговаривайте.
>
>> Они вычислительные, и их результат сильно зависит от порядка записи
>операндов.
>
>Ух, 1 & 0 = 0 таки не 0 & 1 = 0 ? У вас реальность не подтекает?

Пока там _константы_ 1 и 0 — да. И то в sh ровно наоборот :) Потому что в 
логических операциях истина и ложь, а использование для их кодирования 0 и 1, 
мнээ, несколько произвольно.

А вот как только операнды оказываются выражениями с побочными эффектами, так 
сразу нет. И в каждом первом языке считается нормальным, если второй операнд & 
имеет смысл (т.е. шанс не выкинуть исключение) только если первый истинен. И 
если поменять их местами, то вместо false мы в результате получим хрясь.

Для вычислительных and и or это нормально, в теории вычислений есть понятие 
"вычисление не дало осмысленного результата". А для логических — нет.

-- 
Best regards, Artem.



Re: «Единственный мне известный логичный язык - это Tcl»

2019-10-01 Пенетрантность Artem Chuprina



On 30 September 2019 11:41:00 pm GMT+02:00, Dmitry Alexandrov 
<321...@gmail.com> wrote:
>Artem Chuprina  wrote:
>> On 29 September 2019 7:23:47 pm GMT+02:00, Dmitry Alexandrov
><321...@gmail.com> wrote:
>>>> Единственный мне известный логичный язык - это Tcl
>>>
>>>«Схема» предельно логична.  Да и вообще, пожалуй, любой Лисп будет
>пологичнее Тикля.
>>
>> Схема еще имеет приличные шансы быть логичнее тикля, но, сдается мне,
>они одинаково логичны. А вот прочие лиспы, в которых невозможно в
>тексте программы отличить специальную форму (ленивое вычисление
>параметров) от функции (жадное) отчетливо менее логичны.
>
>Вы так говорите, будто в «Схеме» специальную форму от функции отличить
>можно.

Про Схему точно не помню, но помню, что она в этом месте была
намного прямее прочих лиспов. Т.е. встроенную специальную
форму тоже не отличить, но их очень конечное количество. А с
макросами было прямее.

-- 
Best regards, Artem.



Re: Firefox неправильно восстанавливает запомненную при выходе позицию

2019-09-30 Пенетрантность Artem Chuprina



On 29 September 2019 9:50:02 pm GMT+02:00, "Andrey Jr. Melnikov" 
 wrote:
>> При этом что в шелле есть логические операции, что в командной строке
>> test есть логические операции и они РАЗНЫЕ.
>Витус, как так ЛОГИЧЕСКИЕ операции могут быть разными? AND и OR - они и в
>африке AND и OR.

Я, конечно, зануда, но должен заметить, что они у нас ни хрена не
логические. Они вычислительные, и их результат сильно зависит
от порядка записи операндов. В случае шелла (самого шелла, а не
builtin [) куда сильнее, чем в случае test, поскольку тесты test не
обладают побочными эффектами (ну, хотя бы по идее — по 
факту-то тест на наличие файла на автомонтируемой файловой
системе ими обладает).

-- 
Best regards, Artem.



Re: «Единственный мне известный логичный язык - это Tcl» (was: Firefox неправильно восстанавливает запомненную при выходе позицию)

2019-09-30 Пенетрантность Artem Chuprina



On 29 September 2019 7:23:47 pm GMT+02:00, Dmitry Alexandrov <321...@gmail.com> 
wrote:
>> Единственный мне известный логичный язык - это Tcl
>
>«Схема» предельно логична.  Да и вообще, пожалуй, любой Лисп будет
>пологичнее Тикля.

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

-- 
Best regards, Artem.



Re: Проиграна ли борьба за вычислительную свободу?

2019-08-11 Пенетрантность Artem Chuprina
Eugene Berdnikov -> debian-russian@lists.debian.org  @ Sat, 10 Aug 2019 
10:43:28 +0300:

 >> Вот посмотрите на жителей Крыма которым взяли и обрезали доступ ко всем
 >> ресурсам в юрисдикции США, от платежных систем до гитхаба. Просто
 >> для того, чтобы наказать то государство, которое теперь с этого Крыма
 >> собирает налоги.

 >  Государство этим не накажешь, для него это как слону дробина. :) Санкции
 >  они для раскачки ситуации в Крыму, чтобы устроить там майданы и революции.
 >  Но жители Крыма нынче своими глазами видят, сколько вкладывается средств
 >  в инфраструктуру, как строятся днём и ночью автодороги (да-да, даже ночью,
 >  кто не верит может сам слетать и посмотреть), и понимают, что 30 лет их
 >  налоги просто куда-то выкачивались, и лишь сейчас ситуация хоть как-то
 >  нормализуется.

Я с крымчанами тоже беседовал. В 15-16 годах. Там присутствовало мнение,
что это всё, увы, тоже больше для PR, а самих их потихоньку выдавливают
из Крыма (жизнь дорожает, а зарплаты не растут). Собственность же
скупают граждане из Москвы. Не рядовые, разумеется. Я бы, пожалуй,
заподозрил, что в таком раскладе именно для них, а не для крымчан,
строятся эти дороги.

Хотя, конечно, Штатам для PR выгодно как раз раскачать ситуацию в Крыму,
не вопрос.



Re: Проиграна ли борьба за вычислительную свободу?

2019-08-11 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sat, 10 Aug 2019 07:40:08 +0300:

 > И это крайность, печально что "отстаивать интересны" однозначно ассоциируется
 > с "баррикадами".

О неработоспособности трех предыдущих коробок вы сообщили сами.

  Евгений, вы действительно не понимаете, что против доморощенных
  "технических методов", государство выставит десять технических и пять
  законов, причём за ваш счёт? 
 >>> Вам действительно платят за троллинг в рассылке и попытки убедить технарей,
 >>> что они бессильны против государства с его "слугами народа", принимающими
 >>> один за другим неработающие законы-страшилки? Ну-ну, это забавно. :) 
 >>
 >> Скорее на баррикады зазывает.
 >>
 >> Только недавно подумал: что-то давно в рассылке никакого срача не было, и на
 >> тебе.
 >>



Re: BCO System Cryptographic Plugin

2019-07-26 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Fri, 26 Jul 2019 09:06:00 +0300:

 > А, ясно.
 > Но тогда и банк выбирает предприятие.

Ну, да. Но ИП, например, это тоже предприятие. Расчетный счет ИП — это
не то же самое, что счет физлица, и тут вполне можно словить
отечественную, гм, криптографию по полной программе, со всеми поборами.

 > Проще действительно отдельную машину с виндой держать с "КриптоПРО" только 
 > для
 > захода в кабинет банка.
 > Либо попробовать токен пробросить в виртуалку.
 > Это ж USB, ему должно быть не важно, что не физическая машина.


 > 26.07.2019 08:30, Artem Chuprina пишет:
 >> artiom -> debian-russian@lists.debian.org  @ Thu, 25 Jul 2019 23:18:12 
 >> +0300:
 >>
 >>   > Я использовал его не для логина в банк, а для логина администратора в
 >>   > разрабатываемом комплексе, но через стандартную библиотеку для pkcs11 
 >> (либо
 >>   > слегка доработанную) и свой клиент, её использующий.
 >>   > С банками не знаю.
 >>   > Лично по-моему, токен - это overkill для банка, хотя может я и не прав.
 >>   > Если вы там не держите миллионы, он не нужен.
 >>   > А если вы держите миллионы в российском банке, - тем более.
 >>
 >> Я так подозреваю, что в режиме для предприятий не важно, держите вы в
 >> российском банке три миллиона или три рубля. Банк требует только такой
 >> авторизации, и фсё. Причем, скорее всего, он бы, может, и рад иначе, да
 >> от него этого требует Центробанк.
 >>
 >> Физлицам проще.
 >>
 >>   > 25.07.2019 21:58, Коротаев Руслан пишет:
 >>   >> artiom  пишет:
 >>   >>
 >>   >>> КриптоПРО - отдельный пакет.
 >>   >>> Токены к нему отношения не имеют.
 >>   >>> Как минимум, на Linux я использовал RuToken и JaCarta.
 >>   >>
 >>   >> Да, я в курсе что рутокен можно использовать на linux. На портале 
 >> какого
 >>   >> банка вы смогли залогинтся используя только рутокен, без криптопро и
 >>   >> прочих криптопровайдеров?
 >>   >>
 >>



Re: BCO System Cryptographic Plugin

2019-07-25 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Thu, 25 Jul 2019 23:18:12 +0300:

 > Я использовал его не для логина в банк, а для логина администратора в
 > разрабатываемом комплексе, но через стандартную библиотеку для pkcs11 (либо
 > слегка доработанную) и свой клиент, её использующий.
 > С банками не знаю.
 > Лично по-моему, токен - это overkill для банка, хотя может я и не прав.
 > Если вы там не держите миллионы, он не нужен.
 > А если вы держите миллионы в российском банке, - тем более.

Я так подозреваю, что в режиме для предприятий не важно, держите вы в
российском банке три миллиона или три рубля. Банк требует только такой
авторизации, и фсё. Причем, скорее всего, он бы, может, и рад иначе, да
от него этого требует Центробанк.

Физлицам проще.

 > 25.07.2019 21:58, Коротаев Руслан пишет:
 >> artiom  пишет:
 >>
 >>> КриптоПРО - отдельный пакет.
 >>> Токены к нему отношения не имеют.
 >>> Как минимум, на Linux я использовал RuToken и JaCarta.
 >>
 >> Да, я в курсе что рутокен можно использовать на linux. На портале какого
 >> банка вы смогли залогинтся используя только рутокен, без криптопро и
 >> прочих криптопровайдеров?
 >>



Re: крик души :)

2019-05-20 Пенетрантность Artem Chuprina
Mykola Nikishov -> debian-russian@lists.debian.org  @ Mon, 20 May 2019 22:11:16 
+0300:

 >> Не хочите Debian - попробуете не-Debian:
 >> http://www.gnu.org/software/guix/

 > Не поможет - "качество софта" хромает, про "качество пакетирования"
 > в условиях задачи ничего нет.

Качество пакетирования тоже хромает.



Re: крик души :)

2019-05-20 Пенетрантность Artem Chuprina
Stanislav Maslovski -> debian-russian@lists.debian.org  @ Mon, 20 May 2019 
19:42:10 +0100:

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

 > Меня упорно не покидает ощущение, что с каждым новым релизом
 > качество софта в Debian деградирует.

 > Что с этим делать, граждане? Так как это, похоже, нынче глобальный
 > тренд...

Глобальный. Есть софт, который не становится хуже, но это не
мейнстримный гуй. Есть софт, который не меняется, за ненадобностью. Он,
соответственно, тоже не становится хуже.

А так ничего более умного чем "хочешь, чтобы было сделано хорошо -
сделай сам"...



Re: debian sid codename

2019-05-08 Пенетрантность Artem Chuprina
Igor Savluk -> Dmitry Alexandrov  @ Wed, 8 May 2019 16:30:36 +0300:

 >>> Ага, а если репу добавляли, установили пакет и удалили репу. Как теперь в
 >>> скрипте я смогу узнать что я сижу на sid?
 >>
 >> А почему вы решили, что вы «сидите на Сиде»?  Вы сидите на тестируемом
 >> выпуске с одним левым пакетом.  А через недельку-другую, скорее всего,
 >> будете сидеть просто на тестируемом выпуске, без левых пакетов.

 > Мндааа, а от вопроса мы таки ушли. По вопросу можете ответить?

Мне уже надоело, и я, пожалуй, все-таки отвечу.

sid - это симлинк на текущий unstable. В метаинформации слово sid не
отображается никак. Точка.

Таким образом, ничего более умного, чем парсинг sources.list, придумать
невозможно, а если репозиторий оттуда удалили, то привет, вы уже по
определению не сидите на sid.



Re: ЭЦП и RuToken

2019-03-27 Пенетрантность Artem Chuprina
Eugene Berdnikov -> debian-russian@lists.debian.org  @ Wed, 27 Mar 2019 
14:14:24 +0300:

 >>  >>  > А есть вероятность запустить всё это хозяйство на Debian stretch?
 >>  >>  > Выпустил сертификат в виртуальной винде, оно встало криво, просят
 >>  >>  > физическую машину с виндой, а у меня таких просто нет. Вот дуиаю,
 >>  >>  > может на дебе проще будет?  
 > ...
 >> Вот идея, что оно под виртуальной виндой встало криво и просят
 >> физическую, наводит на мысль, что то ли там стало все намного хуже,

 >  Стало хуже по сравнению с чем? Хотелось бы услышать от спецов по
 >  виртуализации, какие гипервизоры сегодня дают полноценный проброс
 >  usb-устройств с физической на виртуальную машину, даже если физическая
 >  поддерживает vt-d. Меня лично одолевают подозрения, что стоит выйти
 >  за рамки списка "мышка, клава, флешка" как встретятся проблемы.

В моем опыте был USB-ключ от некой программы (нашей), который вполне
годным образом работал по крайней мере в VmWare Player и в VirtualBox с
несвободным пакетом дополнений, включающим проброс USB.

 >> то ли проблема не в рутокене самом по себе, а в системе PKI и подписи,
 >> которая им пользуется. Поскольку нужен-то не сам рутокен, а положенный
 >> на него сверху софт.

 >  Вряд ли проблема в верхнем софте, поскольку внутрисистемное взаимодействие
 >  (софта с драйвером токена) не должно быть проблемой при виртуализации.

Там с большими шансами еще прослойка в виде КриптоПро CSP. Которая как
раз может как-то по-разному вести себя в случае виртуальной и физической
винды. Она платная, и там может быть защита.



Re: ЭЦП и RuToken

2019-03-27 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Wed, 27 Mar 2019 11:59:44 
+0300:

 >>  > А есть вероятность запустить всё это хозяйство на Debian stretch?
 >>  > Выпустил сертификат в виртуальной винде, оно встало криво, просят
 >>  > физическую машину с виндой, а у меня таких просто нет. Вот дуиаю,
 >>  > может на дебе проще будет?  
 >> 
 >> Подозреваю, что нет. Даже если сам рутокен заведется (хотя в этом есть
 >> большие сомнения, если он даже виртуальную винду не осилил), то тот
 >> софт, для подписи в котором он вообще нужен, наверняка еще более крив
 >> и виндоус-онли.

 > Погоди, погоди, мы ж с тобой десять лет назад вместе делали систему
 > для ДНС-регистраторов как раз на рутокенах. И оно даже под
 > Solaris-ом работало, не то что под линуксами. То есть какие-то
 > PCSC-драйвера для Linux у Актив-а есть. Насколько я помню, тогда была 
 > совместимость с openct. Как сейчас - не знаю. Но тогда у меня сложилось
 > впечатление об Актив, как о наиболее open source friendly производителе 
 > криптотокенов.

 > Сейчас я у них на сайте вижу среди партнеров почти всех производителей
 > российских сертифицированных дистрибутивов Linux - Astra, AltLinux,
 > RosaLabs, Red Soft, МСВСфера.

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




Re: ЭЦП и RuToken

2019-03-27 Пенетрантность Artem Chuprina
Grigory Fateyev -> debian-russian@lists.debian.org  @ Wed, 27 Mar 2019 10:52:16 
+0300:

 > А есть вероятность запустить всё это хозяйство на Debian stretch?
 > Выпустил сертификат в виртуальной винде, оно встало криво, просят
 > физическую машину с виндой, а у меня таких просто нет. Вот дуиаю, может
 > на дебе проще будет?

Подозреваю, что нет. Даже если сам рутокен заведется (хотя в этом есть
большие сомнения, если он даже виртуальную винду не осилил), то тот
софт, для подписи в котором он вообще нужен, наверняка еще более крив и
виндоус-онли.



Re: что случилось с дебиан вики? debian wiki

2019-03-24 Пенетрантность Artem Chuprina
Sergey Spiridonov -> debian-russian@lists.debian.org  @ Sun, 24 Mar 2019 
18:55:57 +0100:

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

 > ...

 >> > Что случилось?  
 >> 
 >> Ну, очевидно, вас там забанили по адресу.  Пишите на
 >> .  Для большей информативности еще
 >> можно проверить, касается ли это также вашего IPv6-адреса.

 > Да, написал в debian-ad...@lists.debian.org, получил любопытный ответ.
 > Оказывается меня забанили потому что я пытался зарегистрироваться в
 > вики на мой почтовый адрес - sena at s73.work.

 > Домен верхнего уровня (TLD) work у них внесён в чёрный список, и у них
 > скрипт автоматом банит все ай-пи адреса, с которых пытаются
 > зарегистрироваться с почтовым адресом в домене верхнего уровня work.

 > И мне посоветовали попробовать другой почтовый вдрес.

 > Вот теперь думаю, как бы им повежливей написать, что они неправы?

"Some people at Debian think that Debian is not about choice. Do you
think that Debian is also not about work?"

(К первому предложению ссылку бы найти, конечно...)



Re: firefox + suspend to disk

2019-03-06 Пенетрантность Artem Chuprina
Stanislav Maslovski -> debian-russian@lists.debian.org  @ Wed, 6 Mar 2019 
11:44:41 +:

 > Ещё одна странность, замеченная после апгрейда до testing. Если на
 > момент перехода в спячку (hibernate) был запущен Firefox c несколькими
 > открытыми табами, система весьма долго приходит в себя после
 > просыпания. Даже после появления на экране иксовой картинки, проходит
 > несколько минут (!), прежде чем ноут прохрюкается (HDD все это время
 > активен и система жутко лагает) и можно будет начать работать.

 > Все это происходит на ноуте с i5-2410M CPU @ 2.30GHz и 4 GB RAM, из
 > которых минимум 50% обычно свободно. Как-то раньше такого торможения
 > на нем не замечалось...

 > Что с этим можно сделать?

По моему опыту FF с открытыми табами жрет поболе гига собственно памяти
и 3 с фигом виртуальной. Поэтому я его даже перед suspend-to-ram
выключаю, оно даже оттуда тормозит. Jessie, 6 GB RAM.

Так что ежели оно из гибернейта чекает все свои 3 с фигом гига
виртуальной памяти, то боюсь, кроме как принудительно прибивать его из
скрипта засыпания...



Re: Генерация pool-based репозиториев

2019-03-04 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Tue, 5 Mar 2019 07:27:45 
+0300:

 >>  > Прикрутить туда осмысленную систему exclusive и shared блокировок
 >>  > при условии того, что задания крутятся на куче разных машин и в
 >>  > репозиторий ходят apt-ом весьма нетривиально.  
 >> 
 >> Любая система с блокировками содержит race condition :) Один мутекс
 >> еще нет, а любая система уже да.

 > Ну, слава богу, в конторе, которая занимается разработкой СУБД, люди,
 > способные грамотно спроектировать систему блокировок - найдутся.
 >  
 > В принципе, одного мутекса НА КАЖДЫЙ РЕПОЗИТОРИЙ (например, все дебианы
 > это один репозиторий, все убунты - другой, а каждая астра - отдельный)
 > тут хватит.

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

Собственно, не знаю, как нынче в конторах, которые занимаются
разработкой СУБД, а вообще в мире параллельных выполнений нынче модно,
если ресурсы позволяют (ага, это несколько дороже, чем блокировки, порой
заметно дороже, зато надежнее) оптимистическая конкуренция. Это вот то,
что в описанном случае выражается в виде "сделаем свою копию,
эксклюзивную по построению, и потом попытаемся заменить ею
оригинал". Если операция замены обломалась по причине неконсистентности,
откатываем все нафиг (ну, "все", вообще говоря, контекстно, не факт, что
всю сборку целиком) и повторяем заново.

Обычно при реализации какая-то блокировка для момента замены (она, как
водится, _почти_ атомарна) употребляется, но она уже простая, и ее можно
сделать надежной. Если говорить о вышеописанной реализации, то можно
сделать специально обученного демона, которому делегируется эта
операция. Она простая, а запросы можно выполнять строго по очереди.



Re: Генерация pool-based репозиториев

2019-03-04 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Tue, 5 Mar 2019 07:27:45 
+0300:

 >> Есть еще чуть более хитрый вариант — cp -al, rsync в копию, и потом
 >> _почти_ атомарная пара rename либо перевешивание симлинка (тоже
 >> _почти_ атомарное). Второе лучше (см. ниже).

 > Вот для этого у rsync есть --link-dest. Которым уже довольно давно
 > научился пользоваться rsnapshot. Поэтому создавать копию можно прямо
 > тем же rsync-ом в процессе.

Ух, а вот это я прощелкал...

 >>  > Отдельное развлечение случается когда у тебя параллельно работает
 >>  > десяток jenkins-овских заданий, собирающих разные пакеты, зависящие
 >>  > друг от друга. Может запросто получиться так, что задание 1 сделало
 >>  > apt-get update, потом задание 2 выложило новую версию своего
 >>  > пакета и перергенерировало packages, а потом задание 1 захотело
 >>  > этот пакет поставить, потому что он у него Build-Depends.  
 >> 
 >> В таком раскладе либо задание 2 не должно удалять старую версию пакета
 >> (а делать это должен кто-то третий в конце всего прогона или еще по
 >> какому-то критерию "старая версия больше никому не нужна"), либо у
 >> тебя неконсистентность прямо в постановке задачи.
 >> 
 >> То, что задание 2 перегенерировало packages, само по себе для задания
 >> 1, которое уже сделало apt-get update, по барабану. Важно, чтобы пакет
 >> оставался.

 > В принципе, конечно да. Если бы поднимать версию пакета при каждом
 > билде, можно было бы действовать и так. Хотя сформулировать критерий
 > "эта версия пакета больше никому не нужна" крайне нетривиально.

 > Но в процессе отладки пакета его можно пересобрать и десять, и двадцать
 > раз, и в распределенной системе сборки он каждый раз должен попадать во
 > внутренний репозиторий, доступный для других заданий.

 > Поэтому у меня сейчас во внутреннем репозитории допустима замена пакета
 > без изменения его версии. А вот тут уже неатоммарность пары apt-get
 > update - apt-get install вылезает в полный рост.

А вот для "на автомате" я бы добавлял какой-нибудь изменяемый хвостик...

И критерий "больше никому не нужна" — есть хвостик от автомата, версия
не самая свежая, и файл старше некоторого интервала, за который любая
сборка, которая могла бы его использовать, если она не зависла, должна
была закончиться.

С ручной сборкой, конечно, хуже. Вручную каждый раз хвостик
менять... Впрочем, тоже можно заскриптовать.

А когда у тебя пакет отладился, ты собираешь его без этого хвостика в
версии.

 >> Другое дело, что race condition вида "у задания 1 прямо в процессе
 >> apt-get update могли оказаться Release и Packages разных версий
 >> репозитория" все равно остается.
 >> 
 >> Чтобы его не было, см. выше про симлинк. Перед apt-get update делается
 >> readlink, прочитанное имя пишется в sources.list, и уже с этим

 > readlink по http?

Можно и по http. Скрипт, который реагирует на запрос "мне, пожалуйста,
актуальную строчку для sources.list для такого-то дистрибутива". Вот он
уже на раз сделает readlink.

 >> отрезолвленным именем, где заведомо консистентный репозиторий, который
 >> уже никогда не поменяется, можно работать.

 > Это для отрелизенных пакетов я могу себе позволить хранить
 > заведомо-консистентные репозитории на каждый момент времени. Если это
 > делать по схеме rsnapshot-а, т.е. каждый пакет хранить один раз и
 > держать на него десяток хардлинков из разных снапшотов. 

 > А если хранить репозитории вечно для всех промежуточных билдов,
 > успевших собрать хотя бы один пакет (а ведь туда для консистентности
 > придется копировать все остальные пакеты из старого репозитория)
 > никакого storage не хватит.

Я не сказал "хранить вечно". Я сказал "никогда не поменяется". Но может
быть удален целиком. Хранится вечно только то, что отрелизено. И да,
хардлинки.

Или, если аккуратно обходиться с версиями, то можно pool просто общий
держать.

 >>  > Прикрутить туда осмысленную систему exclusive и shared блокировок
 >>  > при условии того, что задания крутятся на куче разных машин и в
 >>  > репозиторий ходят apt-ом весьма нетривиально.  
 >> 
 >> Любая система с блокировками содержит race condition :) Один мутекс
 >> еще нет, а любая система уже да.

 > Ну, слава богу, в конторе, которая занимается разработкой СУБД, люди,
 > способные грамотно спроектировать систему блокировок - найдутся.
 >  
 > В принципе, одного мутекса НА КАЖДЫЙ РЕПОЗИТОРИЙ (например, все дебианы
 > это один репозиторий, все убунты - другой, а каждая астра - отдельный)
 > тут хватит.

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

Во-во.

 > Вообще говоря, для практических целей можно было бы обойтись
 > троекратной попыткой повтора пары apt-get update/apt-get install
 > с задержкой. Вероятность того что задание при этом обломится и
 > потребует ручного перезапуска упадет до практически приемлемой.

... или так.



Re: Генерация pool-based репозиториев

2019-03-04 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Mon, 4 Mar 2019 17:28:51 
+0300:

 > Чтобы миррор всегда был консистентным, необходимо действовать в
 > следующей последовательности:

 > 1. Сначала скачать все новые пакеты
 > 2. Потом скопировать Packages{,.gz,.bz2} Release и Release.gpg и 
 > единомоментно атоммарной операцией из заменить.
 > 3. Удалить более ненужные пакеты.

 > А rsync --delete делает не так. Он СНАЧАЛА удаляет более ненужные
 > файлы, а потом уже копирует новые.

rsync --delete-after

и вообще почитать, какие там бывают варианты у delete.

 > Ну и о том, что Release содержит контрольную сумму Packages и менять
 > их нужно одновременно - тоже не в курсе.

А вот этого он уже не знает, конечно.

Есть еще чуть более хитрый вариант — cp -al, rsync в копию, и потом
_почти_ атомарная пара rename либо перевешивание симлинка (тоже _почти_
атомарное). Второе лучше (см. ниже).

 > Отдельное развлечение случается когда у тебя параллельно работает
 > десяток jenkins-овских заданий, собирающих разные пакеты, зависящие
 > друг от друга. Может запросто получиться так, что задание 1 сделало
 > apt-get update, потом задание 2 выложило новую версию своего пакета 
 > и перергенерировало packages, а потом задание 1 захотело этот пакет
 > поставить, потому что он у него Build-Depends.

В таком раскладе либо задание 2 не должно удалять старую версию пакета
(а делать это должен кто-то третий в конце всего прогона или еще по
какому-то критерию "старая версия больше никому не нужна"), либо у тебя
неконсистентность прямо в постановке задачи.

То, что задание 2 перегенерировало packages, само по себе для задания 1,
которое уже сделало apt-get update, по барабану. Важно, чтобы пакет
оставался.

Другое дело, что race condition вида "у задания 1 прямо в процессе
apt-get update могли оказаться Release и Packages разных версий
репозитория" все равно остается.

Чтобы его не было, см. выше про симлинк. Перед apt-get update делается
readlink, прочитанное имя пишется в sources.list, и уже с этим
отрезолвленным именем, где заведомо консистентный репозиторий, который
уже никогда не поменяется, можно работать.

 > Прикрутить туда осмысленную систему exclusive и shared блокировок при
 > условии того, что задания крутятся на куче разных машин и в репозиторий
 > ходят apt-ом весьма нетривиально.

Любая система с блокировками содержит race condition :) Один мутекс еще
нет, а любая система уже да.



Раскладки клавиатуры

2019-03-02 Пенетрантность Artem Chuprina



On 2 March 2019 1:58:54 pm GMT+03:00, Damir Hakimov  
wrote:
>сб, 23 февр. 2019 г. в 13:13, Artem Chuprina :
>> Зато свежая hacker's keyboard внезапно знает Carpalx
>
> Ой, мама... даже простое разглядывание этой раскладки приводит к
>головокружению.
>Неужто усилия на освоение новой раскладки оправданы? Это ж на уровне
>спинного мозга запоминается, а его не так легко перенастроить.

Оправданы не всегда. Но раз в три-четыре года можно и попробовать.

Надо понимать, что экранная клавиатура с точки зрения рефлексов — совсем не то 
же самое, что механическая. У меня, как показала практика, совершенно спокойно 
уживаются QWERTY на механической и Dvorak на экранной. Более того, я 
подозреваю, что на планшете, где я всегда набираю двумя большими пальцами, 
используя Ctrl и Alt (Linux Deploy, в нем Debian, терминалом VX Connectbot), и 
на телефоне, где чаще одним и в "обычных" андроидных программах, имеют смысл 
разные клавиатуры.

И намерен проверить эту мысль...
-- 
Best regards, Artem.



Re: Правка xkb/rules без dpkg-divert(1)

2019-02-23 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Sat, 23 Feb 2019 16:00:08 +0300:

 >> андроидная hacker's keyboard

 > Неужели она удобна как основная?

Мне - да.



Re: Правка xkb/rules без dpkg-divert(1)

2019-02-23 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Sat, 23 Feb 2019 12:14:37 +0300:

 > On 18/02/2019 18:14, Artem Chuprina wrote:

 >> переключить свою хардверную клавиатуру с "хардверными" QWERTY на
 >> Dvorak тоже что-то не готов, хотя экранная на мобильных устройствах
 >> у меня как раз Dvorak.

 > Почему не Colemak?

Потому что про Dvorak андроидная hacker's keyboard знает, а про Colemak
и я-то впервые слышу...

Зато свежая hacker's keyboard внезапно знает Carpalx, про который я тоже
впервые слышу, и которая, судя по сравнению, больше подходит для
небольших тачскринов, где набор идет двумя пальцами, а не всей рукой.

И судя по тому же найденному отзыву, для печати всей рукой как раз
Dvorak лучше, чем Colemak.



Re: Правка xkb/rules без dpkg-divert(1)

2019-02-18 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Mon, 18 Feb 2019 17:41:06 
+0300:

 >> Я чего не могу понять. Вот есть xkb весь из себя такой настраиваемый.
 >> А как эти настройки применить --- а никак, пиши, дорогой
 >> пользователь, скрипты.

 > А это потому что роботы уже поработили людей, и об удобстве
 > пользователей никто не думает, думают об удобстве железяк.

 > То есть простейшая идея, что на машине может быть два пользователя и им
 > нужны разные настройки клавиатуры, в голову авторам этого добра не
 > пришла. Зато идея того, что может быть две клавиатуры, которым не
 > годятся одинаковые настройки - пришла.

... при этом почему-то при втыкании второй надо испортить настройки первой...

P.S. А я, кстати, легко могу представить. У меня жена, знаешь ли,
санскритолог. Привезти ей из Индии клавиатуру с надписанными символами
деванагари можно, а вот чтобы на одной были и деванагари, и кириллица...

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

Я, кстати, ты будешь смеяться, переключить свою хардверную клавиатуру с
"хардверными" QWERTY на Dvorak тоже что-то не готов, хотя экранная на
мобильных устройствах у меня как раз Dvorak.



Re: mail dups

2019-02-08 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Fri, 8 Feb 2019 13:02:54 +0300:

 >> А товарищи, способные настроить то, что более удобно им, в итоге один
 >> фиг предпочтут procmail. Он, конечно, имеет корявый синтаксис, но зато
 >> полноценный по функциональности, а урезать функциональность самому себе
 >> смысла нет.

 > А я всегда думал, что "полноценный по функциональности" это exim filters.

Что-то я не помню, чтобы он умел раскладывать по разным папкам в
Maildir. Так-то они тоже подключены к процессу, благо почтовка своя.

Ну и синтаксис у них... многословнее, чем у procmail, но не лучше.



Re: mail dups

2019-02-08 Пенетрантность Artem Chuprina
Коротаев Руслан -> debian-russian@lists.debian.org  @ Fri, 8 Feb 2019 09:03:34 
+:

 >> Кстати, простым юзерам на imap-е (для которых sieve и был придуман)
 >> нужна поддержка со стороны сервера, а также sieve-клиент, который
 >> сможет юзеру изобразить менюшку для того расширения. Ведь не будет же
 >> простой юзер программу на sieve писать и отлаживать, скобки-кавычки
 >> пересчитывать.  Ему готовую менюшку подай. Иначе рыдать будет он, а не
 >> я. :)

 > А sieve-клиент который можно использовать в скриптах есть (без GUI,
 > например так [1])? На sieve.info ссылки на консольные клиенты не
 > рабочие, в репозитории только плагины и дополнения к серверам. Я
 > использую procmail для доставки почты с Amazon SES [2], я бы попробовал
 > sieve, раз уж он будет стандартом, но у него нет хорошей реализации в
 > виде консольной утилиты или я плохо искал.

Рискну предположить, что стандартом он не будет. Хотя я, в общем, даже
пользуюсь dovecot-sieve.

Стандарта на эту тему вообще не будет. В массовом использовании будет не
IMAP, а веб-интерфейс, провайдеро-специфичный. Либо
провайдеро-специфичный же клиент, который тоже веб-, но в потрохах.

А товарищи, способные настроить то, что более удобно им, в итоге один
фиг предпочтут procmail. Он, конечно, имеет корявый синтаксис, но зато
полноценный по функциональности, а урезать функциональность самому себе
смысла нет.



Re: gnome $LANG

2019-01-30 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Wed, 30 Jan 2019 16:19:10 
+0300:

 >> Бывают задачи, которые надо решать от раза в полгода до раза в два
 >> года. Инструменты их решения не должны быть такими, чтобы их интерфейс
 >> надо было отдельно изучать. Потому что за полгода он забывается, и
 >> изучать его надо заново.

 > Интерфейс для таких задач должен быть самодокументирован. Поскольку за
 > полгода забудется не только какие кнопки нажимать, но и на какие грабли
 > надо  не наступить.

 > К сожалению, писать такие интерфейсы очень сложно. Потому что человек,
 > который постоянно работает с такой задачей (и, соответственно знает
 > ее достаточно хорошо, чтобы написать программу), считает совершенно
 > неочевидные causal user'у вещи самоочевидными.

Вот именно поэтому некоторое соглашение о поведении интерфейса является
разумным паллиативом. Запустив раз в полгода libreoffice, я заранее
знаю, где в нем искать open/save/save as/print/help, форматирование
текста, управление таблицами, примерно представляю, как ввести
агрегатную функцию, если речь про calc, и т.п.

Запустив же раз в полгода какой редактор OSM, я вынужден заново
выяснять, как там сделать то, что мне нужно. Там это, впрочем,
оправдано. Там даже раз в полгода мне обычно нужно ввести или
передвинуть несколько сотен точек, и эргономика этого процесса важна. А
в случае с офисом — не важна.



Re: gnome $LANG

2019-01-30 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Wed, 30 Jan 2019 15:27:16 
+0300:

 >> > > Вопрос в том, что ставить пользователю, если он сам ничего не
 >> > > захотел? Что лучше всего подходит для абстрактного
 >> > > виндоусъюзера?  
 >> > 
 >> > Ставить надо (что себе, что другим) набор разных и не связанных
 >> > между собой программ. Идея DE порочна сама по себе.  
 >> 
 >>  Чем идея DE порочна? (давненько здесь флейма не было)

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

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

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




Re: gnome $LANG

2019-01-29 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Tue, 29 Jan 2019 21:47:57 +0300:


 > свежеустановленный sid

 > руками установленны только gnome-session gnome-control-center
 > lightdm-autologin-greeter

 > % cat /etc/default/locale
 > LANG=C.UTF-8

 > lightdm логинит в пользователя, он запускает gnome-control-center, и ставит
 > там "Region & Language" -> Language = "Русский", Formats = "Российская
 > федерация"

 > но что ни делай у него всё равно LANG=C.UTF-8 и всё на английском

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

И кстати, в моем представлении локали C.UTF-8 не бывает. Бывает просто
локаль C, и она жестко ASCII.




Re: emacs and gnome

2019-01-18 Пенетрантность Artem Chuprina



On 17 January 2019 3:23:04 am GMT+07:00, Thakur Mahashaya  
wrote:
>всем привет
>В emacs чтобы войти в меню нужно набрать M-`
>но в гноме эта комбинация уже под что-то заточена.
>как это можно изменить?
>у меня дебиан 9 stretch

Если я правильно ошибаюсь, то еще можно нажать F10.

А общий принцип — вписать что-то в духе

(global-set-key (kbd "") 'menu-bar-open)

в ~/.emacs.el. Но стоит прочесть info emacs (можно в нем же самом — C-h i) на 
предмет того, какие кнопки можно переопределять уверенно, а какие могут быть 
перекрыты (и нередко бывают) режимами поддержки того или иного типа файла.

-- 
Best regards, Artem.



Re: linux /dev/random initialization CVE-2018-1108

2018-12-20 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Thu, 20 Dec 2018 11:29:02 +0300:

 >> С WiFi как с сетевого интерфейса, конечно, снимает.

 > Уровень сигнала, биконы? Или просто пакеты, уже после соединения?

А вот это уже надо в код смотреть. Я подозреваю, что нет, потому что
случайности там мало, и распределение у нее сомнительное. Оно плавает,
конечно, но насколько случайны характеристики этого изменения...



Re: linux /dev/random initialization CVE-2018-1108

2018-12-20 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Wed, 19 Dec 2018 22:32:14 +0300:


 > У хостов есть user input, у виртуалок сетевая активность, а что есть у
 > embedded?

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

 > С wifi, наверное, хорошо энтропию снимать. Соседей полно. Только делает ли 
 > так
 > кто?

С WiFi как с сетевого интерфейса, конечно, снимает.



Re: linux /dev/random initialization CVE-2018-1108

2018-12-18 Пенетрантность Artem Chuprina
Damir Hakimov -> Debian Russian Mailing List  @ Tue, 18 Dec 2018 22:59:57 +0400:

 >> >  > Получается проблема курицы и яйца. Чтобы набрать энтропию, системе
 >> >  > требуется начать работать - обрабатывать какие-то сетевые запросы,
 >> >  > шуршать диском и т.д.
 >>
 >  Чисто для расширения кругозора вопрос: на сетевом интерфейсе свет
 > клином сошелся? Почему не задействовать микрофон, АЦП подключенный к
 > нагреваемому резистору, пятна на солнце для этой самой энтропии?

В рассматриваемых случаях обычно ни микрофона, ни АЦП нет, а пятна на
солнце есть, но вот данных о них опять же нет.

Все-таки беседа в основном о серверах, причем часто о виртуальных.

Может быть, ядерный ДСЧ и умеет задействовать микрофон, если он вдруг
найдется. Конструкцию из АЦП с резистором — вряд ли, потому как те
полтора землекопа, которые ее соберут, нехай сами дописывают этот кусок
кода и оценивают собранную энтропию.



Re: linux /dev/random initialization CVE-2018-1108

2018-12-18 Пенетрантность Artem Chuprina
Vladimir Zhbanov -> debian-russian@lists.debian.org  @ Tue, 18 Dec 2018 
23:25:46 +0300:

 >> >  Чисто для расширения кругозора вопрос: на сетевом интерфейсе свет
 >> > клином сошелся? Почему не задействовать микрофон, АЦП подключенный к
 >> > нагреваемому резистору, пятна на солнце для этой самой энтропии?
 >> 
 >>  Нажатие клавиш (например, Shift-а с автоповтором) позволяет быстро
 >>  проскочить место, где системный демон завис на getrandom().
 >>  Так что по крайней мере драйвер клавиатуры задействован.
 >>  
 >>  Но у серверов кроме сети существенных источников шума обычно нет.

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

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

А если речь про виртуалку, так и вообще никак. Кто ж ей даст реальные
данные о напряжении на плате?



Re: linux /dev/random initialization CVE-2018-1108

2018-12-18 Пенетрантность Artem Chuprina
Victor Wagner -> Artem Chuprina  @ Tue, 18 Dec 2018 12:52:11 +0300:

 >> Как интересно... Хотя, если по уму, то urandom'у бы тоже сначала
 >> набрать энтропию, и только потом уже раскручивать псевдорандомизацию.
 >> А прикапывать ее между перезагрузками чревато тем же боком. Так-то
 >> считается, что urandom — псевдослучайный, но с криптографическим
 >> качеством. А значит, должен иметь в виду криптографическую модель
 >> угроз.

 > Получается проблема курицы и яйца. Чтобы набрать энтропию, системе
 > требуется начать работать - обрабатывать какие-то сетевые запросы,
 > шуршать диском и т.д.

 > Но она не может стартовать ни одного сетевого сервиса, не набрав
 > достаточно энтропии хотя бы для urandom, потому что все сервисы нынче
 > хотят какие-нибудь эфемерные ключи. А следовательно - и проявить хоть
 > какую-то сетевую активность, равно и локальный ввод-вывод. Поскольку
 > клиентов нет, а любая имитация нагрузки будет все равно иметь проблемы
 > со своей случайностью.

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

А сетевую активность без проблем со случайностью можно сделать,
например, так: взять совсем уже псевдослучайное число, например,
8.8.8.8, пингануть его, таймингом ответа зарядить обычный дешевый PRNG,
который не криптографического качества, а дальше в параллель попинговать
его следующие значения, периодически подмешивая тайминги ответов. С
этого ядро наберет уже вполне вменяемую энтропию.



Re: linux /dev/random initialization CVE-2018-1108

2018-12-18 Пенетрантность Artem Chuprina
Eugene Berdnikov -> debian-russian@lists.debian.org  @ Mon, 17 Dec 2018 
23:22:51 +0300:

 > On Mon, Dec 17, 2018 at 10:05:55PM +0300, Artem Chuprina wrote:
 >> Eugene Berdnikov -> debian-russian@lists.debian.org @ Mon, 17 Dec 2018
 >> 18:48> > Пришлось уже позаменять syslog-ng на rsyslog, потому что первый
 >> вызывает
 >>  >  getrandom() ДО того, как свалить в бэкграунд (правда, к нему и другие
 >>  >  претензии были). Хорошо что sshd так не делает, иначе на серверах
 >>  >  пришлось бы его под inetd переводить.
 >> 
 >> Вот интересно, а зачем syslog-ng понадобилась настоящая энтропия? Чему
 >> ему urandom не угодил?

 >  Насколько я разбираюсь в медицине, он как раз urandom и читает.
 >  Вот что написано в мане random(7):

 >*  The  Linux-specific  getrandom(2) system call, available since Linux
 >   3.17.  This system call provides access either to the same source as
 >   /dev/urandom (called the urandom source in this page) or to the same
 >   source as /dev/random (called the random source in this page).   The
 >   default  is  the  urandom  source;  the random source is selected by
 >   specifying the GRND_RANDOM flag to the  system  call.   (The  geten‐
 >   tropy(3) function provides a slightly more portable interface on top
 >   of getrandom(2).)

 >  А вот что делает syslog-ng, фрагмент трассы, который я отправил в BT:
 > 
 > 1501 22:44:00 
 > getrandom("\x74\x78\x56\x35\x28\xad\x52\xd2\xcb\x51\xb1\x30\xc7\x67\x14\x26\x01\xa4\x2d\xa0\x30\x1d\xad\x09\x9e\xe3\x2c\x4e\x07\x55\x0d\x29",
 >  32, 0) = 32 <322.583360>

 >  Got with "strace -Tt", means reading of 32 random bytes tooks 322 seconds.
 > 
 >  Флаги здесь, как видно, нулевые, в то время как GRND_NONBLOCK = 1,
 >  GRND_RANDOM = 2. Так что именно urandom он и читает, и блокируется
 >  на нём на 5 минут.

Как интересно... Хотя, если по уму, то urandom'у бы тоже сначала набрать
энтропию, и только потом уже раскручивать псевдорандомизацию. А
прикапывать ее между перезагрузками чревато тем же боком. Так-то
считается, что urandom — псевдослучайный, но с криптографическим
качеством. А значит, должен иметь в виду криптографическую модель угроз.

 >>  >  Зато появился новый квест: писать программы так, чтобы они рандомные
 >>  >  битики получали асинхронно, в отдельном треде. Рядом с резолвером.
 >> 
 >> Опять-таки, если им нужна настоящая энтропия, то им ее все равно
 >> дожидаться.

 >  Да, это правильно, но теперь нужно понимать, что этом сисколе можно крепко
 >  зависнуть, а это может быть критично. Для syslog-ng квест выглядит так:
 >  автор должен был догадаться, что сначала нужно создать сокет в /dev/log
 >  и сказать ему listen(), иначе некоторые сервисы (например, sshd) не захотят
 >  запускаться и процесс загрузки встанет. Так что просто сделать костыль,
 >  принудительно отправив syslog-ng в бэкграуд -- не получится. Я пробовал,
 >  на SysV-init. Возможно, с systemd результат будет иной, но проблема
 >  имеется, для других утилит она может проявляться иначе.

Да, одна проблема раскрыла наличие другой. Ну что ж, бывает...



Re: linux /dev/random initialization CVE-2018-1108

2018-12-17 Пенетрантность Artem Chuprina
Eugene Berdnikov -> debian-russian@lists.debian.org  @ Mon, 17 Dec 2018 
18:48:51 +0300:

 >>  >>  > Почему нельзя сохранить entropy pool при выключении и восстановить 
 >> при
 >>  >>  > включении, как происходить с urandom seed?
 >>  >> 
 >>  >> Потому что небезопасно.
 >> 
 >>  >  Может ли кто-нибудь изложить модель угроз?
 >> 
 >> replay в случае восстановления диска с бэкапа/снапшота или размножения
 >> образов диска.

 >  Угу, а те кому работать, а не заниматься размножением в рабочее время,
 >  и кому нужно в случае чего быстро ребутнуться, те сосут лапу из-за
 >  измышлений теоретиков. И ладно бы теоретики предусмотрели ручку, чтобы
 >  отключить их фантазии нахрен, или хотя бы сделали параметр "время жизни
 >  энтропийного пула" с отметками времени, mac-адресами сетевушек и т.п...
 >  
 >  Пришлось уже позаменять syslog-ng на rsyslog, потому что первый вызывает
 >  getrandom() ДО того, как свалить в бэкграунд (правда, к нему и другие
 >  претензии были). Хорошо что sshd так не делает, иначе на серверах
 >  пришлось бы его под inetd переводить.

Вот интересно, а зачем syslog-ng понадобилась настоящая энтропия? Чему
ему urandom не угодил?

 >  Зато появился новый квест: писать программы так, чтобы они рандомные
 >  битики получали асинхронно, в отдельном треде. Рядом с резолвером.

Опять-таки, если им нужна настоящая энтропия, то им ее все равно
дожидаться. Пул и закончиться может. А если сгодится urandom, то фиг ли
они настоящую просят?



Re: linux /dev/random initialization CVE-2018-1108

2018-12-17 Пенетрантность Artem Chuprina
Eugene Berdnikov -> debian-russian@lists.debian.org  @ Mon, 17 Dec 2018 
19:04:40 +0300:

 >> > Ну и плюс, если речь о виртуалках у хостера, дополнительные риски с
 >> > доступом злоумышленника к образу диска (по сравнению с доступом к
 >> > памяти).
 >> 
 >> Если виртуалка у хостера, то он уже и так имеет полный доступ ко всем
 >> закрытым ключам хранящимся на диске (ssh) и ещё одни приватные данные
 >> никаких рисков не добавят.

 >  Вообще, у хостера есть доступ к памяти виртуалки... Так что прятать
 >  что-то от хостера глупо. :)

Не от хостера, а от соседей по хостингу.

 >  Но зачем на хостинге приватные ключи ssh? Они должны быть на рабочей
 >  станции админа, а на хостинг следует пробрасывать лишь ssh-agent.
 >  Да и то не всегда, а лишь на доверенные хостинги.

Ключи сервера, например, еще как нужны.



Re: linux /dev/random initialization CVE-2018-1108

2018-12-17 Пенетрантность Artem Chuprina
Eugene Berdnikov -> debian-russian@lists.debian.org  @ Mon, 17 Dec 2018 
16:34:58 +0300:

 >>  > Почему нельзя сохранить entropy pool при выключении и восстановить при
 >>  > включении, как происходить с urandom seed?
 >> 
 >> Потому что небезопасно.

 >  Может ли кто-нибудь изложить модель угроз?

replay в случае восстановления диска с бэкапа/снапшота или размножения
образов диска.

Во втором случае получится не столько replay как таковой, сколько
одинаковые seed'ы у нескольких инстансов. И пока настоящая энтропия не
набежала, выхлоп из них будет очень сильно скоррелирован, на самом
старте, возможно, даже идентичен.

Ну и плюс, если речь о виртуалках у хостера, дополнительные риски с
доступом злоумышленника к образу диска (по сравнению с доступом к
памяти). Или к освобожденным блокам хранилища после затирания этого
seed'а на виртуальном диске. Память-то под это дело наверняка лочится, и
в своп данные RNG не попадают.



Re: linux /dev/random initialization CVE-2018-1108

2018-12-17 Пенетрантность Artem Chuprina
sergio -> debian-russian  @ Mon, 17 Dec 2018 15:09:11 +0300:

 > Я правильно понял, что безопасных способов решения проблемы нет?
 > (Ну кроме как купить надёжный TRNG.)

Да. RNG - это в принципе самая большая проблема криптографии.

 > Почему нельзя сохранить entropy pool при выключении и восстановить при
 > включении, как происходить с urandom seed?

Потому что небезопасно.



Re: drweb и wifi

2018-11-23 Пенетрантность Artem Chuprina
Александр Завгородний -> Artem Chuprina  @ Fri, 23 Nov 2018 15:58:10 +0300:

 > а я не юзер)

 >> Описанные тобой действия помогают обратному. Если юзер будет под них
 >> прогибаться, то нафига им разрабатывать-то? Тяп, ляп, и в продакшн. Вот
 >> если юзер будет их нагибать, тогда другое дело...
 > что вы хотите этим сказать?

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

А если не хотят работать - деньгивзад, и пусть сосут лапу.



Re: drweb и wifi

2018-11-23 Пенетрантность Artem Chuprina
1 -> debian-russian@lists.debian.org  @ Fri, 23 Nov 2018 15:24:26 +0300:

 > допустим, я хочу немного помочь DrWeb в разработке отечественного ПО)

Описанные тобой действия помогают обратному. Если юзер будет под них
прогибаться, то нафига им разрабатывать-то? Тяп, ляп, и в продакшн. Вот
если юзер будет их нагибать, тогда другое дело...

  Можно этот https://github.com/kumina/fakemac или любой другой.
 
 >>> я пока повременил со сторонней программой, я попытался сделать так, как
 >>> мне показалось немного проще:
 >> Потом из техподдержки тебя попросят вкрутить анальный зонд еще немного
 >> глубже, т.к. им не удобно, а из-за того, что сигнал стал проходить хуже -
 >> ходите зондом вперед и под углом 45% от горизонта. Мы заботимся о вас (С).
 >>
 >> И это заметь - за твои-же деньги.
 >>



Re: $MAIL & ssh

2018-11-18 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Sun, 18 Nov 2018 03:28:38 +0300:

 >> как то плохо грепал, если login.defs с его MAIL_DIR пропустил...

 > А при чём тут MAIL_DIR?

grep должен был его найти, а ты пишешь "ничего".

 > Он используется pam_mail'ом, который, ещё раз, закомментиорван во
 > всех pam.d/*. Но что бы не рисковать, я и MAIL_DIR убрал --- но
 > ничего не изменилось.

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



Re: LXC vs Docker и форматы контейнеров

2018-11-14 Пенетрантность Artem Chuprina
Andrey Jr. Melnikov -> debian-russian@lists.debian.org  @ Wed, 14 Nov 2018 
20:05:06 +0300:

 >> Почту, календарь, контакты,
 >> в меньшей степени "быстрая" связь (видео, голос, мессенджер),
 > Хангаутс-то? Так себе видео/голос/месенджер. Оно же в дуплекс голосом еще не
 > научилось. 

 >> "документы", кстати.
 >> В смысле, docs, sheets, и кто там у него presentation умеет.
 >> Если нужна совместная работа с кем-то еще.
 > Ну да, после эпических факапов с паролями в доксах - да, исключительно надо
 > всем раздавать для совсестной работы.

Я же не про то, что надо. Я про то, что пипл хавает.



Re: LXC vs Docker и форматы контейнеров

2018-11-11 Пенетрантность Artem Chuprina
Andrey Jr. Melnikov -> debian-russian@lists.debian.org  @ Sun, 11 Nov 2018 
16:12:42 +0300:

 >> Т.е. в основном оно используется для того что обычный современный юзер
 >> отдает Гуглю, а я не хочу.
 > А что там можно отдать гуглю - почту и календари? 

Почту, календарь, контакты, в меньшей степени "быстрая" связь (видео,
голос, мессенджер), "документы", кстати. В смысле, docs, sheets, и кто
там у него presentation умеет. Если нужна совместная работа с кем-то
еще.



Re: btrfs?

2018-11-10 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sat, 10 Nov 2018 16:29:16 +0300:

 >>   >> При этом поддержка ext4 в линуксе не в пример лучше :) Включая,
 >>   >> например, тот момент, что дистрибутивный пакет умеет цеплять ZFS только
 >>   >> если инитом работает systemd, а systemd инитом весьма хреново
 >>   >> работает.
 >>
 >>   > Ну как-бы он сейчас меинстрим, хоть как-то да работает.
 >>
 >> Угу. При каждой загрузке сервера приходится потом логиниться, вручную
 >> домонтировать том ZFS, передергивать самбу и nfsd (они раздают в том
 >> числе эту директорию, и не умеют отследить, что туда что-то
 >> подмонтировали), и поднимать не запустившийся по столь же неизвестным
 >> причинам rsyncd.
 >>
 >> Подозреваю, что проблема в том, что отслеживать зависимости при загрузке
 >> systemd на самом деле не умеет, а "как повезет". Т.е. подозреваю, что
 >> проблема в этом, потому что про "как повезет" есть уверенность.
 >>

 > Вообще, как бы неприятен systemd не был, но он всё-таки предназначен для
 > отслеживания зависимостей и управления ими множеством способов.
 > Так что, есть подозрение, что тут не в его сторону надо смотреть, а на
 > описание сервиса.
 > Возможно, что именно там зависимости прописаны криво.

С виду — прямо.

 >>   >> Описанная проблема с нецеплянием одного из томов — не
 >>   >> единственная проблема с systemd на этой машине. Это я уж молчу про 
 >> танцы
 >>   >> с рутом на ZFS. Я их один раз станцевал, но результат мне не шибко
 >>   >> нравится.
 >>
 >>   > Рут на ZFS, вполне устраивает, grub на ZFS загружает ядро с ZFS тома.
 >>
 >> Загружает. Устанавливать систему в эту позу (например, если придется
 >> поднимать с бэкапа) неудобно. Много ручных танцев.

 > Ну, кажется, для бэкапа, вы же сами мне рекомендовали сохранять образ
 > полностью. В этом случае, проблем нет.

Иногда бывает, что бэкапный винт меньше рабочего, и бэкап приходится
делать выборочным. Было бы куда сохранить полный...

И второй момент. При восстановлении на железо, от которого не было
фирмвари, образ винта может не взлететь. В этой ситуации надо уметь
подмонтировать его с rescue-флешки. Для ZFS надо вместо rescue брать
live и доставлять в нее zfs-dkms.

Оно бы окупалось, если бы какие-то функции ZFS, которых нету у ext4,
прижились. А так — нет.



Re: btrfs?

2018-11-08 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Thu, 8 Nov 2018 23:07:09 +0300:

 >>   > Пользуюсь ZFS на Debian Linux с 17 года в NAS, пока всё ok. Две системы
 >>   > подобной сложности вряд ли нужны. Одна в продакшне, другая между альфа 
 >> и бета
 >>   > версиями уже долго, потому если требуется подобный функционал, ясно что
 >>   > выбирать.
 >>
 >> Ну вот у меня, например, при загрузке системы упорно не монтируется один
 >> из томов ZFS. Если залогиниться после загрузки и сказать zfs mount -a,
 >> то молча монтируется. Отличается от остальных тем, что там попрошено
 >> case insensitive имена файлов (это exchange, в первую очередь для винды)
 >> и задействованы ACL.
 >> Как следует разобраться с проблемой руки не доходят, ибо сервер на шкафу
 >> и монитор к нему цеплять неудобно.
 >>

 > А монитор-то зачем, если залогиниться возможно без примонтированного тома?

Чтобы разобраться, что происходит в момент загрузки.

 > Кстати, точка монтирования пустая?

Пустая.

 >> Офф-бэнд дефрагментацию блочного уровня ZFS, в отличие от btrfs, не
 >> умеет.

 > Да, есть такое, предлагают делать через zfs send, но велик ли уровень
 > фрагментации для большинства задач?

Тьфу. Дедупликацию.

 >> При этом поддержка ext4 в линуксе не в пример лучше :) Включая,
 >> например, тот момент, что дистрибутивный пакет умеет цеплять ZFS только
 >> если инитом работает systemd, а systemd инитом весьма хреново
 >> работает.

 > Ну как-бы он сейчас меинстрим, хоть как-то да работает.

Угу. При каждой загрузке сервера приходится потом логиниться, вручную
домонтировать том ZFS, передергивать самбу и nfsd (они раздают в том
числе эту директорию, и не умеют отследить, что туда что-то
подмонтировали), и поднимать не запустившийся по столь же неизвестным
причинам rsyncd.

Подозреваю, что проблема в том, что отслеживать зависимости при загрузке
systemd на самом деле не умеет, а "как повезет". Т.е. подозреваю, что
проблема в этом, потому что про "как повезет" есть уверенность.

 >> Описанная проблема с нецеплянием одного из томов — не
 >> единственная проблема с systemd на этой машине. Это я уж молчу про танцы
 >> с рутом на ZFS. Я их один раз станцевал, но результат мне не шибко
 >> нравится.

 > Рут на ZFS, вполне устраивает, grub на ZFS загружает ядро с ZFS тома.

Загружает. Устанавливать систему в эту позу (например, если придется
поднимать с бэкапа) неудобно. Много ручных танцев.



Re: btrfs?

2018-11-03 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sat, 3 Nov 2018 16:10:09 +0300:

 > Пользуюсь ZFS на Debian Linux с 17 года в NAS, пока всё ok. Две системы
 > подобной сложности вряд ли нужны. Одна в продакшне, другая между альфа и бета
 > версиями уже долго, потому если требуется подобный функционал, ясно что
 > выбирать.

Ну вот у меня, например, при загрузке системы упорно не монтируется один
из томов ZFS. Если залогиниться после загрузки и сказать zfs mount -a,
то молча монтируется. Отличается от остальных тем, что там попрошено
case insensitive имена файлов (это exchange, в первую очередь для винды)
и задействованы ACL.

Как следует разобраться с проблемой руки не доходят, ибо сервер на шкафу
и монитор к нему цеплять неудобно.

Офф-бэнд дефрагментацию блочного уровня ZFS, в отличие от btrfs, не
умеет. Под ин-бэнд требования к железу невменяемые. А прочие плюшки ZFS
по сравнению с той же ext4 как-то применить не удается — машинка
слабенькая, без ECC, диск один, так что чексуммы все равно лучше держать
внешние, и проверять после скидывания на бэкапный винт.

При этом поддержка ext4 в линуксе не в пример лучше :) Включая,
например, тот момент, что дистрибутивный пакет умеет цеплять ZFS только
если инитом работает systemd, а systemd инитом весьма хреново
работает. Описанная проблема с нецеплянием одного из томов — не
единственная проблема с systemd на этой машине. Это я уж молчу про танцы
с рутом на ZFS. Я их один раз станцевал, но результат мне не шибко
нравится.



Re: btrfs?

2018-11-02 Пенетрантность Artem Chuprina
Угу, осознал. Всем спасибо, переформатировал в ext4 и ограничусь
перелинковкой средствами jdupes. Из положительного: в процессе чтения
про дедупликацию у btrfs выяснил, что существуют готовые инструменты для
такой перелинковки (не зависящие от btrfs), не надо писать :)

 >> Граждане, а как у нас нынче с надежностью btrfs? А другими тараканами?

 > Пару лет назад оно вело себя странно. Данные вроде не терял из-за нее,
 > но периодически приходилось делать rebalance. Сейчас живу с ней (ядро
 > 4.18) и вроде всё устраивает. Кроме того, она активно используется в
 > качестве backend для sbuild очень много у кого.


 > [gq@dwarf:~/ya/sdc]$ mount | grep btrfs
 > /dev/mapper/dwarf-root on / type btrfs 
 > (rw,relatime,ssd,space_cache,subvolid=5,subvol=/)
 > /dev/mapper/dwarf-chroot on /srv/chroot type btrfs
 > (rw,relatime,compress=zlib:3,ssd,space_cache,subvolid=5,subvol=/)
 > /dev/mapper/dwarf-home on /home type btrfs 
 > (rw,relatime,ssd,space_cache,subvolid=5,subvol=/)
 > /dev/mapper/dwarf-tmp on /mnt type btrfs 
 > (rw,relatime,ssd,space_cache,subvolid=5,subvol=/)

 >> Или ну его пока нафиг, и пожить на старой доброй ext4? Задача - ФС под
 >> домашний файловый/бэкапный сервер. 8 TB. Его собственное содержимое
 >> бэкапится, увы, пока нерегулярно. Рейд тоже пока увы. Во-первых,
 >> нетбабла (диск такого объема не три копейки стоит), а во-вторых, в той
 >> машинке быстрый SATA-выход один.
 > Под надежный сторадж я использую ext4. Он же надёжный =)

 >> А вот косой взгляд на инструменты out-of-band deduplication для btrfs
 >> как раз вызывает интерес к оной файловой системе. Поскольку там немало
 >> бэкапов, и порой файлы в них переезжают, эта функциональность
 >> представляется нелишней. Расслабиться на тему "ну и что, что сотню
 >> гигабайт переложили и потрогали, к завтрему перелинкуется" было бы
 >> приятно.

 > Вот с этим как-то всё непонятно: тоже всё хотел использовать, но то
 > утилита требовала каких-то особых танцев, то грозила потерей данных, то
 > падала с непонятной диагностикой. В итоге так и не заюзал.



btrfs?

2018-11-01 Пенетрантность Artem Chuprina
Хмутро.

Граждане, а как у нас нынче с надежностью btrfs? А другими тараканами?

А то я в одном месте читаю, что типа мейтейнер ext4 полагает ее
временной мерой, и уже пора переходить на btrfs, а в дебиановской вики
перечислено такое количество тараканов...

Изрядная часть из них - из разряда "тут играть, тут не играть, тут рыбу
заворачивали". Типа, эта функция есть, но чревата потерей данных, так
что лучше не использовать. Компрессию лучше не использовать. dpkg (если
делать рут на btrfs) страшно тормозит, и чинить это никто не будет.

И все это касается в том числе и свежих ядер, в смысле, более свежих,
чем в stable.

Или ну его пока нафиг, и пожить на старой доброй ext4? Задача - ФС под
домашний файловый/бэкапный сервер. 8 TB. Его собственное содержимое
бэкапится, увы, пока нерегулярно. Рейд тоже пока увы. Во-первых,
нетбабла (диск такого объема не три копейки стоит), а во-вторых, в той
машинке быстрый SATA-выход один.

Снапшоты, которыми имелось в виду пользоваться при экспериментах с zfs,
не прижились, самопальные скрипты вокруг rsync на задаче бэкапов дают
лучшую управляемость. Еще хотелось разнесения задач по подтомам, благо
zfs (и btrfs) динамически распределяют под них место, но что-то тоже
практического применения не сложилось.

А вот косой взгляд на инструменты out-of-band deduplication для btrfs
как раз вызывает интерес к оной файловой системе. Поскольку там немало
бэкапов, и порой файлы в них переезжают, эта функциональность
представляется нелишней. Расслабиться на тему "ну и что, что сотню
гигабайт переложили и потрогали, к завтрему перелинкуется" было бы
приятно.



Re: grep_проблемы_с поиском русского_при определённых условиях

2018-10-15 Пенетрантность Artem Chuprina
Galina Anikina -> debian-russian@lists.debian.org  @ Mon, 15 Oct 2018 12:20:49 
+0300:

 >> Копать в сторону "в какой локали запущены терминал и bash". Скорее
 >> всего, дело в терминале. Если среда графическая, то ее скрипты
 >> запуска
 >> bashrc не читают. По вполне понятной причине - это файл конфигурации
 >> интерактивного шелла, а скрипт запуска никаким боком не
 >> интерактивный, и
 >> вообще, кстати, совершенно не обязательно интерпретируется башем.
 >> 

 > Да запущен гарфический Xserver и уже в нём запускаю терминал xfce, но у
 > меня (вручную отключено зрафическое окно входа и поэтому я вхожу по
 > учётной записи сразу в терминал и только потом ручками иду через startx
 > - давнишняя привычка и её трудно искоренить). Поэтому сразу у меня
 > должна активизироваться локаль, прописанная в bashrc. Но если при
 > запуске Xserver-а он считывает информацию, игнорируя bashrc, то да
 > возможны проблемы. Надо почитать откуда XServer считывает настройки.

Или если этим переменным забыли сказать export, и потому они не
передаются в запущенные процессы.

 >> Можно попробовать вписать в ~/.profile
 >> 
 >> LANG=ru_RU.UTF-8
 >> export LANG
 >> 
 >> (не одной строкой, а двумя, потому что, строго говоря, никто не
 >> обещал,
 >> что читать его будет продвинутый шелл, а так гарантированно
 >> sh-совместимо). А из bashrc как раз убрать, чтобы маскировки проблем
 >> не
 >> происходило.
 >> 
 >> Если не поможет, разбираться, где environment устанавливается у
 >> используемой граф. среды. Но в .profile все равно пусть будет, для
 >> захода по ssh и в текстовом варианте.
 >> 

 > Спасибо и про профиль почитаю.
 > Пока с помощью подсказки из другой ветки рассылки - 
 > debian-l10n-russ...@lists.debian.org частично решила этот вопрос
 > методом ввода в терминале LANG=en_US.UTF-8 или LANG=ru_RU.UTF-8 и далее
 > через env проверить, вступили ли в силу изменения, и потом запуск
 > какой-то программы - так нормально работает - программа даёт интерфейс,
 > который ты ей закажешь - английский или русский, и все сообщения
 > (хвостики в консоле-терминале будут выходить на определённом языке).
 > То есть можно не корректировать bashrc, а просто откорректировать файл
 > /etc/locale.gen, раскоментировав там два языка - русский и английский,
 > и потом # dpkg-reconfigure locales будут сформированы две локали в
 > системе, из них ты и сможешь выбирать.
 > Спасибо за ответ. Чуть позже я попробую и по вашему предложению
 > настроить ("кашу маслом не испортишь").

/etc/locale.gen отвечает только за генерацию локалей. А у процесса
одновременно может быть только одна. Но у каждого своя, да.



Re: grep_проблемы_с поиском русского_при определённых условиях

2018-10-13 Пенетрантность Artem Chuprina
Galina Anikina -> debian-russian  @ Sun, 14 Oct 2018 08:09:37 +0300:

 > 3) И в таком варианте почти всё работало нормально, но вот с grep
 > возникли проблемки...
 > Если через консоль простым пользователем пытаешься задать поиск 
 > grep -R "online" Документы/ 
 > вводишь "Док" и клавишей TAB пытаешься дополнить слово - обычно так и
 > работало ранее. А в условиях, описанных выше, появляется абракадабра -
 > курсор перескакивает, русские буквы не показываются. При попытке ввести
 > всё же вслепую русскую фразу и нажать Enter - выдаёт чепуху.
 > Та же ситуация, если бы я написала не "online", а слово на русском
 > языке.

Начнем с того, что это проблемы не с grep, а с эмулятором терминала или
с shell. Первое вероятнее. До grep в этот момент дело еще не доходит.

Проверить можно просто: запустить из этого шелла

LANG=ru_RU.UTF-8 терминал

(терминалов много, я не знаю, какой у Вас) и повторить в нем.

 > Вообщем в конце вернулась глобально к LANG=ru_RU.UTF-8.
 > Но проблема то не решена
 > Может кто подскажет - где копать.

Копать в сторону "в какой локали запущены терминал и bash". Скорее
всего, дело в терминале. Если среда графическая, то ее скрипты запуска
bashrc не читают. По вполне понятной причине - это файл конфигурации
интерактивного шелла, а скрипт запуска никаким боком не интерактивный, и
вообще, кстати, совершенно не обязательно интерпретируется башем.

Можно попробовать вписать в ~/.profile

LANG=ru_RU.UTF-8
export LANG

(не одной строкой, а двумя, потому что, строго говоря, никто не обещал,
что читать его будет продвинутый шелл, а так гарантированно
sh-совместимо). А из bashrc как раз убрать, чтобы маскировки проблем не
происходило.

Если не поможет, разбираться, где environment устанавливается у
используемой граф. среды. Но в .profile все равно пусть будет, для
захода по ssh и в текстовом варианте.






Re: Мне расстраиваться, или ничего страшного?

2018-10-13 Пенетрантность Artem Chuprina
fuf -> debian-russian@lists.debian.org  @ Sat, 13 Oct 2018 19:44:53 +:

 > сыт по горло, теперь от Дебиана- ни на шаг! Приобрёл USB-modem (HUAWEI
 > E8372 LTE Wingle), но на коробке прочитал:
 > Требования к ОС ПК
 > -Win7, Win8, Win8.1 (без поддержки Windows RT)
 > -Mac OS ..
 > -АО ПК должно соответствовать требованиям установленой версии ОС
 > -Стандартный USB-интерфейс.
 > Мне расстраиваться, или ничего страшного?
 > Спасибо всем зараннее.

Ну как... Или будет работать, или нет. Одно из двух.



Re: Доступ к медиатеке

2018-10-06 Пенетрантность Artem Chuprina
D. H. -> debian-russian@lists.debian.org  @ Sat, 6 Oct 2018 06:18:14 -0500:

 > On 06/10/18 05:53 AM, Victor Wagner wrote:
 >> 3. От очередной драчки роскомнадзора с Дуровым при которой ваше облако
 >> может случайно попасть под раздачу, оказавшись в одном /16 блоке с
 >> телеграмовской прокси.

 > Вот это я пошел гуглить. Что-то пропустил похоже.

Угу. Пару месяцев назад, подыскивая для машинки на DigitalOcean адрес,
не заблокированный Роскомнадзором, я перебрал пять их датацентров. С
трудом нашел.



Re: systemd symlink vs file в dev-X1.device.requires

2018-09-11 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Tue, 11 Sep 2018 01:45:58 +0300:


 > Есть пустой /etc/systemd/system/dev-X1.device.requires

 > В чём разница между

 > # ln -s /lib/systemd/system/X@.service
 > /etc/systemd/system/dev-X1.device.requires

 > и

 > # cp /lib/systemd/system/X@.service 
 > /etc/systemd/system/dev-X1.device.requires

 > ?

Оба неправильные, насколько я понимаю... Но я могу неправильно понимать.

В смысле, systemd - это не init.d, в его конфигурации симлинки
развешиваются только в директории вида *.wants/. А линковать
непосредственно в /etc/systemd/system/ ничего не следует, он там этого
не ожидает.

Но вообще пока что весь мой опыт показывает, что как только ты начинаешь
хотеть от systemd того, что с его помощью должно быть делать удобнее,
чем с SystemV init, то systemd немедленно перестает работать. Не в том
смысле, что рушит систему, а в том, что не справляется с поставленной
задачей. И заменить его на SystemV init получается надежнее.



Re: .application Name

2018-06-24 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Sun, 24 Jun 2018 02:35:55 +0300:

 > Так вот я в курсе, что за приложения у меня стоят, зачем я их ставил,
 > и что они делают, и не надо мне в меню ещё и описания.

Ну, это ты такой весь продвинутый. А я зачастую и не знаю про некоторые
приложения, что они у меня вообще стоят, не говоря уж о том, зачем
нужны. Это при том, что у меня Apt::Install-Recommends false.

И вообще, если ты такой продвинутый, то зачем тебе меню-то? Словами,
чай, разговаривать удобнее, чем мышкой...

Я вот, опять же, и не знаю, что у него там в .desktop написано - мне
просто не нужно его читать, и ни одной из программ, которые я запускаю,
это тоже не нужно. (Ну, может, кто само и читает, но на взаимодействие
со мной это не влияет никак.)

Но я понимаю, что _нормальный_ юзер - он другой... (И он, кстати,
названия вообще с большим трудом читает, а уж те, в которых нет лишних
букв, не способен воспринять совсем.) И .desktop пишут в первую очередь
для него.

 >> Ну напишите мэйнтейнеру, пускай пофиксит, приведет к норме.

 > Так вот я и прошу ссылку на "норму".



Re: .application Name

2018-06-24 Пенетрантность Artem Chuprina
sergio -> debian-russian@lists.debian.org  @ Sun, 24 Jun 2018 00:15:37 +0300:

 >> А в чём проблема-то? Name нужен только для пользователя.

 > А из чего вы сделали вывод, что я сказал, что Name нужен не только для
 > пользователя?

 > Проблема в том, что все приложения как приложения, а Chromium Web Browser!

Это чтобы скрыть, что на самом деле он еще и Chromium Spy, и вышивать умеет :)



Re: debian/control Provides

2018-06-22 Пенетрантность Artem Chuprina
Andrey Nikitin -> debian-russian@lists.debian.org  @ Thu, 21 Jun 2018 15:56:55 
+0300:

 >> Боюсь, что из программных комплексов, написанных в ОО-стиле, такие
 >> занозы не вытаскиваются.

 > Вот взять, например, виртуальный "mail-transport-agent", или "time-daemon".
 > Я очень надеялся что `apt-cache rdepends mail-transport-agent` вернёт кучку 
 > пакетов,
 > которым нужен mta, всё равно какой, лишь бы был хоть один.
 > Это казалось мне логичным.
 > Но нет, пусто, никому не нужен виртуальный mail-transport-agent.
 > Тогда на зачем вся эта городьба с Provides? Чёт не понимаю.

Это, боюсь, вопрос к реализации rdepends. Потому что apt-cache depends
bsd-mailx показывает все, что надо. При установке пакетов достаточно depends.



Re: debian/control Provides

2018-06-22 Пенетрантность Artem Chuprina
D. H. -> debian-russian@lists.debian.org  @ Thu, 21 Jun 2018 08:27:07 -0500:

 >> Боюсь, что из программных комплексов, написанных в ОО-стиле, такие
 >> занозы не вытаскиваются.

 > Прошу прощения, не люблю догадываться, предпочитаю уточнять все
 > возможные неточности во избежании глупых недопониманий. Что имелось в
 > виду под "ОО-стиле"?

Переиспользование уже написанных компонент в соответствии с API при
отсутствии доступа к реализации. При том, что сам этот API в изрядной
части состоит из действий типа "вещь в себе", т.е. не рассчитан на
последующую обработку результата кем-то еще. Ведет к решениям вида
"вылить воду из кастрюльки и свести задачу к предыдущей".



Re: debian/control Provides

2018-06-21 Пенетрантность Artem Chuprina
Andrey Nikitin -> debian-russian@lists.debian.org  @ Thu, 21 Jun 2018 15:10:54 
+0300:

 > Есть пакеты "foo-bar" и "foo-baz", каждый их которых:
 >Provides: foo
 >Conflicts: foo
 >Replaces: foo

 > И есть другой пакет: "foo-deps" у которого:
 >Depends: foo

 > Всё бы ничего, но при смене "foo-bar" на "foo-baz" (или наоборот),
 > apt выводит предупреждение "dependency problems":

 > dpkg: foo-deps: dependency problems, but removing anyway as you requested:
 >  foo-deps depends on avreg-site; however:
 >   Package foo is not installed.
 >   Package foo-bar which provides foo is to be removed.
 >   Package foo-baz which provides foo is not installed.

 > Делает всё как надо, меняет foo-bar на foo-baz не удаляя foo-deps.
 > Но предупреждение как заноза в ж..е, может кто поможет вытащить? :)

Боюсь, что из программных комплексов, написанных в ОО-стиле, такие
занозы не вытаскиваются.

Оно запускает dpkg не с ключом "я тебе эту зависимость потом
удовлетворю" (у него такого нет), а с ключом "удаляй, но не трогай
зависящих". А тот в такой ситуации вполне резонно громко вопит.



Re: env DISPLAY

2018-06-01 Пенетрантность Artem Chuprina
Andrey Nikitin -> debian-russian@lists.debian.org  @ Fri, 1 Jun 2018 11:04:27 
+0300:

 >> Вообще говоря, конкретная X-овая программа совершенно не обязана
 >> коннектиться к тому (или только к тому) дисплею, на которую указывает
 >> переменная DISPLAY.

 > У меня более простая задача.

 > Раньше, для запуска gui-приложений из

 >   а) ssh сеансов,
 >   б) скриптов, в которых нужно запускать gui через sudo;

 > достаточно было просто указать/передать DISPLAY=:0.0

 > А теперь, для того чтобы подключится к локальному дисплею
 > нужно дополнительно настраивать (keep env DISPLAY) sudo, ssh, pam(?).

sudo, пожалуй, стоит. И раньше стоило. А ssh - нет. Это с вероятностью
больше 1/2 будет гвоздь не от той стенки. Существует модель, при которой
имеет смысл передать ему DISPLAY от того процесса, который его
запускает, но надо хорошо понимать, что делаешь. А у вас с этим явная
проблема. pam точно не надо.



Re: env DISPLAY

2018-06-01 Пенетрантность Artem Chuprina
Andrey Nikitin -> debian-russian@lists.debian.org  @ Fri, 1 Jun 2018 10:37:40 
+0300:

 >> Нет. Один из них — X сервер обслуживающий gdm, а другой
 >> пользовательский.

 > О, точно, но DISPLAY у него такой же

 > $ sudo -u Debian-gdm sh -c 'echo $DISPLAY'
 > :1

Нет.

Переменные среды - свойство процесса, а не пользователя.



Re: комп с блютозом в деревне, где есть мобильная связь

2018-05-24 Пенетрантность Artem Chuprina
fuf -> debian-russian@lists.debian.org  @ Thu, 24 May 2018 14:02:32 +:

 > Ещё побеспокою.
 > Цитаты я сам в новое чистое сообщение вклеиваю из ваших постов с
 > debian-russian@lists.debian.org.
 > Телефон у меня примитивный NOKIA, я думаю никакой поддержки там нет. Значит
 > нужен новый?

Если ее там действительно нет, а не "я думаю", то нужен новый. И вот
тогда, возможно, лучше как раз роутер. Но надо не думать, а нагуглить и
почитать спецификацию телефона.



Re: комп с блютозом в деревне, где есть мобильная связь

2018-05-24 Пенетрантность Artem Chuprina
fuf -> debian-russian@lists.debian.org  @ Thu, 24 May 2018 09:08:38 +:

 > Извините, вчера был краток, т.к. засыпал.
 > Дело в следующем: оплачивал мобильник в МТС, и предложили перейти с опт.
 > кабеля на сотовую связь, цена такая-же -500р. Я к этому решительному
 > предложению не готов, но вспомнил о деревне, лете и задумался о сот. связи
 > как о дополнении к кабелю. Эл-во там есть, вся детвора ходит уткнувшись в
 > смартфоны (мне это не подходит- экран мал и нет клав.), телевизоры
 > показывают плохо (30км от телевышки), у всех спут. тарелки, зимой живут в
 > двух домах.
 >  Блютузом и вай-фаем не пользовался., представление об этом смутное, но,
 > конечно, теперь почитаю.
 >  Хотелось бы прикинуть цену необходимого доп. железа и последовательность
 > действий.
 > Спасибо.

При наличии умения пользоваться дебианом и работоспособного в нем
блютуса в дебиане (такое бывает не всегда, иногда встроенные контроллеры
линуксом не поддерживаются) цена доп. железа 0. Но телефон во время
работы в инете должен быть рядом с ноутом.

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



Re: комп с блютозом в деревне, где есть мобильная связь

2018-05-24 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Thu, 24 May 2018 09:27:10 
+0300:

 >> Я пользуюсь мобильным роутером
 >> http://otzovik.com/reviews/3g_wifi_router_huawei_e5330/
 >> Не уверен, что это лучшее устройство этого типа.
 >> Для меня важно, что роутер умеет подключаться через мобильную связь а
 >> также раздавать имеющуюся WiFi-сеть уже от своего имени.

 > Мобильный роутер стоит денег. И в него нужна отдельная симка, которая
 > тоже стоит денег и требует абонентской платы (фиксирвоанной или за
 > траффик это уже не очень важно).

 > А здесь человек явно пытается слепить беспроводную сеть из того, что
 > было.

 > Не уверен, что результат его обрадует, но интересный опыт - получит.

И в общем, да, практика показывает, что в деревне блютуса более чем
достаточно.



samba: упорный бит x для группы

2018-04-20 Пенетрантность Artem Chuprina
Хмутро.

Эксперты по самбе есть? Наткнулся на следующую граблю.

Самба. Нижележащая директория, она exchange, имеет ACL

zsh% getfacl .
# file: .
# owner: root
# group: root
user::rwx
user:winguest:rwx
group::r-x
group:staff:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:winguest:rwx
default:group::r-x
default:group:staff:rwx
default:mask::rwx
default:other::r-x

Т.е. есть юзер и группа, которым явно разрешено всё. Локально и по NFS
все работает ожидаемым образом.

zsh% touch locally
zsh% getfacl locally 
# file: locally
# owner: ran
# group: ran
user::rw-
user:winguest:rwx   #effective:rw-
group::r-x  #effective:r--
group:staff:rwx #effective:rw-
mask::rw-
other::r--

(с другой машины)
zsh% touch /bag/exchange/over-nfs
zsh% getfacl over-nfs 
# file: over-nfs
# owner: ran
# group: ran
user::rw-
user:winguest:rwx   #effective:rw-
group::r-x  #effective:r--
group:staff:rwx #effective:rw-
mask::rw-
other::r--

и ожидаемо в выводе ls бит x не стоит.

(с той же другой машины)
zsh% touch over-samba
zsh% ls -l over-samba 
-rw-rw-r-- 1 ran ran 0 апр 20 20:02 over-samba
zsh% smbclient -N //bag/exchange   
Anonymous login successful
Domain=[GREENWOOD] OS=[Windows 6.1] Server=[Samba 4.5.12-Debian]
smb: \> put over-samba 
putting file over-samba as \over-samba (0,0 kb/s) (average 0,0 kb/s)

И вот тут внезапно

zsh% getfacl over-samba 
# file: over-samba
# owner: winguest
# group: nogroup
user::rw-
user:winguest:rwx
group::rw-
group:staff:rwx
mask::rwx
other::rw-

Т.е. эффективного срезания бита x нет, и 
zsh% ls -l over-samba 
-rw-rwxrw-+ 1 winguest nogroup 0 Apr 20 20:04 over-samba*

причем почему-то показывают бит x у группы, а вовсе не у владельца,
который как раз winguest.

Что у меня настроено неправильно? Конфигурация шары

[exchange]
   comment = Home network exchange
   path = /exchange
   wide links = yes
   browseable = yes
   writable = yes
   guest ok = yes
   guest only = yes
   create mask = 0666
   directory mask = 0777

Документация на всякие танцы вокруг ACL в man smb.conf, как водится у
самбы, мутна. Явно никаких ручек на эту тему я не прописывал. unix
extensions = no, и с винды поведение то же самое.



Re: LDAP

2018-04-20 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Fri, 20 Apr 2018 08:44:25 +0300:

 > Так это, господа гуру криптографии и распределения ключей, FAQ-то
 > пользоваться или неактуально?
 > easy-rsa уже отменяется, я так понял?
 > Свой CA во вменяемом виде сейчас хрен поднимешь?

Нет, не отменяется. Для твоих целей того, что есть, скорее всего, хватит.



Re: LDAP

2018-04-19 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Thu, 19 Apr 2018 10:08:47 
+0300:

 >>  > учетом современных реалий. Чтобы и X509v3 умело, и эллиптические
 >>  > кривые понимало, причем не только в виде ECDSA.  
 >> 
 >>  > А Шаплова заставим новый Certificates HOWTO написать.  
 >> 
 >> Палка о двух концах. В easy_rsa ключевое слово - easy. Мы сумеем
 >> добавить туда новые возможности, не потеряв в простоте применения для
 >> простых случаев?

 > Ну, не попробуем - не узнаем. В общем-то challenge в том и состоит,
 > чтобы простые вещи были простыми, а сложные - возможными.

Ну ок, мысль эту следует попробовать. Я посмотрю на оные скрипты глазами.

 >> И кстати, оглядываясь на смартфоны и планшеты - у них ведь снова чаще
 >> чем у каждого второго асимметричный алгоритм "может быть любым, если
 >> это RSA". И генерировать сертификат на эллиптических кривых -
 >> нарываться на то, что смартфонное приложение этого не поймет.

 > По-моему, ты немножко не прав, и в JAVA cryptoapi которому андроид
 > более-менее следует, все это поддерживается. 

 > Оно  в сим-картах и то поддерживается. (JavaCard 3.0, если не
 > ошибаюсь).

В Java да, а в приложениях нет. API-то еще употребить надо. Ну, то есть,
на автомате проверить сертификат оно, может, и осилит, а вот
воспользоваться секретным ключом уже увы.

Я тут на днях попытался в VX ConnectBot втянуть секретные
ssh-ключи. Нишмагла. В смысле, шмагла только RSA.



Re: LDAP

2018-04-18 Пенетрантность Artem Chuprina
Victor Wagner -> debian-russian@lists.debian.org  @ Thu, 19 Apr 2018 07:03:06 
+0300:

 >>  > Собственный CA имеет смысл, вроде.
 >>  > Вопрос только в том, насколько сложно (LDAP тоже казался простым,
 >>  > но свои особенности у каждого сервиса сожрали уйму времени)?  
 >> 
 >> В свое время в сети гуглился документ SSL Certificates Howto. Там было
 >> довольно грамотно расписано.

 > Устарело оно лет на двадцать. Осталось на уровне X509v1.
 >  
 >> Сейчас в дистрибутиве есть пакет easy-rsa, им любит OpenVPN
 >> пользоваться.  Это сделанный по тому рецепту комплект скриптов для
 >> своего CA.

 > Вот у нас тоже им пользовались. Коропоративная локалка, примерно 30
 > пользователей. VPN, LDAP, десяток-другой внутренних веб-сервисов.

 > Возникла необходимость поднять парочку Name-based https-хостов на одной
 > машина и ап.. А где SubjectAlternativeName? А не умеет его easy_rsa.
 > Вообще никаких extension не умеет.
 >  
 >> Чтобы им адекватно пользоваться, крайне желательно уже иметь понимание
 >> устройства PKI по схеме X509 (в PGP, например, схема другая). В
 >> упомянутом Howto изложение, помнится, было.

 > Ага было. На уровне  RFC 2459, принятого в прошлом веке.
 > А сейчас немножко даже 3280 уже неактуально. Надо пользоваться 5280 и
 > то с оглядкой на 6818.

 > Может это, тряхнем стариной, да и напишем ремейк easy_rsa, но с учетом
 > современных реалий. Чтобы и X509v3 умело, и эллиптические кривые
 > понимало, причем не только в виде ECDSA.

 > А Шаплова заставим новый Certificates HOWTO написать.

Палка о двух концах. В easy_rsa ключевое слово - easy. Мы сумеем
добавить туда новые возможности, не потеряв в простоте применения для
простых случаев?

И кстати, оглядываясь на смартфоны и планшеты - у них ведь снова чаще
чем у каждого второго асимметричный алгоритм "может быть любым, если это
RSA". И генерировать сертификат на эллиптических кривых - нарываться на
то, что смартфонное приложение этого не поймет.



Re: SAS hotswap и баг

2018-04-18 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Wed, 18 Apr 2018 23:05:20 +0300:

 >> echo "- - -" >/sys/class/scsi_host/host/scan
 >> 
 >> не уверен, насколько набор команд актуален современным ядрам, давно с 
 >> дисками не возился.
 >> 
 > Попробовать могу, но разве хотсвоп не предполагает, что руками делать
 > ничего не надо?

Вообще говоря, нет. В смысле, при вылете да, предполагает, а вот при
вставлении у обоих вариантов (подхватить сразу и подождать явной
команды) есть свои плюсы и минусы.



Re: LDAP

2018-04-18 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Wed, 18 Apr 2018 22:46:27 +0300:

 > Собственный CA имеет смысл, вроде.
 > Вопрос только в том, насколько сложно (LDAP тоже казался простым, но
 > свои особенности у каждого сервиса сожрали уйму времени)?

В свое время в сети гуглился документ SSL Certificates Howto. Там было
довольно грамотно расписано.

Сейчас в дистрибутиве есть пакет easy-rsa, им любит OpenVPN
пользоваться.  Это сделанный по тому рецепту комплект скриптов для
своего CA.

Чтобы им адекватно пользоваться, крайне желательно уже иметь понимание
устройства PKI по схеме X509 (в PGP, например, схема другая). В
упомянутом Howto изложение, помнится, было.



Re: LDAP

2018-04-16 Пенетрантность Artem Chuprina
 >>  >> Вот тут добавлю, Let's Encrypt можно получить для динамического адреса
 >>  >> используя сервис аля dyndns.
 >>  >> 
 >>  > Вот хотелось поподробнее про Let's Encrypt.
 >>  > Эта идея сначала была, но загнулась, и теперь мои сертификаты
 >>  > самоподписанные.
 >>  > Я так понял, этот сервис подписывает сертификат, созданный на внешнее
 >>  > доменное имя?
 >> 
 >> Да. 
 >> 
 >> Причем по этому имени должен быть доступен веб-сервер, и уметь отдать
 >> сгенерированный по ходу операции подписи файл со случайным именем,
 >> подписанный соответствующим ключом. 

 > Он умеет и без веб-сервера. Поднимая свой собственный на время подписи.
 > После подписания или пере выпуска сервер ему не нужен. Это есть в
 > документации.

Окей, по этому имени на время выписывания сертификата должен быть
доступен веб-сервер.



Re: LDAP

2018-04-16 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Mon, 16 Apr 2018 00:33:40 +0300:

 >>> Да, аутентификация по сертификату есть, если вы купите у своего
 >>> провайдера белый IP-адрес, то вам не нужны самоподписанные сертификаты,
 >>> можно использовать Let's Encrypt и разместить RADIUS-сервер на VPS. 
 >> 
 >> Вот тут добавлю, Let's Encrypt можно получить для динамического адреса
 >> используя сервис аля dyndns.
 >> 
 > Вот хотелось поподробнее про Let's Encrypt.
 > Эта идея сначала была, но загнулась, и теперь мои сертификаты
 > самоподписанные.
 > Я так понял, этот сервис подписывает сертификат, созданный на внешнее
 > доменное имя?

Да. 

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

Для локалки так себе решение. Возможно, свой CA (не самоподписанные
сертификаты, а плюс лишние два часа времени однократно, и таже
процедура, но со своим корневым сертификатом) будет умнее. Но
преимущество Let's Encrypt (на данный момент политических игр в области
PKI) в том, что про подписанные им сертификаты не надо ничего вручную
объяснять каждому клиенту. А про свой CA надо.



Re: Внешнее хранилище для виды

2018-04-13 Пенетрантность Artem Chuprina
Lev Arzhanov -> debian-russian@lists.debian.org  @ Fri, 13 Apr 2018 14:36:12 
+0500:

 > Почти оффтопик.

 > Есть нужда часть дискового пространства машины с Debian отдать в винду
 > по сети. Рассматриваю два варианта: NFS и iSCSI. Не подскажете, какой
 > из них будет предпочтительнее?

samba :)



Re: SAS hotswap и баг

2018-04-08 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sun, 8 Apr 2018 16:55:12 +0300:

 >>  > Вытащил диск, вставил на место, но в /dev его не увидел.
 >>  > Зато увидел вот это в dmesg:
 >> 
 >> Это там, где ZFS поверх LUKS?  Есть шанс, что ты получил ответ на свой
 >> вопрос, что же ты сделал неправильно.
 >> 
 > Вряд ли тут что-то неправильно.
 > Да и шанса такого нет.
 > scsi_device_dev_release_usercontext явно знать не может о каком-то LUKS.

Ну, насчет шанса нет я бы не был так уверен. Нынче в ядре у нас что ни
блоковое устройство, то SCSI, даже если оно чисто программное.

Хотя, если в /dev нет самого диска, то в общем, да, говорить о проблеме
в районе LUKS не следует. Если проблема там, то нижележащий диск должен
быть на месте.

 >>  > [69497.081559] sd 0:0:5:0: [sdf] Synchronize Cache(10) failed: Result:
 >>  > hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK
 >>  > [69916.705257] Buffer I/O error on dev dm-8, logical block 0, async page 
 >> read
 >>  > [69930.896113] list_del corruption, 986c0632b010->next is 
 >> LIST_POISON1 (dead0100)
 >>  > [69930.896226] [ cut here ]
 >>  > [69930.896227] kernel BUG at 
 >> /build/linux-3RM5ap/linux-4.14.13/lib/list_debug.c:47!
 >>  > [69930.896329] invalid opcode:  [#1] SMP PTI
 >>  > [69930.896416] Modules linked in: xt_nat veth ipt_MASQUERADE
 >>  > nf_nat_masquerade_ipv4 nf_conntrack_netlink nfnetlink xfrm_user xfrm_algo
 >>  > iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 xt_addrtype
 >>  > xt_conntrack nf_nat nf_conntrack br_netfilter bridge stp llc bonding 
 >> xt_tcpudp
 >>  > cpufreq_conservative cpufreq_userspace cpufreq_powersave iptable_filter
 >>  > intel_rapl x86_pkg_temp_thermal intel_powerclamp kvm_intel iTCO_wdt
 >>  > iTCO_vendor_support kvm irqbypass ttm drm_kms_helper intel_cstate 
 >> intel_uncore
 >>  > pcspkr intel_rapl_perf serio_raw drm evdev mei_me mei sg lpc_ich mfd_core
 >>  > shpchp ie31200_edac button nuvoton_cir ipmi_si battery ipmi_devintf 
 >> rc_core
 >>  > ipmi_msghandler tpm_crb video acpi_pad nct6775 hwmon_vid jc42 coretemp
 >>  > ip_tables x_tables autofs4 zfs(PO) zunicode(PO) zavl(PO) icp(PO) 
 >> zcommon(PO)
 >>  > znvpair(PO)
 >>  > [69930.896925]  spl(O) btrfs zstd_decompress zstd_compress xxhash
 >>  > algif_skcipher af_alg dm_crypt dm_mod raid10 raid456 async_raid6_recov
 >>  > async_memcpy async_pq async_xor async_tx xor raid6_pq libcrc32c 
 >> crc32c_generic
 >>  > raid1 raid0 multipath linear md_mod sd_mod hid_generic usbhid hid
 >>  > crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel pcbc
 >>  > aesni_intel aes_x86_64 crypto_simd ahci glue_helper xhci_pci cryptd 
 >> libahci
 >>  > mpt3sas igb xhci_hcd raid_class i2c_algo_bit libata scsi_transport_sas 
 >> dca
 >>  > i2c_i801 ptp pps_core usbcore scsi_mod usb_common fan thermal
 >>  > [69930.897315] CPU: 7 PID: 15570 Comm: kworker/u16:2 Tainted: P O
 >>  > 4.14.0-0.bpo.3-amd64 #1 Debian 4.14.13-1~bpo9+1
 >>  > [69930.897462] Hardware name: To Be Filled By O.E.M. To Be Filled By
 >>  > O.E.M./E3C224D4I-14S, BIOS P3.20 05/29/2015
 >>  > [69930.897612] Workqueue: fw_event_mpt2sas0 _firmware_event_work 
 >> [mpt3sas]
 >>  > [69930.897732] task: 986a138af040 task.stack: bbcfca9a8000
 >>  > [69930.897846] RIP: 0010:__list_del_entry_valid+0x4e/0x90
 >>  > [69930.897958] RSP: 0018:bbcfca9abb48 EFLAGS: 00010086
 >>  > [69930.898070] RAX: 004e RBX: 0246 RCX: 
 >> 
 >>  > [69930.898185] RDX:  RSI: 986c1fdd66f8 RDI: 
 >> 986c1fdd66f8
 >>  > [69930.898298] RBP: 986c0632b738 R08:  R09: 
 >> 0fdf
 >>  > [69930.898413] R10: 017d R11: 99b88e6d R12: 
 >> 986c0636b180
 >>  > [69930.898527] R13: 986c05f22000 R14: 986c0632b000 R15: 
 >> 986c0d078010
 >>  > [69930.898641] FS:  () GS:986c1fdc() 
 >> knlGS:
 >>  > [69930.898779] CS:  0010 DS:  ES:  CR0: 80050033
 >>  > [69930.898892] CR2: 7fbe5e9f4ab4 CR3: 00019b40a005 CR4: 
 >> 001606e0
 >>  > [69930.899008] Call Trace:
 >>  > [69930.899121]  scsi_device_dev_release_usercontext+0x55/0x260 [scsi_mod]
 >>  > [69930.899242]  execute_in_process_context+0x5e/0x70
 >>  > [69930.899358]  device_release+0x2d/0x80
 >>  > [69930.899467]  kobject_put+0xa5/0x1a0
 >>  > [69930.899580]  scsi_remove_target+0x171/0x1b0 [scsi_mod]
 >>  > [69930.899699]  sas_rphy_remove+0x55/0x60 [scsi_transport_sas]
 >>  > [69930.899814]  sas_port_delete+0x2a/0x160 [scsi_transport_sas]
 >>  > [69930.899931]  mpt3sas_transport_port_remove+0x1bc/0x220 [mpt3sas]
 >>  > [69930.900053]  _scsih_remove_device+0x21d/0x330 [mpt3sas]
 >>  > [69930.900171]  ? _scsih_sas_host_refresh+0x118/0x180 [mpt3sas]
 >>  > [69930.900290]  _scsih_device_remove_by_handle.part.30+0x78/0xc0 
 >> [mpt3sas]
 >>  > [69930.900407]  _firmware_event_work+0x15c7/0x1d80 [mpt3sas]
 >>  > [69930.900519]  ? update_curr+0xf0/0x1a0
 

Re: SAS hotswap и баг

2018-04-08 Пенетрантность Artem Chuprina
Артём Н. -> debian-russian@lists.debian.org  @ Sun, 8 Apr 2018 11:37:14 +0300:

 > Вытащил диск, вставил на место, но в /dev его не увидел.
 > Зато увидел вот это в dmesg:

Это там, где ZFS поверх LUKS?  Есть шанс, что ты получил ответ на свой
вопрос, что же ты сделал неправильно.

 > [69497.081559] sd 0:0:5:0: [sdf] Synchronize Cache(10) failed: Result:
 > hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK
 > [69916.705257] Buffer I/O error on dev dm-8, logical block 0, async page read
 > [69930.896113] list_del corruption, 986c0632b010->next is LIST_POISON1 
 > (dead0100)
 > [69930.896226] [ cut here ]
 > [69930.896227] kernel BUG at 
 > /build/linux-3RM5ap/linux-4.14.13/lib/list_debug.c:47!
 > [69930.896329] invalid opcode:  [#1] SMP PTI
 > [69930.896416] Modules linked in: xt_nat veth ipt_MASQUERADE
 > nf_nat_masquerade_ipv4 nf_conntrack_netlink nfnetlink xfrm_user xfrm_algo
 > iptable_nat nf_conntrack_ipv4 nf_defrag_ipv4 nf_nat_ipv4 xt_addrtype
 > xt_conntrack nf_nat nf_conntrack br_netfilter bridge stp llc bonding 
 > xt_tcpudp
 > cpufreq_conservative cpufreq_userspace cpufreq_powersave iptable_filter
 > intel_rapl x86_pkg_temp_thermal intel_powerclamp kvm_intel iTCO_wdt
 > iTCO_vendor_support kvm irqbypass ttm drm_kms_helper intel_cstate 
 > intel_uncore
 > pcspkr intel_rapl_perf serio_raw drm evdev mei_me mei sg lpc_ich mfd_core
 > shpchp ie31200_edac button nuvoton_cir ipmi_si battery ipmi_devintf rc_core
 > ipmi_msghandler tpm_crb video acpi_pad nct6775 hwmon_vid jc42 coretemp
 > ip_tables x_tables autofs4 zfs(PO) zunicode(PO) zavl(PO) icp(PO) zcommon(PO)
 > znvpair(PO)
 > [69930.896925]  spl(O) btrfs zstd_decompress zstd_compress xxhash
 > algif_skcipher af_alg dm_crypt dm_mod raid10 raid456 async_raid6_recov
 > async_memcpy async_pq async_xor async_tx xor raid6_pq libcrc32c 
 > crc32c_generic
 > raid1 raid0 multipath linear md_mod sd_mod hid_generic usbhid hid
 > crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel pcbc
 > aesni_intel aes_x86_64 crypto_simd ahci glue_helper xhci_pci cryptd libahci
 > mpt3sas igb xhci_hcd raid_class i2c_algo_bit libata scsi_transport_sas dca
 > i2c_i801 ptp pps_core usbcore scsi_mod usb_common fan thermal
 > [69930.897315] CPU: 7 PID: 15570 Comm: kworker/u16:2 Tainted: P O
 > 4.14.0-0.bpo.3-amd64 #1 Debian 4.14.13-1~bpo9+1
 > [69930.897462] Hardware name: To Be Filled By O.E.M. To Be Filled By
 > O.E.M./E3C224D4I-14S, BIOS P3.20 05/29/2015
 > [69930.897612] Workqueue: fw_event_mpt2sas0 _firmware_event_work [mpt3sas]
 > [69930.897732] task: 986a138af040 task.stack: bbcfca9a8000
 > [69930.897846] RIP: 0010:__list_del_entry_valid+0x4e/0x90
 > [69930.897958] RSP: 0018:bbcfca9abb48 EFLAGS: 00010086
 > [69930.898070] RAX: 004e RBX: 0246 RCX: 
 > 
 > [69930.898185] RDX:  RSI: 986c1fdd66f8 RDI: 
 > 986c1fdd66f8
 > [69930.898298] RBP: 986c0632b738 R08:  R09: 
 > 0fdf
 > [69930.898413] R10: 017d R11: 99b88e6d R12: 
 > 986c0636b180
 > [69930.898527] R13: 986c05f22000 R14: 986c0632b000 R15: 
 > 986c0d078010
 > [69930.898641] FS:  () GS:986c1fdc() 
 > knlGS:
 > [69930.898779] CS:  0010 DS:  ES:  CR0: 80050033
 > [69930.898892] CR2: 7fbe5e9f4ab4 CR3: 00019b40a005 CR4: 
 > 001606e0
 > [69930.899008] Call Trace:
 > [69930.899121]  scsi_device_dev_release_usercontext+0x55/0x260 [scsi_mod]
 > [69930.899242]  execute_in_process_context+0x5e/0x70
 > [69930.899358]  device_release+0x2d/0x80
 > [69930.899467]  kobject_put+0xa5/0x1a0
 > [69930.899580]  scsi_remove_target+0x171/0x1b0 [scsi_mod]
 > [69930.899699]  sas_rphy_remove+0x55/0x60 [scsi_transport_sas]
 > [69930.899814]  sas_port_delete+0x2a/0x160 [scsi_transport_sas]
 > [69930.899931]  mpt3sas_transport_port_remove+0x1bc/0x220 [mpt3sas]
 > [69930.900053]  _scsih_remove_device+0x21d/0x330 [mpt3sas]
 > [69930.900171]  ? _scsih_sas_host_refresh+0x118/0x180 [mpt3sas]
 > [69930.900290]  _scsih_device_remove_by_handle.part.30+0x78/0xc0 [mpt3sas]
 > [69930.900407]  _firmware_event_work+0x15c7/0x1d80 [mpt3sas]
 > [69930.900519]  ? update_curr+0xf0/0x1a0
 > [69930.900627]  ? pick_next_task_fair+0x156/0x570
 > [69930.900737]  ? __switch_to+0xa8/0x450
 > [69930.900844]  process_one_work+0x181/0x370
 > [69930.900953]  worker_thread+0x4d/0x3c0
 > [69930.901061]  kthread+0xfc/0x130
 > [69930.901168]  ? process_one_work+0x370/0x370
 > [69930.901278]  ? kthread_create_on_node+0x70/0x70
 > [69930.901388]  ret_from_fork+0x1f/0x30
 > [69930.901494] Code: 74 2b 48 8b 12 48 39 d7 75 34 48 8b 50 08 48 39 d7 75 3c
 > b8 01 00 00 00 c3 48 89 fe 48 89 c2 48 c7 c7 60 9e 44 99 e8 7d 21 d5 ff <0f>
 > 0b 48 89 fe 48 c7 c7 98 9e 44 99 e8 6c 21 d5 ff 0f 0b 48 89
 > [69930.901702] RIP: __list_del_entry_valid+0x4e/0x90 RSP: bbcfca9abb48
 > [69930.901816] ---[ end trace b1b41653fc7fb543 ]---



Re: Системы управления сервером?

2018-04-08 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sun, 8 Apr 2018 11:55:37 +0300:

 >> Ну, еще регулярно лезут подобные баги в криптопротоколах, но там вот как
 >> раз сотни, а то и тысячи ревью, а толку? Потом лет через 10-15 таки
 >> находится тысяча первый ревьюер, который таки замечает багу и делает
 >> эксплойт.
 >> 
 > Может быть из-за ревью он находится через 10-15 лет, а не каждый год на
 > их протяжении?

И это тоже, но это ревью, опять же, в духе байки про Боинг, и задолго до
начала реализации.

А баги в реализации обычно ловят тесты.

 >> А обычно бага либо легко правится, либо быстро замечается. В идеале и
 >> то, и другое. Совсем в идеале ее ловит юнит-тест еще в процессе
 >> реализации фичи, но так бывает не всегда :)
 >> 
 > Угу, 50% времени на тесты в TDD, которые также могут баги содержать, о
 > чём как-то давно вы сами и писали.

Если считать только время реализации, отдельно от размышлений об
архитектуре, то больше 50%. На глазок, примерно 70. Оно, правда, часто
окупается.

 >>  >>  >>  >> Практика показывает, что читать код _до_ попадания в 
 >> репозиторий - не
 >>  >>  >>  >> очень хорошая идея. Благо репозиторий позволяет, если что, 
 >> откатить.
 >>  >>  >>  >> 
 >>  >>  >>  > Но сборки уже будут собраны и отправлены на тестирование, так не 
 >> лучше
 >>  >>  >>  > ли - не допустить?
 >>  >>  >>  > Какая практика?
 >>  >>  >>  > В чём нехорошесть данной идеи?
 >>  >>  >> 
 >>  >>  >> Тормозной путь. Между моментом изменения кода и моментом, когда код
 >>  >>  >> будет изменен, проходит время.
 >>  >>  > Как минус, так и плюс.
 >>  >> 
 >>  >> В течение этого времени в системе присутствуют и старые, и новые баги.
 >>  >> Где плюс?
 >>  >> 
 >>  > Нет, присутствуют только старые баги, которые уже известны, проверены и
 >>  > одеты в пиджак, так что стали напоминать фичи.
 >> 
 >> В коде они уже есть. В репозиторий еще не попали, а в коде уже есть. И
 >> поверх них уже идет работа.
 >> 
 > Да не идёт поверх них работы, пока их нет в репозитории, иначе процесс
 > неверно построен.

То есть в верно построенном процессе эти два дня никто ничего не делает
ни в чем, завязанном на это место кода? Верно построен процесс, что и
говорить...

 >> И не факт, кстати, что старые баги известны. Мы можем говорить о ревью,
 >> например, фикса свеженаступленной грабли. Она, может, в коде и пару лет
 >> уже, но важный заказчик наступил на нее только сегодня, а до него просто
 >> никому не приходило в голову проделать именно эту последовательность
 >> действий.
 >> 
 > Главное, чтобы фикс не внёс два других ещё более неочевидных бага и
 > ничего не сломал.

А это по коду фикса очень трудно понять. Нужен контекст гораздо большего
объема. Тут как раз набор автоматизированных тестов работает не в пример
лучше - в нем этот контекст зафиксирован.

 >>  > А тут новые баги, которые успеют сломать тестирование, например, в
 >>  > результате чего могут не пройти другие тесты и т.п..
 >>  > На ревью есть шанс хоть что-то отсеять (да, я в курсе про юнит-тесты,
 >>  > однако есть факты на практике).
 >> 
 >> На практике тесты для того и существуют, чтобы баги их ломали. Один фиг,
 >> если тест сломался, то багу надо чинить. Если бага сломала сразу много
 >> тестов, починка приоритетна, и все дела.
 >> 
 > Ладно, умолчу про тех, кто "чинит" тесты в таком случае.
 > Такие тоже бывали.
 > Но очень редко тестовое покрытие полное.

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

 >>  >>  > Да, с прерываниями. Но сложно постоянно концентрироваться на ревью и
 >>  >>  > ждать ответов автора (который в этом время уже над другим работает), 
 >> к
 >>  >>  > тому же, ревьюверов бывает несколько.
 >>  >> 
 >>  >> Я про прерывания не процесса ревью, а про прерывания процесса своей
 >>  >> работы необходимостью ревью.  Для ревью надо загрузить в голову контекст
 >>  >> той задачи, к которой относится просматриваемый код.  Он там неизбежно
 >>  >> заменит контекст своей задачи.  После ревью придется снова грузить свой.
 >>  >> Это время, и в случае сложной задачи весьма изрядное.  От 15 минут до
 >>  >> часа каждая перегрузка, а их тут две.
 >>  > Ну час - это явный перебор.
 >> 
 >> Это значит, у тебя все задачи простые.
 >> 
 > Не сказал бы. Ревью компактные относительно. И, естественно, что я не
 > вникаю в весь код: только в изменения.

То есть как раз неочевидные грабли, которые вносит изменение, ты
пропустишь с вероятностью, близкой к 1.

 >>  > А отрыв на 15 минут - не критично: вы же не соревновательным
 >>  > программированием занимаетесь, надеюсь?
 >> 
 >> Каждая перезагрузка. Каждое ревью. Плюс столько же потом вернуться в 
 >> контекст.
 >> 
 > Есть вечер, утро и обед, если не критично.

В обед надо обедать. И мозгом тоже. Иначе очень быстро огребешь гастрит.

 >>  > Иногда вообще полезно от задачи оторваться, бывает.
 >> 
 >> В моем опыте оторваться от задачи полезно, а вот заменять в голове ее
 >> контекст контекстом другой задачи как раз 

Re: Системы управления сервером?

2018-03-31 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sat, 31 Mar 2018 14:18:00 +0300:

 >>  >>  >>  >> За коммитами джуниоров просто присматривают вручную. Недолго, 
 >> человек
 >>  >>  >>  >> либо обучается, либо идет искать работу в другом месте.
 >>  >>  >>  >> 
 >>  >>  >>  > Да тут вопрос не о джуниорах. Всё сложнее. Но, в любом случае, 
 >> код
 >>  >>  >>  > сложный, хотелось бы видеть, что уйдёт в репозиторий.
 >>  >>  >> 
 >>  >>  >> В одной из контор у нас были любители почитать код, уходящий в
 >>  >>  >> репозиторий. Ну, репозиторий был настроен так, чтобы рассылать 
 >> коммиты
 >>  >>  >> желающим. По почте. Тем же способом присматривали за джуниорами.
 >>  >>  >> 
 >>  >>  > Примерно так и есть, но почта заменяется ccollab (или, в общем 
 >> случае,
 >>  >>  > любым web интерфейсом), и код не проходит в репозиторий без 
 >> одобрения.
 >>  >> 
 >>  >> Тут важный момент - не веб или почта "код не проходит в репозиторий без
 >>  >> одобрения". У нас проходил. Мой point в том, что проблем от этого не
 >>  >> происходит.
 >>  >> 
 >>  > Возможно. Надо подумать над этим. Раньше я даже не предполагал такой
 >>  > практики.
 >> 
 >> Собственно, системы управления версиями придуманы ровно для этой
 >> ситуации.  Чтобы заменить трехслойную бюрократию ревью, которая работает
 >> месяц, но тоже пропускает баги, возможностью найти и откатить изменение,
 >> если оно оказалось неудачным.
 >> 
 >> А чтобы неудачное изменение не долетело до заказчика, существует
 >> релизный цикл.  И ревью его необходимости не отменяет.
 >> 
 > Есть минусы, есть плюсы: не так легко откатить сломавшую правку из
 > репозитория, на которую уже понакоммитили и заложили функционал.

Бывает и такое. Но мне в жизни всего однажды встретилась грабля, которую
очень не сразу удалось обнаружить, не брали никакие разумные тесты, и
трудоемко было потом починить. Так и не починили, кстати. Причем по
крайней мере два первых ревью (два разных человека, входивших в разное
время в проект, внимательно читали этот код) она тоже успешно
проскочила.

Ну, еще регулярно лезут подобные баги в криптопротоколах, но там вот как
раз сотни, а то и тысячи ревью, а толку? Потом лет через 10-15 таки
находится тысяча первый ревьюер, который таки замечает багу и делает
эксплойт.

А обычно бага либо легко правится, либо быстро замечается. В идеале и
то, и другое. Совсем в идеале ее ловит юнит-тест еще в процессе
реализации фичи, но так бывает не всегда :)

 >>  >>  >> Практика показывает, что читать код _до_ попадания в репозиторий - 
 >> не
 >>  >>  >> очень хорошая идея. Благо репозиторий позволяет, если что, откатить.
 >>  >>  >> 
 >>  >>  > Но сборки уже будут собраны и отправлены на тестирование, так не 
 >> лучше
 >>  >>  > ли - не допустить?
 >>  >>  > Какая практика?
 >>  >>  > В чём нехорошесть данной идеи?
 >>  >> 
 >>  >> Тормозной путь. Между моментом изменения кода и моментом, когда код
 >>  >> будет изменен, проходит время.
 >>  > Как минус, так и плюс.
 >> 
 >> В течение этого времени в системе присутствуют и старые, и новые баги.
 >> Где плюс?
 >> 
 > Нет, присутствуют только старые баги, которые уже известны, проверены и
 > одеты в пиджак, так что стали напоминать фичи.

В коде они уже есть. В репозиторий еще не попали, а в коде уже есть. И
поверх них уже идет работа.

И не факт, кстати, что старые баги известны. Мы можем говорить о ревью,
например, фикса свеженаступленной грабли. Она, может, в коде и пару лет
уже, но важный заказчик наступил на нее только сегодня, а до него просто
никому не приходило в голову проделать именно эту последовательность
действий.

 > А тут новые баги, которые успеют сломать тестирование, например, в
 > результате чего могут не пройти другие тесты и т.п..
 > На ревью есть шанс хоть что-то отсеять (да, я в курсе про юнит-тесты,
 > однако есть факты на практике).

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

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

Это значит, у тебя все задачи простые.

 > А отрыв на 15 минут - не критично: вы же не соревновательным
 > программированием занимаетесь, надеюсь?

Каждая перезагрузка. Каждое ревью. Плюс столько же потом вернуться в контекст.

 > Иногда вообще полезно от задачи оторваться, бывает.

В моем опыте оторваться от задачи полезно, а вот заменять 

Re: Автоотключение монитора подключённого по HDMI

2018-03-29 Пенетрантность Artem Chuprina
Andrey Tataranovich -> debian-russian  @ Thu, 29 Mar 2018 16:39:07 +0300:

 >> в /etc/pm/sleep.d скрипт положите.
 >>
 >> что-то вроде
 >>
 >>
 >> case $1)
 >>   suspend|hibernate)
 >> DISPLAY=:0 xrandr --output HDMI1 --off
 >>   ;;
 >> esac
 >>

 > Вот только на системах с systemd это не работает. У systemd собственный
 > обработчик для событий suspend/hibernate и хуки pm-utils не вызываются.

А у своего хуков нет?



Re: Почтовый клиент

2018-03-29 Пенетрантность Artem Chuprina
D. H. -> debian-russian@lists.debian.org  @ Thu, 29 Mar 2018 08:26:49 -0500:

 >>  > Ага, тут связка с smarthost. Этого дела нету. Интересно можно ли в
 >>  > принципе заставить MTA общаться с другими MTA по томуже 587
 >> 
 >> С любыми - нет. Это submission port, там будут ожидать аутентификации.

 > Тогда буду менять провайдера и не устраивать плясок с бубном вокруг
 > смартхостов и vpn.

 > Хотя можно попробовать на него надавить. За статический адрес плачу, что
 > за ерунда с обрезанием портов блин.

Или так. Я вот недавно по своим пробегался, почитал условия. У них
(обоих) если внешний IP, то резьбы по портам нет.



Re: Почтовый клиент

2018-03-29 Пенетрантность Artem Chuprina
D. H. -> debian-russian@lists.debian.org  @ Thu, 29 Mar 2018 08:04:37 -0500:

 >> silver (ноутбук):
 >> 
 >> /etc/exim4/update-exim4.conf.conf:
 >> ..
 >> dc_smarthost='nest::587'
 >> ..
 >> 
 >> /etc/exim4/passwd.client:
 >> nest:mailsilver:тутПароль
 > 

 > Ага, тут связка с smarthost. Этого дела нету. Интересно можно ли в
 > принципе заставить MTA общаться с другими MTA по томуже 587

С любыми - нет. Это submission port, там будут ожидать аутентификации.



Re: Почтовый клиент

2018-03-29 Пенетрантность Artem Chuprina
D. H. -> debian-russian@lists.debian.org  @ Thu, 29 Mar 2018 07:30:20 -0500:

 >> соответственно, входящую почту приходилось пробрасывать через VPN с
 >> виртуалки на хостинге. (VPN тут в принципе не обязательна, достаточно
 >> настроить транспорт через smtps по нестандартному порту, но если она
 >> все равно есть, через нее - проще).

 > А вот тут можно чуть подробнее в случае exim? С ходу как-то не нашлось у
 > меня ответа на этот вопрос. Сейчас тоже через vpn пускаю, но если есть
 > возможность от него отказаться

silver (ноутбук):

/etc/exim4/update-exim4.conf.conf:
...
dc_smarthost='nest::587'
...

/etc/exim4/passwd.client:
nest:mailsilver:тутПароль

Ну, 587 - он стандартный, но у меня его провайдер не перекрывает, только 25.

nest (VPS):
там по ряду причин конфиг полностью самописный, зато экзимовский, а не 
дебиановский. Из релевантного:

daemon_smtp_ports = 25 : 465 : 587
tls_on_connect_ports = 465
(на 587, соответственно, STARTTLS)

acl_check_mail:
warn hosts = : @[]
 control = submission
warn authenticated = *
 control = submission/sender_retain
 set acl_c_relay = true
 set acl_c_skip_sa = true
 set acl_c_skip_greylist = true
 set acl_c_skip_spamtrap = true
(переменные используются в соответствующих местах, но идея понятна)

acl_check_rcpt:
# если мы это письмо релеим - проверяем получателя и принимаем
deny condition = $acl_c_relay
 !verify = recipient/defer_ok
accept condition = $acl_c_relay
(это вот существенное место, именно тут решается, что делать с
аутентифицироваными клиентами)

begin authenticators

dovecot_login:
driver = dovecot
public_name = LOGIN
server_advertise_condition = ${if eq{$tls_cipher}{}{no}{yes}}
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1

dovecot_plain:
driver = dovecot
public_name = PLAIN
server_advertise_condition = ${if eq{$tls_cipher}{}{no}{yes}}
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1

(у меня dovecot IMAP-сервером, заодно об него и аутентифицируем; а он,
соответственно, уже об PAM)



Re: Почтовый клиент

2018-03-29 Пенетрантность Artem Chuprina
Евгений Кабанов -> Debian-russian  @ Thu, 29 Mar 2018 12:04:44 +0300:

 >> Ходить по imap это правильно. Почта должна лежать в  одном месте, и
 >> это место должно быть доступно по imap.

 > Это может быть и правильно, но не всегда удобно. На слабых каналах
 > связи очень тяжко бывает, а если за границей, а если ещё и дорого...

Слабый канал и дорого — это два противоречащих одно другому условия. В
смысле, если выполняются сразу оба, то мы в жопе. И надо понимать, в
какой мы сегодня позе.

Если канал слабый (читай: слишком высокое время отклика), то
offlineimap. Предварительно, перед выездом из дома,
засинхронизированный, чтобы не пришлось качать лишнего. Запустил его, и
пошел мыться. Пока мылся, он накопившуюся почту скачал. У меня он
работает поверх ssh. Он умеет на этом конце тоже IMAP и Maildir. Скажу
сразу, не умеет отследить, что письмо было перемещено из одного фолдера
в другой. Умеет НЕ синхронизировать обратно, но у меня синхронизирует.

Если дорого, то нужно брать IMAP-клиент, который умеет не читать дальше
заголовков (протокол позволяет).



Re: Системы управления сервером?

2018-03-28 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Tue, 27 Mar 2018 23:35:21 +0300:

 >>  >>  >> В идеале пишутся тесты. Часть заранее, часть по мере наступания на
 >>  >>  >> грабли :) Код на Haskell и Scala даже и не тестируется 
 >> автомагически,
 >>  >>  >> настолько мало там багов, что написание тестов не окупается.
 >>  >>  >> 
 >>  >>  > Ну это две параллельные задачи. Часто тесты нельзя написать.
 >>  >> 
 >>  >> Если тесты нельзя написать, то код негодный. Другое дело, что на
 >>  >> написание тестов не всегда хватает ресурса.
 >>  >> 
 >>  > Ну почему сразу "код"? А взаимодействие с аппаратурой? Моки каждый раз
 >>  > делать?
 >> 
 >> Не каждый. Для unit-тестирования да, а для acceptance подключать
 >> аппаратуру, ага.
 >> 
 > А она бажная. Как факт. Потому что тоже разрабатывается.

Именно поэтому для acceptance, или, точнее, для integration, ее надо подключать.

 >>  >> Если более тысячи программистов отвечают за одно место в коде, код
 >>  >> работать не будет. В больших конторах за каждое место в коде отвечает
 >>  >> очень небольшое количество людей, а протоколы взаимодействия между кодом
 >>  >> разных отделов компактны.
 >>  >> 
 >>  >>  >> За коммитами джуниоров просто присматривают вручную. Недолго, 
 >> человек
 >>  >>  >> либо обучается, либо идет искать работу в другом месте.
 >>  >>  >> 
 >>  >>  > Да тут вопрос не о джуниорах. Всё сложнее. Но, в любом случае, код
 >>  >>  > сложный, хотелось бы видеть, что уйдёт в репозиторий.
 >>  >> 
 >>  >> В одной из контор у нас были любители почитать код, уходящий в
 >>  >> репозиторий. Ну, репозиторий был настроен так, чтобы рассылать коммиты
 >>  >> желающим. По почте. Тем же способом присматривали за джуниорами.
 >>  >> 
 >>  > Примерно так и есть, но почта заменяется ccollab (или, в общем случае,
 >>  > любым web интерфейсом), и код не проходит в репозиторий без одобрения.
 >> 
 >> Тут важный момент - не веб или почта "код не проходит в репозиторий без
 >> одобрения". У нас проходил. Мой point в том, что проблем от этого не
 >> происходит.
 >> 
 > Возможно. Надо подумать над этим. Раньше я даже не предполагал такой
 > практики.

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

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

 >>  >> Практика показывает, что читать код _до_ попадания в репозиторий - не
 >>  >> очень хорошая идея. Благо репозиторий позволяет, если что, откатить.
 >>  >> 
 >>  > Но сборки уже будут собраны и отправлены на тестирование, так не лучше
 >>  > ли - не допустить?
 >>  > Какая практика?
 >>  > В чём нехорошесть данной идеи?
 >> 
 >> Тормозной путь. Между моментом изменения кода и моментом, когда код
 >> будет изменен, проходит время.
 > Как минус, так и плюс.

В течение этого времени в системе присутствуют и старые, и новые баги.
Где плюс?

 >> Либо это очень большое время, либо
 >> ревьюер работает с частыми прерываниями. Если у него содержательная
 >> работа не обезьянья, то частые прерывания очень сильно снижают его
 >> продуктивность. Так и так изрядно падает КПД.
 >>
 > Ну, допустим, пара дней на ревью - это большое время?

Офигительно.  За это время я успею еще много чего сделать, и оно будет
пересекаться по коду с теми изменениями, и если изменение не примут как
есть, то попытка что-то там подкрутить приведет к конфликтам с точки
зрения VCS.  А разбор конфликта - одно из самых багопродуцирующих
действий.  И результатом его оказывается патч, разбираться в котором -
уже два полных рабочих дня, а не просто задержка на пару дней.

 > Да, с прерываниями. Но сложно постоянно концентрироваться на ревью и
 > ждать ответов автора (который в этом время уже над другим работает), к
 > тому же, ревьюверов бывает несколько.

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

 >>  >> Это вот понятное употребление ревью. Очень громоздкое, но цена ошибки
 >>  >> там такова, что оно окупается.
 >>  >> 
 >>  > В случае того, что есть сейчас, коммиты тоже обосновываются: к ним
 >>  > привязана задача, после чего проверяются (перед репозиторием).
 >> 
 >> А "в случае того, что есть сейчас" непонятно, окупается ли этот
 >> тормозной путь.
 >> 
 > Продукт окупается.
 > "Тормозной путь", скорее всего, да.
 > Не от хорошей жизни, а из-за некоторых разработчиков и сжатых сроков.

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

 >>  >>  >>  

Re: Системы управления сервером?

2018-03-27 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Mon, 26 Mar 2018 20:53:38 +0300:

 >>  >> В идеале пишутся тесты. Часть заранее, часть по мере наступания на
 >>  >> грабли :) Код на Haskell и Scala даже и не тестируется автомагически,
 >>  >> настолько мало там багов, что написание тестов не окупается.
 >>  >> 
 >>  > Ну это две параллельные задачи. Часто тесты нельзя написать.
 >> 
 >> Если тесты нельзя написать, то код негодный. Другое дело, что на
 >> написание тестов не всегда хватает ресурса.
 >> 
 > Ну почему сразу "код"? А взаимодействие с аппаратурой? Моки каждый раз
 > делать?

Не каждый. Для unit-тестирования да, а для acceptance подключать
аппаратуру, ага.

 > А работа при загрузке ОС?

И это тоже надо тестировать. Ну да, придется контейнер тюнить.

 >>  > Плюс, на ревью проверяется читабельность кода и его логическая
 >>  > корректность (и тесты, и код возможно написать некорректно).  Плюс, в
 >>  > два раза больше работы.  В общем, одно другое не заменяет.
 >> 
 >> Я не утверждал, что тестирование заменяет ревью. Я утверждал, что в
 >> процессах, которые применяются там, где я работал, ревью отсутствует.
 >> 
 > Понял вас. Хотя, всё-равно не могу представить. У меня опыт поменьше, но
 > всё-таки, в трёх достаточно известных конторах, где я работал, ревью
 > имеется, причём через WEB GUI.

Известная контора - еще далеко не гарантия качества результата :)

 >> Если более тысячи программистов отвечают за одно место в коде, код
 >> работать не будет. В больших конторах за каждое место в коде отвечает
 >> очень небольшое количество людей, а протоколы взаимодействия между кодом
 >> разных отделов компактны.
 >> 
 >>  >> За коммитами джуниоров просто присматривают вручную. Недолго, человек
 >>  >> либо обучается, либо идет искать работу в другом месте.
 >>  >> 
 >>  > Да тут вопрос не о джуниорах. Всё сложнее. Но, в любом случае, код
 >>  > сложный, хотелось бы видеть, что уйдёт в репозиторий.
 >> 
 >> В одной из контор у нас были любители почитать код, уходящий в
 >> репозиторий. Ну, репозиторий был настроен так, чтобы рассылать коммиты
 >> желающим. По почте. Тем же способом присматривали за джуниорами.
 >> 
 > Примерно так и есть, но почта заменяется ccollab (или, в общем случае,
 > любым web интерфейсом), и код не проходит в репозиторий без одобрения.

Тут важный момент - не веб или почта "код не проходит в репозиторий без
одобрения". У нас проходил. Мой point в том, что проблем от этого не
происходит.

 >> Практика показывает, что читать код _до_ попадания в репозиторий - не
 >> очень хорошая идея. Благо репозиторий позволяет, если что, откатить.
 >> 
 > Но сборки уже будут собраны и отправлены на тестирование, так не лучше
 > ли - не допустить?
 > Какая практика?
 > В чём нехорошесть данной идеи?

Тормозной путь. Между моментом изменения кода и моментом, когда код
будет изменен, проходит время. Либо это очень большое время, либо
ревьюер работает с частыми прерываниями. Если у него содержательная
работа не обезьянья, то частые прерывания очень сильно снижают его
продуктивность. Так и так изрядно падает КПД.

 >> Это вот понятное употребление ревью. Очень громоздкое, но цена ошибки
 >> там такова, что оно окупается.
 >> 
 > В случае того, что есть сейчас, коммиты тоже обосновываются: к ним
 > привязана задача, после чего проверяются (перед репозиторием).

А "в случае того, что есть сейчас" непонятно, окупается ли этот
тормозной путь.

 >>  >>  >> В общем, даже модель pull request не использовали, не говоря уже о 
 >> code
 >>  >>  >> review. А вот работу в паре как раз использовали.
 >>  >>  >> 
 >>  >>  > А подробнее? Это из области "экстремального программирования"?
 >>  >> 
 >>  >> Да. Просто садятся двое. Один за клавиатурой, он код пишет. Второй
 >>  >> рядом, он смотрит, что пишет первый. Его задача - взгляд уровнем
 >>  >> абстракции выше, чем у писателя. Чтобы прямо по ходу иметь возможность
 >>  >> сказать "ты решаешь не ту задачу" или "ты сейчас подложил вот сюда вот
 >>  >> такие грабли".
 >>  >> 
 >>  >> Результаты различного качества, в зависимости в основном от дисциплины
 >>  >> написания тестов. Но так, чтобы было неработоспособно - нет. Чаще
 >>  >> вылетает аппаратура, чем вылезают не дающие работать баги.
 >>  >> 
 >>  > Только читал об этом, не думал, что в РФ используется.
 >> 
 >> Это парадигма, ей чихать на государственные границы.
 >> 
 > Границы не при чём, имеет значение "менталитет", в общем и, в частности:
 > культура разработки и стоимость такого подхода.

Менталитет программиста тоже интернационален. С менталитетом "кодера по
обезьяньей работе" хуже, но extreme programming - технология для
программистов.

 >>  > В любом случае, если я такое (чисто теоретически) предложу менеджеру,
 >>  > он только у виска покрутит. Это же получается, что каждый программист
 >>  > работает, условно половину времени, а половину сидит "и что-то там
 >>  > смотрит".

 >> А если тебе не результат а имитацию бурной деятельности для менеджера,
 >> то да, подход ровно обратный.
 > В конкретном 

Re: Системы управления сервером?

2018-03-25 Пенетрантность Artem Chuprina
Alexander Gerasiov -> debian-russian@lists.debian.org  @ Sun, 25 Mar 2018 
19:16:36 +0300:

 >>  > Артем, при работе с джунами очень удобно ткнуть мышой в место в
 >>  > коде/диффе и написать, что тут не так и как поправить. Особенно,
 >>  > когда таких мест десяток. Без этого приходится либо сажать рядом и
 >>  > показывать, либо в ядерном стиле, когда дифф в почте комментируется
 >>  > инлайн.
 >>  > Так что не надо топить вебинтерфейсы, у них иногда действительно
 >>  > есть плюсы.  
 >> 
 >> Эффективнее всего - именно сажать рядом и показывать.
 > Но для этого хорошо бы предварительно откомментировать, иначе сам потом
 > сходу не вспомишь, когда будешь объяснять, все замечания - это раз, и
 > джуниор не вспомнит все замечания, когда будет их править - два.

Ну, да, полезно. Нет, не в браузере - как текстовый редактор он очень неудобен.



Re: Системы управления сервером?

2018-03-24 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sat, 24 Mar 2018 16:46:36 +0300:

 >>> Впечатлился статьёй.
 >>> Айн: https://habrahabr.ru/post/328048/
 >>> Цвайн:
 >>> https://forum.level1techs.com/t/how-to-create-a-nas-using-zfs-and-proxmox-with-pictures/117375
 >>>
 >>> Помимо Proxmox, есть такая штука, как Cockpit:
 >>> http://cockpit-project.org
 >>>
 >>> О нём я ничего не знаю.
 >>> Собственно, Proxmox я тоже не использовал.
 >>>
 >>> Основные задачи:
 >>>
 >>> - Отделение сервисов путём контейнеризации (docker+lxc, возможно будет
 >>> использован kvm в редких случаях).
 >> Используем Proxmox.
 >> 
 > Вот ещё насчёт Proxmox: возможно ли его поставить в Docker контейнер и
 > стоит ли это делать?

А потом все это запустить на VirtualBox, запущенном под VmWare?



Re: Системы управления сервером?

2018-03-24 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sat, 24 Mar 2018 16:59:02 +0300:

 >>  >> Больше 15 лет работаю с кодом в коллективах. Ни разу не использовали
 >>  >> никаких гитлабов и вообще никаких уеб-интерфейсов. Никаких сложностей, и
 >>  >> код работает.
 >>  >> 
 >>  > 1. Сейчас, где я работаю, используется TFS, прости Господи. Под Linux.
 >>  > Ревью проводится через CodeCollaborator. Это наследие такое. Гит тоже
 >>  > есть, но пока не везде.
 >>  > 2. Объективно лучше, чем ccollab, интерфейсы gitlab и bitbucket. Для
 >>  > всех без исключений. Даже те, кто больше всех матерился из-за перехода
 >>  > на git, в разных конторах, в итоге признавали, что "эти web-интерфейсы
 >>  > удобнее".
 >> 
 >>  > Не опровергаю ваш опыт, но узнать было бы интересно: как так?
 >>  > Т.е.:
 >> 
 >>  > - Первый вопрос: это код на Haskell, не C/C++ + Python + Lua + Bash + 
 >> etc.?
 >> 
 >> C, C++, Smalltalk, Haskell, Scala, tcl.
 >> 
 >>  > - Как проводится процесс контроля и устранения недостатков?
 >> 
 >> В идеале пишутся тесты. Часть заранее, часть по мере наступания на
 >> грабли :) Код на Haskell и Scala даже и не тестируется автомагически,
 >> настолько мало там багов, что написание тестов не окупается.
 >> 
 > Ну это две параллельные задачи. Часто тесты нельзя написать.

Если тесты нельзя написать, то код негодный. Другое дело, что на
написание тестов не всегда хватает ресурса.

 > Плюс, на ревью проверяется читабельность кода и его логическая
 > корректность (и тесты, и код возможно написать некорректно).  Плюс, в
 > два раза больше работы.  В общем, одно другое не заменяет.

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

 >>  > - Если несколько ревьюверов, как они просматривают код и вносят 
 >> замечания?
 >> 
 >> Их нет. Ревьюеров, в смысле. В одной из предыдущих контор был мем "кто
 >> первый встал, того и грабли". В смысле, багу исправляет тот, кто на нее
 >> наступил (или взялся за багрепорт). Это обеспечивает коллективное
 >> владение кодом. В отличие от code review, которое все-таки нет. При
 >> необходимости {git,svn,cvs} annotate и зовем автора проблемного
 >> места. Но это нужно очень не всегда.
 >> 
 > Но если в конторе более тысячи программистов, а за код отвечают разные
 > отделы, причём часть людей, его написавших, уже давно не работает, будет
 > ли такая схема эффективна (это не к моему случаю, а в общем)?

А в общем задача неразрешима. Это еще Гёдель доказал :) Решается всегда
в конкретном.

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

 >> За коммитами джуниоров просто присматривают вручную. Недолго, человек
 >> либо обучается, либо идет искать работу в другом месте.
 >> 
 > Да тут вопрос не о джуниорах. Всё сложнее. Но, в любом случае, код
 > сложный, хотелось бы видеть, что уйдёт в репозиторий.

В одной из контор у нас были любители почитать код, уходящий в
репозиторий. Ну, репозиторий был настроен так, чтобы рассылать коммиты
желающим. По почте. Тем же способом присматривали за джуниорами.

Практика показывает, что читать код _до_ попадания в репозиторий - не
очень хорошая идея. Благо репозиторий позволяет, если что, откатить.

Не, мне рассказывали байку о техпроцессе в Боинге с кодом, который идет
в авионику. Там ревью есть, но начинается оно не с would-be коммита, а с
обоснования, почему надо менять именно это место в коде, и как его
менять. Только там питона, баша и луа быть не может - их интерпретаторы
не удовлетворяют требованиям к тому техпроцессу.

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

 >>  >> В общем, даже модель pull request не использовали, не говоря уже о code
 >>  >> review. А вот работу в паре как раз использовали.
 >>  >> 
 >>  > А подробнее? Это из области "экстремального программирования"?
 >> 
 >> Да. Просто садятся двое. Один за клавиатурой, он код пишет. Второй
 >> рядом, он смотрит, что пишет первый. Его задача - взгляд уровнем
 >> абстракции выше, чем у писателя. Чтобы прямо по ходу иметь возможность
 >> сказать "ты решаешь не ту задачу" или "ты сейчас подложил вот сюда вот
 >> такие грабли".
 >> 
 >> Результаты различного качества, в зависимости в основном от дисциплины
 >> написания тестов. Но так, чтобы было неработоспособно - нет. Чаще
 >> вылетает аппаратура, чем вылезают не дающие работать баги.
 >> 
 > Только читал об этом, не думал, что в РФ используется.

Это парадигма, ей чихать на государственные границы.

 > В любом случае, если я такое (чисто теоретически) предложу менеджеру,
 > он только у виска покрутит. Это же получается, что каждый программист
 > работает, условно половину времени, а половину сидит "и что-то там
 > смотрит".

А если тебе не результат а имитацию бурной деятельности для менеджера,
то да, подход 

Re: Системы управления сервером?

2018-03-24 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sat, 24 Mar 2018 17:00:47 +0300:

 >> Artem Chuprina <r...@lasgalen.net> wrote:
 >> 
 >> Артем, при работе с джунами очень удобно ткнуть мышой в место в

...

 >> Так что не надо топить вебинтерфейсы, у них иногда действительно есть плюсы.
 >> 
 > В каком смысле? Что я "топлю"? Я так и делаю обычно (комментирую
 > строчки, либо показываю, что не так), а сейчас ищу для себя подходящий
 > интерфейс.

Ты просто читаешь не все буквы. Иногда зря. Имя в письме прочел, а
фамилию в квоте - нет.



Re: Системы управления сервером?

2018-03-24 Пенетрантность Artem Chuprina
Alexander Gerasiov -> debian-russian@lists.debian.org  @ Sat, 24 Mar 2018 
14:45:18 +0300:

 >>  >> В зависимости от сценария разработки - пуш на приватную ветку или
 >>  >> в свой репозиторий и дальше пулл-реквест, где мейнтейнер смотрит
 >>  >> дифф, оставляет комментарии (но не к строчкам кода/диффа, а
 >>  >> только к реквесту в целом) и аксептит или реджектит.
 >>  >> 
 >>  >>   
 >>  > Ладно, хотя бы реквесты есть.
 >>  > Но если больше 10 файлов в мердже, не особенно представляю, как с
 >>  > этим работать.
 >>  > Сам я работал с гитовыми репозиториями через gitlab и с bitbucket
 >>  > (ну да, если считать, что гогс повторяет интерфейс гитхаб, то и с
 >>  > ним, только с ревью), и без комментариев к строчкам, как-то
 >>  > коллективно работать с кодом было бы весьма сложно.  
 >> 
 >> Больше 15 лет работаю с кодом в коллективах. Ни разу не использовали
 >> никаких гитлабов и вообще никаких уеб-интерфейсов. Никаких
 >> сложностей, и код работает.
 >> 
 >> В общем, даже модель pull request не использовали, не говоря уже о
 >> code review. А вот работу в паре как раз использовали.

 > Артем, при работе с джунами очень удобно ткнуть мышой в место в
 > коде/диффе и написать, что тут не так и как поправить. Особенно, когда
 > таких мест десяток. Без этого приходится либо сажать рядом и
 > показывать, либо в ядерном стиле, когда дифф в почте комментируется
 > инлайн.
 > Так что не надо топить вебинтерфейсы, у них иногда действительно есть плюсы.

Эффективнее всего - именно сажать рядом и показывать.

А если говорить о переписке, то логичнее поправить, закоммитить, и
прокомментировать _свой_ коммит.



Re: Системы управления сервером?

2018-03-24 Пенетрантность Artem Chuprina
artiom -> debian-russian@lists.debian.org  @ Sat, 24 Mar 2018 10:58:11 +0300:

 >> Больше 15 лет работаю с кодом в коллективах. Ни разу не использовали
 >> никаких гитлабов и вообще никаких уеб-интерфейсов. Никаких сложностей, и
 >> код работает.
 >> 
 > 1. Сейчас, где я работаю, используется TFS, прости Господи. Под Linux.
 > Ревью проводится через CodeCollaborator. Это наследие такое. Гит тоже
 > есть, но пока не везде.
 > 2. Объективно лучше, чем ccollab, интерфейсы gitlab и bitbucket. Для
 > всех без исключений. Даже те, кто больше всех матерился из-за перехода
 > на git, в разных конторах, в итоге признавали, что "эти web-интерфейсы
 > удобнее".

 > Не опровергаю ваш опыт, но узнать было бы интересно: как так?
 > Т.е.:

 > - Первый вопрос: это код на Haskell, не C/C++ + Python + Lua + Bash + etc.?

C, C++, Smalltalk, Haskell, Scala, tcl.

 > - Как проводится процесс контроля и устранения недостатков?

В идеале пишутся тесты. Часть заранее, часть по мере наступания на
грабли :) Код на Haskell и Scala даже и не тестируется автомагически,
настолько мало там багов, что написание тестов не окупается.

 > - Если несколько ревьюверов, как они просматривают код и вносят замечания?

Их нет. Ревьюеров, в смысле. В одной из предыдущих контор был мем "кто
первый встал, того и грабли". В смысле, багу исправляет тот, кто на нее
наступил (или взялся за багрепорт). Это обеспечивает коллективное
владение кодом. В отличие от code review, которое все-таки нет. При
необходимости {git,svn,cvs} annotate и зовем автора проблемного
места. Но это нужно очень не всегда.

За коммитами джуниоров просто присматривают вручную. Недолго, человек
либо обучается, либо идет искать работу в другом месте.

 > - Как и кем производится слияние feature-ветки в основную?

Релиз-менеджером. В смысле, тем, кто сегодня релиз-менеджер.

 > - Сколько людей работают с репозиторием?

Десятка полтора-два.

 >> В общем, даже модель pull request не использовали, не говоря уже о code
 >> review. А вот работу в паре как раз использовали.
 >> 
 > А подробнее? Это из области "экстремального программирования"?

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

Результаты различного качества, в зависимости в основном от дисциплины
написания тестов. Но так, чтобы было неработоспособно - нет. Чаще
вылетает аппаратура, чем вылезают не дающие работать баги.



  1   2   3   4   5   6   7   8   9   10   >