Author Archives: root

davfs2 и загрузка файлов в OpenWrt

В опубликованной на днях статье про резервное копирование в WebDav мы касались того, что davfs2 из репозитория OpenWrt не всегда способен успешно загружать файлы в удаленное хранилище, и зачастую они заканчивают свой путь в каталоге lost+found. При этом чтение файлов из WebDav, получение их атрибутов, а также и удаление – всегда работает корректно.

Как оказалось, эта проблема имеет простое решение. Continue reading

Posted in Сеть и интернет | Tagged , | 2 Comments

Резервное копирование в WebDav на OpenWrt

Рассмотрим возможность создания резервного копирования в облачное хранилище WebDav на примере Яндекс.Диска при помощи виртуальной файловой системы davfs2, утилиты cadaver и небольшого PHP-скрипта. Continue reading

Posted in Сеть и интернет | Tagged , , | 3 Comments

AutoIt3 – _IEFrameGetObjByName() failure after IE update

Недавняя группа системных обновлений Windows привела к неработоспособности утилиты автоматизации AutoIt в контексте работы с браузером IE и сайтами, представляющими собой группу фреймов, объединенных во FRAMESET. Continue reading

Posted in Софт | Tagged , | Leave a comment

PHP, SQLite и регистронезависимость

Несмотря на объявленную поддержку UTF, встраиваемая СУБД SQLite3 по умолчанию не умеет делать регистронезависимую сортировку, сравнение и операции по преобразованию строк над буквами, не входящими в английский алфавит. Для решения этой проблемы разработчики SQLite рекомендуют использовать расширение ICU, с подключением которого станет возможным выбирать различные кодировки и иметь возможность пользоваться регистронезависимыми операциями сравнения любых символов кроме латиницы. Вот только описаний, как это сделать для php-mod-sqlite3, найти толком нельзя, да и объем ICU превышает размер самой библиотеки SQLite! Для embedded-применений – например, в OpenWrt – такое не годится. Continue reading

Posted in Сеть и интернет | Tagged , , | Leave a comment

Редактирование реестра Windows из среды восстановления

В далеком прошлом мы описывали, как можно за считанные минуты переключать жесткие диски из режима “IDE Compatible” в AHCI и обратно, не потеряв работоспособности установленной операционной системы (Windows). Но этот способ требует, чтобы операционная система была работоспособна. А иногда может случиться так, что система уже не запускается и вернуть аппаратную конфигурацию к исходному рабочему состоянию затруднительно или невозможно. Continue reading

Posted in Софт | Tagged , , | 3 Comments

Windows Server 2008 R2 – раскладка клавиатуры в RDP-сеансе

После ввода в эксплуатацию терминального сервера под управлением, прости господи, Windows Server 2008 R2, обнаружилась следующая проблема: периодически у подключающихся по протоколу RDP (удаленный рабочий стол) пользователей перестает переключаться раскладка клавиатуры. В системном трее язык переключается как обычно (к примеру, с RU на EN), но при этом ввод продолжает оставаться в раскладке RU, а рядом со значком EN появляется значок в форме клавиатуры, кликнув на который мышью можно уже вручную в появившемся контекстном меню изменить язык ввода – и вот тогда он действительно заменится на выбранный. Continue reading

Posted in Софт | Tagged , | 9 Comments

WindowsUpdate – ошибка 0x800b0001

Однажды на одном из подконтрольных компьютеров, работающих под управлением Windows 7 Pro, перестал работать поиск обновлений системы, выводя ошибку 0x800b0001 почти сразу после инициализации поиска. По косвенным свидетельствам, поводом тому явилось обновление модуля Windows Update с версии 7.6.7600.256 на 7.6.7600.320, хотя до исходных причин проблемы докопаться пока так и не удалось. Continue reading

Posted in Софт | Tagged , , | 10 Comments

Автоматизация загрузки файлов на WebDav

Ранее на страницах этого сайта рассматривалась возможность монтирования облачных WebDav-хранилищ при помощи fuse-системы davfs2. Одним из ее недостатков был тот факт, что при любых операциях над файлами они неминуемо копировались сначала во временную директорию, а лишь затем перемещались в целевой каталог.

Альтернативой davfs2 для прямого получения или загрузки файлов в облачное хранилище является утилита cadaver. Однако, она предполагает интерактивное взаимодействие с пользователем, и использование ее в автоматизированных скриптах не представляется возможным. Обойти эту проблему можно при помощи утилиты empty, аналога expect для создания и взаимодействия с псевдотерминалами. Continue reading

Posted in Сеть и интернет | Tagged , , , | Leave a comment

empty-expect и сборка под архитектуру PowerPC

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

Для исправления ситуации существуют немногочисленные программы, позволяющие создавать своего рода псевдотерминалы, отслеживающие появление на консоли того или иного текста и позволяющие задать текст, автоматически отправляемый в ответ на данный текст. Типовым примером является утилита expect, требующая для работы интерпретатора tcl, или значительно более легкая и значительно менее известная утилита empty, заметно более подходящая для OpenWrt-роутеров. Continue reading

Posted in Сеть и интернет | Tagged , , | Leave a comment

WordPress и длинные “ярлыки”

При эксплуатации WordPress на одном из сайтов был обнаружен неприятный дефект – некоторые автоматически сгенерированные ярлыки (“slug”) для категорий имели покоцанные последние символы, вследствие чего перейти по ссылкам на такие категории не представлялось возможным. Однако при ручном их указании все сохранялось корректно. Continue reading

Posted in Сеть и интернет | Tagged , | 1 Comment