Викилоги

Перейти к: навигация, поиск
Поиск по заметкам викилога
 

2011-09-09 WD приучились делать USB-only харды

Western Digital, сцуки такие, приучились делать USB-only внешние жёсткие диски. То бишь, жёсткие диски, в которых микросхема-мост USB-to-SATA впаяна на плату с контроллером — причём USB 2.0, как оно там с USB 3.0 — не знаю. Вообще-то бредовый шаг — встраивать USB 2.0, он же, блин, медленный! Названия таких дисков оканчиваются на «VV» (например, WD6400KMVV, WD5000BMVV), а на наклейке можно видеть «Not for resale». По USB название не посмотришь — они партизанят и его скрывают под названием модели внешнего диска, например, «WD Elements SE».

Понятно, что по сути они всё равно SATA, но если раньше можно было купить WD My Passport, разобрать и получить нормальный 2.5" жёсткий диск плюс переходник на USB, то сейчас можно максимум выпаять нахрен микросхему-мост и получить SATA-диск… и всё. Обидно.

Микросхема для USB 2.0 — обычно Initio INIC-16xx. Вывести контакты на SATA-разъём просто, благо они там на виду — четыре дорожки на плате, ведущие от крупненькой микросхемы, подключаются каждая через конденсатор, конденсаторы подписаны С13, С18, С31, С33. Пинам разъёма SATA они соответствуют так:

 █▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
 █  7   6   5   4   3   2   1  
   GND RX+ RX- GND TX- TX+ GND 
       C33 C31     C18 C13     
       E75 E74     E72 E71

То есть если будете подпаивать — нужно отпаять второй вывод конденсатора от ноги USB-to-SATA и припаять к разъёму. Другое дело, что и разъём-то там девать особенно некуда, потому что коварные WD-шники рядом с MicroUSB-разъёмом сделали ещё один, адовый диагностический, которого нет на обычных SATA хардах. Так что если, допустим, пытаться его засунуть в ноут — может не хватить места — потребуется место для подпаянной лапши…

Вот тут предлагается просто выпаять эти конденсаторы и подпаять лапшу к контактам E71, E72, E74, E75 на нижней стороне платы. Но на обычных хардах разъём всё-таки подключён через конденсаторы, типа фильтры, наверное.

Кстати, наконец дошло, зачем на разъёме SATA-питания столько контактов — они задуманы такими мегауниверсальными, что на них может быть аж 3 напряжения — 12V, 5V и 3.3V. Ну ладно, спросите вы, а зачем по 3 контакта на каждое напряжение? Так там тоже был гениальный замысел — их разрабатывали так, чтобы ограничить всплески нагрузки при горячей замене дисков. Контакты на разъёме разной длины и сделаны так, что при подключении разъёма питания сначала замыкается земля, потом «pre-charge pin» — хард при этом ещё не включается, но уже начинают заряжаться конденсаторы и т. п. — а потом уже основной контакт.

2011-09-09 Apache 2, openssl и клиентские сертификаты

Интернет полон HOWTO по настройке клиентских SSL-сертификатов в Апаче, которые все сводятся к тому, что нужно сгенерировать сертификаты для сервера и клиентов, подписать клиентские каким-нибудь CA-сертификатом, слить их в PKCS-12 и поставить в браузер, а на сервере прописать SSLVerifyClient require и SSLCACertificateFile </path/to/ca.pem>.

Однако нигде не упоминается важный момент, о котором легко забыть, если использовать «искаробочный» openssl: клиентские сертификаты должны быть именно что клиентскими — поле nsCertType у них должно иметь значение client, email (возможно ещё , objsign), но никак не server, который генерится по умолчанию (что приводит к ошибкам OpenSSL: Exit: error in SSLv3 read client certificate)! Прописывается это в /etc/ssl/openssl.conf (или там, где лежит ваш openssl.conf).

Аналогично CA-сертификат должен быть CA, то есть, иметь basicConstraints=CA:TRUE. Но об этом забыть сложно, потому что команды генерации CA-сертификата всё равно никто никогда не помнит, а все используют /usr/lib/ssl/misc/CA.pl или CA.sh, который выставляет basicConstraints правильно.

Ещё полезное замечание: как упаковать серт+ключ в PKCS-12, из man 1 pkcs12 понятно — openssl pkcs12 -export -keyin key.pem -in cert.pem -out cert.p12. А вот как извлечь ключ — понятно не совсем, ведь если просто сказать openssl pkcs12 cert.p12 -nocerts -out key.pem, и не задавать пароль, в key.pem ключа ни хрена не будет. Чтобы сразу вытащить нешифрованный ключ, нужно сказать openssl pkcs12 cert.p12 -nocerts -out key.pem -nodes.

И последнее, хотя это и упоминается где-то в HOWTO-шках — не забывайте про openssl s_client, это действительно полезная штука! Например, если он при попытке соединения пишет «No client certificate CA names sent», значит, браузеру не отправляется список имён подходящих CA, которыми должен быть подписан клиентский сертификат, и значит, браузер не пришлёт ничего в ответ. Кстати, для проверки SNI (Server Name Indication) нужно указать опции -tls1 -servername server.address.com, просто -servername без -tls1 почему-то не канает.

2011-09-09 Opera

Сломанные настройки шрифтов ТАК И НЕ ПОЧИНИЛИ. Как клала опера на них, так и кладёт — прописываешь в шрифтах везде Segoe UI, перезапускаешь оперу, а у тебя Verdana. Если передёрнуть снова — просирается, но передёргивать нужно после каждого рестарта. А уже вышла 11.11 почти 12. Релизеры, блин.

Правда, я выяснил, как заставить Оперу 11 и выше использовать нужный рендеринг шрифтов:

cat > ~/.Xresources <<EOF
Xft.hinting: 0
Xft.hintstyle: hintnone
Xft.autohint: 0
EOF
xrdb -merge ~/.Xresources

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

Ещё бесит дебильная полу-серая адресная строка. Что за мудаки работают в опере, вообще понять не могу. Им твердят-твердят — сделайте млять опцию. Они — нет, полу-серая строка это супер-фича, видеть параметры запроса вам не нужно. Вот отличный тред: тынц.

Народ аж патчи к бинарнику оперы уже придумывает: [1], [2], [3]. Причём придумали наши, а ссылаются на это в итоге америкосы, читают через гугл транслейт.

То, что выше этой строки, было написано в ЖЖ ещё 6 июня, а теперь обновление от сегодняшнего дня (2011-09-09):

Пепелсбей.нет — русское чувачелло, которое работает в опере, на матерные замечания об опере отозвался неадекватно, мол я такой нежный и мат не выношу. Ох про*бёт опера остатки пользователей, ох про*бёт…

Настройки шрифтов в 12-next поломаны до сих пор с ноября 2010 года (!!!). Реально в альфа-сборках даже раньше, в ноябре 2010 вышла 11 бета. Почти год багу.

Кстати, если кто-то не помнит, был баг ещё позорнее — рандомные зависания загрузки страницы на сайтах с большим количеством JS через прокси — баг жил где-то полгода в 10.5, разработчики на него не реагировали. Это был тот момент, когда я себе прозрачную проксю локально поднял.

Если кто-то не помнит, ещё раньше, где-то в 9-10 версии, оно намертво зависало, если при переоткрытии всех вкладок на старте не дай бог раньше времени нажмёшь Enter на всплывающем окошке ввода пароля. Тоже позор был.

В то же время и другие браузеры имеют позорные моменты: в Firefox слабо настраиваются комбинации клавиш — только по 1 комбинации на действие, и настраиваются не все — например, нельзя настроить переходы между вкладками. В Chrome и того хуже — комбинации клавиш не настраиваются вообще! И вкладки он любит про*бывать между рестартами, если не дай бог его неаккуратно рестартуешь. И по клику «назад» он не берёт страницу из кэша, а перезагружает — кстати, этим и мобильный Андроидовский браузер страдает, и там раздражает сильнее, потому что жрёт платный трафик. А Firefox по нажатию Tab-Tab-Tab прыгает по умолчанию не по полям ввода, а ещё и по ссылкам. Нахера? Правда, если сайт пропишет у себя tabindex’ы полям ввода, то нормально.

Управление e-mail подписками на блоги и комментарии