LINUX.ORG.RU

Сообщения www_linux_org_ru

 

софт с gui (а еще лучше с html-интерфейсом) для управления универсальными очередями заданий на закачку

есть такой вообще в природе?

что значит универсальными очередями? вроде как качалки уже пытаются одинаково показывать закачки через http и закачки через torrent, но это еще не полная универсальность, а только шаг к ней

чего тут не хватает — так это возможности:

1. поместить в очередь произвольную команду (заданную командной строкой) и отслеживать процент ее выполнения (который она будет выдавать); так можно добавлять кучу дополнительных возможностей, скажем управление закачками на торрент-качалке на удаленном компьютере (роутере, vps-ке, ...)

2. помещать в очередь команды как результаты работы других команд в очереди; пример: команда «рекурсивно скачать всё что находится в директории http://example.com/dir1/» должна сначала скачать http://example.com/dir1/index.html (ну почти так), распарсить его, затем добавить в очередь url1=http://example.com/dir1/file001.html, url2=http://example.com/dir1/file002.html, ...; конечно так работает любая рекурсивная качалка, но вот какие из этих качалок не только держат очередь из url1, url2, ... снаружи себя, но и позволяют управлять этой очередью?

при этом пользователь должен иметь возможность увидеть, какая задача заказала http://example.com/dir1/file001.html (и что это именно задача , а не он лично), выставить лимит по скорости, заблокировать качание каких-то файлов по регулярному выражению и т.п.

gui-менеджеры для качалок наверняка есть, но вопрос именно в возможности их расширения на произвольные команды; как вариант: командно-строчная качалка, которая может быть расширена разными протоколами (какой-нибудь localcommand вместо http) + гуй к ней + протокол сообщения «скачано 36%»

еще обязательное требование — умение держать миллионы файлов в очереди; предположу, что всякие гуевые приблуды к браузеру (типа DownThemAll) всю очередь кладут прямо в окошко гуя, и миллион файлов на закачку выжрет нескольго гигабайт оперативки и полностью подвесит окошко для отрисовки очереди (а что такое миллион файлов по 30 килобайт? это всего лишь 40 Гбайт диска, что вполне доступно обычному юзеру)

есть еще один костыльный вариант: добавить новый протокол обычному браузеру (типа rechttp как recursive http), и использовать его с какой-нибудь обычной качалкой; но мне это не нравится

P.S. похоже, надо из вопроса выкинуть слово gui

 , ,

www_linux_org_ru
()

Нужно ли юр. лицу для чтения GPG-письма лицензироваться?

Предположим, что юр. лицо в РФ:

1. Заключает договор с клиентом, в котором выполнение какой-то услуги клиенту (чисто для примера — предоставление клиенту услуги хостинга и списание за это денег с лицевого счета клиента) происходит только после получения юр. лицом e-mail с какой-либо имитозащитой (допустим, с подписью GPG, где открытый ключ клиента указывается в договоре)

2. Реально предоставляет услуги из п.1

Необходимо ли юр. лицу в таком случае проходить лицензирование согласно http://www.consultant.ru/document/cons_doc_LAW_128739/ ?

(Я полагаю, что не надо, но вдруг?)

Я в курсе, что если клиент — сам юрик, то все делается по-другому и проще. Т.е. вопрос интересен для того случая, когда клиент — физик.

По ссылке для Ъ:

Постановление Правительства РФ от 16.04.2012 N 313 (ред. от 18.05.2017) «Об утверждении Положения о лицензировании деятельности по разработке, производству, распространению шифровальных (криптографических) средств, информационных систем и телекоммуникационных систем, защищенных с использованием шифровальных (криптографических) средств, выполнению работ, оказанию услуг в области шифрования информации, техническому обслуживанию шифровальных (криптографических) средств, информационных систем и телекоммуникационных систем, защищенных с использованием шифровальных (криптографических) средств (за исключением случая, если техническое обслуживание шифровальных (криптографических) средств, информационных систем и телекоммуникационных систем, защищенных с использованием шифровальных (криптографических) средств, осуществляется для обеспечения собственных нужд юридического лица или индивидуального предпринимателя)»

 ,

www_linux_org_ru
()

восстановление tar-архива, затертого tar-ом

последовательность моих действий:

# tar --remove-files -cf foo.tar foo/
# ls -l foo.tar
-rw-r--r-- 1 root root  2333444555 Aug 16 02:01 foo.tar

затем прошла неделя, в течение которой порядка 100000 файлов было создано (т.е. файлы директории foo видимо уже не восстановить?) и по ошибке я повторил команду — но при этом директория foo уже не существовала:

# tar --remove-files -cf foo.tar foo/
tar: foo: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
# ls -l foo.tar
-rw-r--r-- 1 root root       10240 Aug 20 02:44 foo.tar

сначала лирика: какого черта этот говноtar похерил архив в 2 гига, хотя четко и явно видел, что архивировать нечего?! и это, епрст, архиватор?!

теперь вопросы:

1. какие идеи по восстановлению 2ГБ архива?

2. че tar сделал с 2-гиговым файлом — truncate или delete?

доп. инфа:

  • tar (GNU tar) 1.23
  • все произошло на /dev/sda12 on /mnt/sda12 type ext3 (rw)
  • /dev/sda12 154819652 117381008 29574168 80% /mnt/sda12
  • после инцидента партиция не отмонтировалась, и ничего на ней не происходит (вроде бы)
  • по сигнатуре tar-а можно поискать, но файл реально больше 2ГБ, и я не знаю, как собирать столько кусков
  • содержимое тар-а я представляю, но рядом штук 20 аналогичных таров по 2ГБ, так что уникальности нет
  • файлов в таре порядка 100000, и мелкие в основном (в т.ч. нулевой длинны)
  • потерю 2ГБ пережить можно, но не хочется

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

 , ,

www_linux_org_ru
()

можно ли *временно* закрыть тему с царем для анонимусов?

тема Царю про 10к в надежде перевести дискуссию в конструктив

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

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

з.ы. cast Pinkbyte но можно и любым модератором

 

www_linux_org_ru
()

инструменты для облагораживания репы в меркуриале

есть приватная репа в меркуриале (в том смысле что никто снаружи не клонировал, а если клонировал — то пофиг на это), внутри в основном скрипты и данные для них

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

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

итак, задачи:

1. затирание паролей (я понимаю это как задачи 2,3,4)

2. вообще замены по регекспу в файле и всех его потомках

3. правка описания коммита

4. удаление коммита (где фактически был затерт пароль — в будущем этот коммит не нужен)

5. добавление коммита, где файл перенесен в другую директорию, и изменение всех последующих коммитов под это

6. разбиение 1 коммита на 2 коммита произвольным образом (это видимо сводится к задачам 7,8,9)

7. разбиение коммита на несколько коммитов, каждый из которых затрагивает только 1 файл

8. разбиение коммита на несколько коммитов, каждый из которых затрагивает только 1 строчку (ну или около того)

9. слияние нескольких коммитов в 1 коммит

тут можно было бы придумать задачи

10. раскидывание репы в набор директорий с номерами коммитов, описаниями и графом зависимостей

11. обратная сборка репы из директорий

чтобы все задачи 1...9 делать над файловой системой, но это видимо неверный подход?

теперь попробую провести систематичность:

А. есть операции, которые не меняют графа коммитов, а меняют только содержимое файлов, директорий, или описания коммита

В. есть операции, которые меняют граф коммитов, и не меняют содержимое файлов/директорий/описаний там, где граф коммитов неизменен

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

для В желательны графические (мышекликательные) тулзы, хотя можно и командно-строчные

дополнительный бонус — возможность этими тулзами работать и с гит-ом

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

ну и сам вопрос: правильный список задач и тулзы для работы со всем этим; ссылки на конкретные главы книг/документации/вопросы so приветствуются

UPDATE: если какая-то тулза делает не все задачи, а только часть, то ее вполне можно предложить

 , ,

www_linux_org_ru
()

какое-то дичайшее поведение perl-а при передаче за-tie-еного хэша из функции

принимаются в том числе и ответы «не использовать перл для программы длиннее 20 строчек», но вообще-то хочется узнать:

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

2. как это пофиксить побыстрому (куда-то передать ссылку вместо хэша и т.п.)... не применять же препроцессор, елки-палки?

итак, создадим bdb на 600МБ (это слегка тормозит, но это нормально)

#!/usr/bin/perl -W

use DB_File;

my %result;
tie %result, 'DB_File', 'test.bdb', O_RDWR|O_CREAT, 0666, $DB_BTREE ;

for(my $i=1; $i<12345678; $i++ )
{
  warn( $i ) if $i%100000 eq 0;
  $result{$i} = 12345678 - $i;
}

далее читаем 1 запись из этого файла:

#!/usr/bin/perl -W

use DB_File;
use strict;

sub hash_from_file($)
{
  my ($file) = @_;
  my %result;
  tie %result, 'DB_File', $file, O_RDWR|O_CREAT, 0666, $DB_BTREE ;
  return %result;
}

my %result;

if( exists($ARGV[0]) )
{
  print "hash_from_file\n";
  %result = hash_from_file('test.bdb');
}
else
{                                                            
  # делаем то же, что hash_from_file, только без вызова этой функции
  tie %result, 'DB_File', 'test.bdb', O_RDWR|O_CREAT, 0666, $DB_BTREE ; 
}

print "starting\n";
print $result{'12344321'}."\n";

тут 2 варианта вызова скрипта:

1. если вызвать без аргументов, то читает мгновенно

2. но если вызвать с аргументом, то жрет много памяти (у меня на 32бит дошло до 2ГБ и далее стало свопиться) и цпу 100% одного ядра (причем в меньшем по размеру примере через примерно минуту такого поведения оно таки рожает правильный ответ)

почему, елки-палки?

 may-be-bug, , tie

www_linux_org_ru
()

существуют ли key-value databases, которые работают в том числе по http протоколу и умеют следить (watch) за значение?

ну то есть вот так

http://127.0.0.1/get_value?key=foo123
http://127.0.0.1/get_values
http://127.0.0.1/set_value?key=bar456&value=hello

и крайне желательно  — чтобы они умели следить за значением и выдавать его в виде стрима (т.е. не прерывая http соединение):

http://127.0.0.1/watch_value?key=foo123

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

p.s. зачем? вот: ищется минималистичный key-value-ориентированный скрипт для мгновенного построения веб-интерфейса, сохраняющего результат в виде текста

 , ,

www_linux_org_ru
()

ищется минималистичный key-value-ориентированный скрипт для мгновенного построения веб-интерфейса, сохраняющего результат в виде текста

возможно, что есть что-то готовое, но слегка не такое, или возможен лучший дизайн, или откуда-то этот код можно выдрать — так что вперед

цель: мгновенно делать веб-интерфейсы, причем:

1. схемы данных нет и на следующий день (для тех же данных) она будет совсем другая, поэтому нужно результат получать в виде key-value

2. не хочется ничего устанавливать в систему

как я это вижу: запускается скрипт (который я так же буду называть сервером)

/path/to/script/key-value-server 127.0.0.1:8080 /home/username/my_file.txt

скрипт читает все записи файла /home/username/my_file.txt, парсит их как значения «key»:«value», выбирает *последнее* значения для каждого ключа как текущее значение, и затем вешается на порт 8080 и выдает http-ответы (какие — см. ниже)

ручками или каким-то третьим скриптом я генерирую статический html-файл например такой:

<html><head><script src="http://127.0.0.1:8080/main.js"></script></head>              
<body onLoad="main_on_load()"><form>                                                                          
<input type=checkbox name=foo123>                                                     
<input type=text name=bar456>
</form></body></html> 

и открываю его в браузере

что делает main.js:

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

http://127.0.0.1:8080/get_value?name=foo123
http://127.0.0.1:8080/get_value?name=bar456

2. если значения получены, заполняет ими элементы формы; если нет, то запоминает значение элементов формы по умолчанию

3. каждую секунду оббегает все элементы всех форм на странице, и если чье-то значение поменялось — например, был напечатан тексте hello в текстовом поле — выдает запрос http://127.0.0.1:8080/set_value?name=bar456&value=hello — хотя, возможно, post-запрос все же лучше

сервер, получив запрос http://127.0.0.1:8080/set_value?name=bar456&value=hello, дописывает скажем строчку

"bar456":"hello"

в файл /home/username/my_file.txt, и на время сессии запоминает, что значением ключа «bar456» являет «hello»

если через секунду в поле «bar456» появится «hello world», то все повторяется уже с ним, и сервер отдает уже не «hello», а «hello world» при обращении http://127.0.0.1:8080/get_value?name=bar456  — так что в принципе, дешево и сердито, с этими данными могут работать и несколько клиентов (в т.ч. и по сети, если не 127.0.0.1)

специально уточню, что:

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

2. почему каждую секунду, а не onChange? менее затратно, по-моему — хотя если можно сделать чтобы скрипт на onChange не вис при вставке 100 кб текста в поле — можно и onChange

3. никаких проверок целостности данных и отсутствия гонок не предполагается

4. в системе не должно требоваться наличие веб-сервера

5. как дополнение, возможна запись в /home/username/my_file.txt с тайм-штампом, скажем

{ "time_stamp":"2016.07.05 12:01:01", "bar456":"hello" }

6. как дополнение, возможно не затирание прошлого value, а конкатенация с ним через разделитель, типа конца строки или <p> (но это надо как-то записать в форме)

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

этого в принципе хватит, чтобы мгновенно сделать веб-интерфейс; а результаты из файла /home/username/my_file.txt можно доставать каким-то своим скриптом по мере надобности

 ,

www_linux_org_ru
()

а не изобретаю ли я велосипед, или об одной полезной утилитке

TL;DR: вот почти накарябал прямо в посте простую утилитку сначала на перле, а потом, если не лень будет, и накарябую на с++, но сдается мне, что она уже есть и как-то называется (прошлый раз тут на лор-е мне даже код запостили, делающий примерно то же, что gnu xargs)

_______________________________________________________

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

утилитка должна читать STDIN и печатать в STDOUT те строки из STDIN, которые не встречаются в текстовых файлах (т.к. эти строки, являющиеся url-ками, уже успешно вытянуты из интернета); таким образов в STDOUT не будут попадать url-ки, которые из интернета уже не надо вытягивать

идея «вместо этого воркеры должны просто проверять наличие файла со страницей из инета» не подходит (долго объяснять почему; между воркерами могут быть гонки на предмет создания файла — но это не основная причина)

так как файлы, заданные в командной строке, растут (но не модифицируются — только append), то утилитка должна периодически дочитывать их, начиная с позиции, в которой она была прошлый раз

можно, но не обязательно, дочитывать эти файлы после каждой строки из STDIN а можно скажем каждую секунду — небольшое дублирование работы воркеров не страшно (а как же гонки? ... написать что ли длинное объяснение? ... короче воркеры могут быть разные — скажем одни воркеры резольвят днс, а вторые фетчат страницы, и вот гонки между резольверам и фетчерами не страшны, но гонки *внутри* фетчеров страшны, т.к. потенциально в один файл могут писать 2 фетчера, и сломают его);

так что вопросы:

1. может такое уже есть? как оно называется?

2. по перлу приходит в голову такая идея и возникает вопрос:

#!/usr/bin/perl -W

use strict;

open FA, "<a.txt" or die;
open FB, "<b.txt" or die;

my $a;
my $b;
my %line_is_already_seen = ();

while( defined($a=<FA>) )
{
  $line_is_already_seen{$a}=1;
  print STDERR "$a is already seen\n";
}

while( defined($b=<FB>) )
{
  $line_is_already_seen{$b}=1;
  print STDERR "$b is already seen\n";
}

while(<STDIN>)
{
  if( defined($a=<FA>) )
  {
    $line_is_already_seen{$a}=1;
    print STDERR "$a is already seen\n";
  }
  if( defined($b=<FB>) )
  {
    $line_is_already_seen{$b}=1;
    print STDERR "$b is already seen\n";
  }
  if( exists($line_is_already_seen{$_}) )
  {
    print STDERR "skipping:$_ because it is already seen\n";
  }
  else
  {
    print STDERR "processing:$_\n";
    $line_is_already_seen{$_}=1;
    print $_;
  }
}

close FB;
close FA;

вопрос: файлы FA и FB пишутся блоками (sync после каждой строки *не* производится), и поэтому последняя строка в них может оказаться неполностью записанной; я правильно понимаю, что покуда ньюлайн в FA не будет записан, $a будет undef, и значит этот код правильный? (или надо заморачиваться со сборкой $a из кусочков? вроде же без этого обходимся)

з.ы. полноценная утилитка должна сначала держать хэш в оперативке, затем скидывать хэш на диск допустим в bdb, а затем колбасить фильтр блума

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

 , ,

www_linux_org_ru
()

boxchip a31 == allwinner a31 ?

в описаниях планшетов это один и тот же процессор или совсем разные?

если немного разные, то насколько велика разница? (цель — вкатить туда свое ядро или пускать $distro в чруте)

// первый вариант вопроса, без вопросительного знака, получился из-за промаха по клавише на телефоне

www_linux_org_ru
()

покупка планшета 2560х1600 с точки зрения установки линукса

основной вопрос — насколько легко поставить линукс (или хотя бы получить рута); если у кого есть замечания по железу — welcome

рассматриваю следующие планшеты (карта памяти обязательна):

http://market.yandex.ru/guru.xml?CMD=-RR=0,0,0,0-PF=2141052447~EQ~sel~x888921...

Samsung Galaxy Tab Pro 10.1 SM-T520 16Gb — говно, т.к. pentile ( пруфлинк: http://4pda.ru/2014/01/11/134788/ )

насчет gigaset-а — пишут, что матрица ips, так что видимо пикселы там не сворованы

а еще м.б. интересен ASUS Transformer Pad Infinity TF701T 32Gb (но он же вроде тот же гигасет, только с 32ГБ?)

по «samsung galaxy tab pro 8.4 root» гуглится на раз, а вот по гигасету — че-то нет

www_linux_org_ru
()

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

например, забукмаркал я http://example.com/john_doe/blog/important-difference-between-foo-and-bar.php и имею возможность выбрать несколько тэгов верхнего уровня, например, тэги «read_it», «download_it», «john_doe», «blog», «important», «difference», «foo», «bar»

при этом каждому тэгу еще можно указать и суб-тэги (или даже меню), которые сами по себе смысла не имеют, например к «read_it» возможен выбор между «today», «at_weekend», «later», а к «download_it» возможна куча дополнительных субтэгов — можно глянуть wget --help, если интересно

интересуют варианты как для хрома, так и для мозиллы

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

смысл субтэгов (или подменю) в том, чтобы их можно было легко задавать каким-то внешним образом (например специальным образом сформированными букмарками, а не ковыряться в xul!), и обработчики субтэгов/подменю навешивать тоже внешним образом, т.е. внешней утилитой парсить файл букмарков или бд плагина, и делать с этой инфой все что вздумается

в данном случае внешняя утилита, распарсив файл букмарков и увидев тэг «download_it» вместе с субтэгами, может запустить

wget --опции-полученные-из-субтэгов http://example.com/john_doe/blog/important-difference-between-foo-and-bar.php

 ,

www_linux_org_ru
()

https://visa.qiwi.com продолжает радовать отборным говнокодом на своем платежном сайте

хотя свой прошлый говнокод говнокод: https://visa.qiwi.com/ они пофиксили (кстати, месяц или два назад), но чтобы юзерам жизнь медом не казалась, решили добавить новый

итак, заходим на visa.qiwi.com и смотрим, че нам показывает adblock... а он показывает, в числе прочего такие вот скрипты:

https://www.google.com/jsapi

https://stats.g.doubleclick.net/dc.js

особенно последний — это 39528 байт пожатого кода; беглый взгляд выделяет подстроку:

... c=new ActiveXObject(d+".6"),e="WIN 6,0,21,0",c.AllowScriptAccess="always" ... 

особенную пикантность этому коду придает то, что, как я уже писал, отправка формы авторизации киви делается через ява-скрипт

т.е. любой кодер из doubleclick.net совершенно не напрягаясь может сливать логины-пароли юзеров платежной системы visa.qiwi.com либо напрямую, либо, если ему это кажется недостаточно утонченным, делать это замаскированно, наколбасив кода в dc.js со «случайной» уязвимостью, и юзая уже ее

то же, собственно, относится к гуглю

www_linux_org_ru
()

есть ли DOM при печати html *на бумагу*, и можно ли его подправить javascript-ом?

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

з.ы. вряд ли я это реально буду делать, просто любопытно

 , есть ли жизнь на марсе,

www_linux_org_ru
()

подмножество css для печати html на бумаге

интересует

1. html+css заготовка (sample), из которой можно лепить формы для печати html на бумаге

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

3. ну и само подмножество css для печати html на бумаге

хотелось бы лепить удовлетворительного качества документы, печающиеся в стиле бумаги (например именно шрифтом 12pt, а не так, как браузеру взбредет в голову перевести пикселы, с разумной pagination, и т.д.)

чтобы не быть абстрактным — пусть, например, речь идет о счете-фактуре, который вовсе не обязательно помещается на 1 страницу А4

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

вот примеры вопросов:

А. в css есть селекторы для создания шапки и подвала на каждой *бумажной* странице?

В. можно ли в шапку включить номер страницы?

С. можно ли таблицу рвать так, чтобы ячейки не размазывались по страницам?

ну и тому подобное — предполагается, что отвечающий сам эти вопросы напишет и ответит на них

 , ,

www_linux_org_ru
()

стоит ли хавать не глядя

я, конечно, ответил leave достаточно жестко, и вдобавок не объяснил почему так

а проблема в том, что хомячки, исповедующие подход «будем хавать не глядя» вредят не только себе, но и обществу в целом

пример:

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

именно так — «что-то связанное с молоком» может быть просто молочной сывороткой, оставшейся от приготовления творога, гы-гы-гы — это рецептура т.н. «фругурта»

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

потому, что ПИПЛ ХАВАЕТ НЕ ГЛЯДЯ на мелкий текст, где написан состав, возможно, именно под лозунгом «читать мелкий текст? с таким подходом лучше сразу удавиться»

а производитель и продавец выдают ИМЕННО то, что пипл хавает — и это *совершенно* правильно, кстати

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

а у производителей чистого йогурта и продавцов чистого йогурта — проблемы с продажей

***************** а теперь возвращаемся к rdrand

нормальный юниксовый подход в данном случае будет «если у процессора есть инструкция rdrand, то вот вам major и minor коды, создавайте /dev/rdrand, и юзайте в меру своей паранойи»

мера моей паранойи подсказывает, что можно написать демона rdrandd, который при низкой загрузке машины будет писать выхлоп /dev/rdrand в многогигабайтный файл, который уже через некоторое время будет использоваться для увеличения энтропии, причем вовсе не обязательно на той машине, на которой он создавался

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

*** дополнение по результату обсуждения: судя по

http://lxr.free-electrons.com/source/include/linux/random.h

http://lxr.free-electrons.com/source/arch/x86/include/asm/archrandom.h

похоже все же *можно* rdrand отключить через CONFIG_ARCH_RANDOM, но в последнем файле, кстати, есть одна неясность, навевающая очередные сомнения:

 31 #define RDRAND_RETRY_LOOPS      10
 32 
 33 #define RDRAND_INT      ".byte 0x0f,0xc7,0xf0"
 34 #ifdef CONFIG_X86_64
 35 # define RDRAND_LONG    ".byte 0x48,0x0f,0xc7,0xf0"
 36 #else
 37 # define RDRAND_LONG    RDRAND_INT
 38 #endif
 39 
 40 #ifdef CONFIG_ARCH_RANDOM

вопрос: какого хрена константы и строки оказались вне «#ifdef CONFIG_ARCH_RANDOM»? чтобы было можно взять, и втихую вколбасить куда-нить rdrand, даже если CONFIG_ARCH_RANDOM не определена, так?

 rdrand, йогурт,

www_linux_org_ru
()

*МИНИМАЛЬНЫЙ* набор пакетов для запуска qemu-kvm на десктопе

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

дистрибутив хоста — дебиан (хотя, может, это мало дистрибутивозависимо?)

смотреть изображение предполагается «напрямую» (хотя если вдруг от spice/vnc есть профит, то можно и через них)

1. я так понимаю, что во фреймбуфере qemu-kvm не запустится? в старом дебиане вроде была опция (фреймбуфер и libsdl), но у меня виснет *система* при таком запуске

2. в стабильном дебиане вроде этой опции уже нет — значит нужны иксы; вопрос — как их поставить в минимальном объеме, т.е. видимо без всяких там wm, de, dm — но переключение виртуальных десктопов все же нужно, я так полагаю это можно сделать коротким скриптом

вроде как xinit нужно ставить, так?

p.s. может быть этот вопрос надо перенести в тему десктоп?

 , ,

www_linux_org_ru
()

есть содержимое /var/cache/apt и /var/lib/apt; как из этого создать репозитарий debian (например, для debootstrap-а)

почему? потому что маленький скрипт вокруг debootstrap, по-моему, более удобен, чем стандартный инсталлятор дебиана; однако остается проблема — debootstrap лезет в сеть

ее можно решить, если указать debootstrap-у локальный репозитарий, но тогда нужно создать ему структуру (которая отличается от /var/cache/apt/archives) и создать списки (индексы) пакетов — вот скрипт/прогу для этого я ищу

дополнительно: желательно не возиться с gpg-подписыванием индексов (или что он там подписывает), т.е. списки пакетов и gpg-подписи брать у apt-а (те, что он скачал из сети) — конечно, тогда многих пакетов в полученной репе не будет (хотя в индексах они есть), но это не проблема

 , , ,

www_linux_org_ru
()

линукс *без* chroot-а и без андроида на Asus Memo Pad FHD 10 (то есть на Atom Z2560, то есть на PowerVR SGX 544)

$subj

вопрос в том, можно ли будет туда поставить *нормальный* линукс (дебиан), а не всякие извращения типа «после запуска андроида запускаем дебиан в чруте», или извращения типа «запускаем андроидный юзерспейс в чруте, а /sbin/init из дебиана, но под ядром андроида»

«а почему вы спрашиваете?» — если бы был в продаже х86 ноут с разрешением 1200х1920, экраном 10" и ценой до 15 тыр, то я бы не и не спрашивал (экран можно 15", но тогда и разрешение 1800х3000)

www_linux_org_ru
()

чтобы x86 система загрузилась с usb-флешки, надо...

вот, например, если я загружусь с инсталляционного CD (дебиана, но не суть) в режиме эксперта, оттуда примонтирую usb-флешку как /dev/sdb скажем, затем на нее поставлю линукс (и как часть этого процесса на нее же запишу grub в качестве загрузчика), то смогут ли современные машинки с этой usb-флешки грузиться?

подозреваю, что нет

а что, собственно, надо?

(понятно, это может зависеть от биоса, насколько стар компьютер, и т.п.)

 , ,

www_linux_org_ru
()

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