VirtualBox: Kernel driver not installed (rc=-1908)

С обновлением VirtualBox изменился и путь, по которому находится скрипт, обновляющий необходимый модуль ядра. Диалог с сообщением об ошибке предлагает выполнить команду:

/sbin/rcvboxdrv setup

но он ошибается (по крайней мере, в Ubuntu 15.10). Правильный вариант такой:

sudo /usr/lib/virtualbox/vboxdrv.sh setup

Найти файл можно командой:

locate vboxdrv.sh

Тестирование сетевого оборудования

Слушал вчера подкаст linkmeup, из которого узнал, что помимо Sifos, тестирующего на соответствие стандарту PoE, существует не менее громкий бренд — Ixia. Это продукты для тестирования на соответствие различным сетевым протоколам.

Собираем изображения в GIF

 convert -delay 20 -loop 0 *.jpg out.gif

К сожалению, размер конечного файла оказывается куда больше, чем суммарный размер исходников. Например, 57 картинок jpg размером 3 МБ в результате дали gif на 12 МБ!

Источник: https://scottlinux.com/2011/07/31/create-animated-gif-in-linux-from-command-line/

NodeMCU: не работает adc.read()

Как оказалось, из коробки в NodeMCU ацп настроен на измерение напряжения питания и не может измерять напряжение на ножке TOUT, adc.read(0) возвращает 65535. Для того, чтобы изменить это поведение нужно подправить область конфигурации в флэше. Первыми робкими экспериментами я немного окирпичил тестовую платку и долго пытался вернуть её к жизни 🙂

Конфигурация хранится  в последних 16 килобайтах флэша, так что её точное местоположение зависит от размера флэшки. На моей плате node.flashid() возвращает 1458400, что в шестнадцатеричном виде превращается в 0x1640E0. Из этих цифр трудно сделать далеко идущие выводы, но в итоге оказалось, что флэшка у меня на 4 МБ (32 Мбит). Таким образом область конфигурации начинается с адреса 0x3FC000. Для флэшек 512 КБ (4 Мбит) адрес будет 0x7C000.

Сливаем  8 КБ с помощью esptool.py:

python esptool.py -p COM4 read_flash 0x3FC000 0x2000 init.bin

В любом hex-редакторе находим байт по смещению 107 (десятичное). Скорее всего, он будет равен 0xFF. Заменяем на 0x21 (33, т.е. 3.3 В), сохраняем файл и заливаем обратно:

python esptool.py -p COM4 write_flash 0x3FC000 init.bin

Теперь АЦП измеряет напряжение на входе и радует разнообразными значениями от не нуля до 1024.

Первый обзор на mysku.ru

Сегодня написал свой первый обзор для mysku. Впечатления весьма положительные! Получил много комментариев и вопросов, в основном всё по делу. Приведу самые понравившиеся:

Можно использовать как розетку? Углубившись в измерение зарядника я совсем забыл про основную функцию — розетку. Мимоходом упомянул, что вилки влезают и не выпадают. Этого мало, так что собираюсь подключить чайник, вскипятить пару раз и посмотреть, как розетка это переживёт.

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

Горючий материал? chaloc пишет, что материал может поддерживать горение. Учитывая, что корпус сильно греется при зарядке на 2 А, розетка может стать причиной пожара.

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

Windows 7: Internet time — Unable to continue

Захотел убедиться, что Windows синхронизирует часы с серверами точного времени. Нажимаю кнопочку Change settings… И получаю сообщение об ошибке… Внезапно.

Первая же ссылка в гугле по запросу «windows 7 internet time unable to continue» выдала следующее решение: запустить командную строку от администратора и выполнить команду w32tm /register

Помогло! Окно настройки сервера точного времени снова открывается. Однако, при нажатии кнопки «Update now» получаю сообщение об ошибке: «Unable to start Windows Time service». Ох уж эти виндусы… Ладно, идём дальше. Захожу в управление сервисами, запускаю Windows Time service вручную и вижу портянку

windows time error

Очередной гуглёж выдал идею: выполнить команду sc config w32time type= own. Некоторый результат есть — сервис запускается, но ручная синхронизация всё равно выдаёт ошибку. Причем ошибка зависит от того, используется time.microsoft.com или другой сервер. Класс.

Нагуглил предложение перезагрузить комп. Перезагрузил — всё отвалилось к исходному положению: сервис не запущен, настройки недоступны. Идеально. На данный момент имею следующее. При попытке ручной синхронизации с time.microsof.com получаю ошибку «An error occurred getting the status of the last synchronization. Access is denied». При синхронизации с любым другим сервером: «An error occurred while windows was synchronizing with time.nist.gov». Сказочно.

А дальше… было вот что:

C:\Windows\system32>w32tm /unregister
The following error occurred: Access is denied. (0x80070005)

C:\Windows\system32>w32tm /unregister
W32Time successfully unregistered.

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

C:\Windows\system32>w32tm /resync
Sending resync command to local computer
The following error occurred: Access is denied. (0x80070005)

C:\Windows\system32>w32tm /resync
Sending resync command to local computer
The following error occurred: Access is denied. (0x80070005)

C:\Windows\system32>w32tm /resync
Sending resync command to local computer
The following error occurred: Access is denied. (0x80070005)

Команды выполнялись от Администратора. Где взять больше прав — не представляю.

Отключаем обновление до Windows 10

Control Panel -> System and Security -> Windows Update, View installed updates

Находим обновление Update for Microsoft Windows (KB3035583) и удаляем его. Перезагружаем компьютер — значка обновления больше нет, но он может появиться снова. Чтобы этого избежать, нужно отключить данное обновление, однако я его в списке доступных не нашёл.

Сравнение УЗМ-51М 63А и РН-113

Не так давно узнал про устройство защиты многофункциональное УЗМ-51М и оно меня заинтересовало. Сразу после переезда в новую квартиру я озаботился защитой бытовой техники и приобрел реле напряжения РН-113. Оно меня очень радовало — индикация текущего напряжения и уставок, крутилочки для установки желаемых уровней срабатывания. Все красиво и наглядно.

Все было хорошо, пока техники было мало и мощности устройства хватало. Однако, появление полноценной кухни с варочной панелью и духовкой потребовало установки дополнительного контактора на 63 А, который взял на себя коммутацию входной линии. Я взял простой и недорогой IEK КМ63-20. В использовании контактора есть несколько минусов:

  • занимает место в щитке
  • греется, т. к. постоянно под напряжением
  • стоит не намного дешевле самого реле

Сейчас я бы взял УЗМ-51М. Плюсы, по сравнению с РН-113:

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

Но есть и минусы:

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

 

Небольшая сравнительная табличка:

УЗМ-51М РН-113
Uмин, В 160-210 160-220
Uмакс, В 230-280 230-280
Tповтор, с 10, 360 5-900
Iмакс, А 63 32
Uвход макс, V 440 420
Iпотр, мА ? 15
Tаварийн, мс 20 (300 В) 120 (300 В/Umax+30)

И документация

УЗМ-51М

РН-113

Ускоряем Ubuntu SSH Login

  1. В файлах /etc/pam.d/login и /etc/pam.d/sshd выпиливаем начисто строчки «session optional pam_motd.so»
  2. Сносим нафиг компоненты платного мониторинга, установленные по дефолту:
    aptitude remove landscape-client landscape-common

Источник: http://3.14.by/ru/read/ubuntu-ssh-performance-tweak

Перфоратор!

Наконец-то нашлось время протестировать недавно купленный перфоратор. За секунды протыкает кирпичи, которые дрель со сверлом по бетону только царапает!
Да, он большой и тяжелый, руки отваливаются через минуту. Но скорость! Повесил крюки для великов за несколько минут.
velo

Первый диктант по китайскому

Недавно начал изучать китайский язык в школе Конфуций. Вот результат первого диктанта:
cn

Да, это несколько нечестно — несколько месяцев в Китае и курсы на courcera дают мне значительную фору. Но всё равно приятно 🙂

Google Chrome Update failed (error: 7)

Update failed (error: 7)An error occurred while checking for updates:
Продолжаю ковырять неработающие обновления хрома. Для решения это проблемы гугл предлагает добавить шаблон с групповыми политиками, но у меня не было оснастки для управления политиками. А после того, как я её установил, она не смогла добавить шаблон от гугла. В итоге нашлось более простое решение — в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Update реестра удалить ключ(и) Update{8A*. Теперь хром обновляется. Но причина всего происходящего не ясна до сих пор…

Google Chrome: Обновления отключены администратором

Что делать, если не обновляется Хром?
Запускаем regedit, идем в раздел HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Update
Находим параметр UpdateDefault и устанавливаем его в 1.
Перезапускаем Хром. Всё должно работать.

Gorogoa — необычный квест

По материалам questzone.ru

Необычная пазл-адвенчура от американского разработчика-одиночки. Экран разбит на четыре части, между этими четвертинками можно перемещать «карточки», представляющие собой элементы одного мира. Перемещаясь внутри этого мира и накладывая карточки с различными окнами друг на друга, можно получать причудливые взаимодействия и двигаться таким образом к решению общей задачи. Игра получила премию IndieCade в 2012м году за лучший визуальный дизайн.


gorogoa screenshot
Официальный сайт

Очень необычный геймплей и отличная реализация, рекомендую!

Mediawiki: изменить логотип

В файле /etc/mediawiki/LocalSettings.php находим/добавляем строку:

$wgLogo = "/skins/common/images/logo.png";

где logo.png — имя файла с логотипом. Сам файл логотипа кладём в /var/lib/mediawiki/skins/common/images/. Рекомендуемый размер — 135 x 135 пикселей. Не стоит заменять родной wiki.png, т.к. он будет перезаписан при обновлении.