VCSH — спасение настроек в $HOME

Как ни странно, я только недавно познакомился с VCHS — надстройкой над Git, призванной облегчить резервирование конфигурационных файлов, расположенных в домашней директории (Version control system for $HOME — один из вариантов расшифровки аббревиатуры). Очень жаль, что этого не произошло раньше, и бэкап конфигов делался нерегулярно, кое-как, с изобретением различных костылей. Но, всё это в прошлом! Итак, что же представляет собой VCSH и как ей пользоваться?
(далее…)

Небольшое ускорение Chromium

Для Chromium (ну и Chrome до кучи, и иные производные), оказывается, тоже работает метод небольшого ускорения путем очистки баз sqlite от данных, помеченных для удаления (но не удаленных), что и для Firefox (Firefox еще и настройками можно слегка оптимизировать). Всякие настройки, куки, история переходов и т.п. дребедень, что накапливается в процессе использования браузера.
Метод, в общем, тот же, что и для Firefox (и его производных) — пересобрать БД, используемые браузером, с действительным удалением ненужных данных, путем примения к ним команды sqlite3 файл_БД 'VACUUM'.
Применительно Chromium я сделал это следующим образом:

dimio@ibm $ ls -lh ~/.config/chromium/Default/
...
итого 17M
dimio@ibm $ find "/home/dimio/.config/chromium/Default/" -maxdepth 1 -type f -print -exec sqlite3 {} 'VACUUM' \;
...
dimio@ibm $ ls -lh ~/.config/chromium/Default/
...
итого 13M

Настройки Chrome обычно лежат в ~/.config/google-chrome/Default/.
На моем древнем Pentium M 1,2 ГГц с 1 Гб ОЗУ некоторое ускорения запуска браузера и уменьшение времени отклика стало заметно, а на более-менее современном железе подобная процедура, пожалуй, не будет имееть смысла.

Бесплатный Linux-shell с Tmux на борту

Возникла у меня как-то нужда в получении linux-shell на стороннем сервере с постоянным доступом в сеть (тот же парсер ТИЦ запустить например). При этом шелл должен был удовлетворять двум условиям: быть бесплатным и иметь возможность оставить запущенное приложение работать «в фоне», без поддержания постоянного соединения удаленной машиной. Помимо этого, хотелось несколько большего, чем возможность использовать простые dtach или nohup, а значит — нужно наличие на удаленной машине терминального мультиплексора (Screen или Tmux). Мой выбор пал на bshellz, удовлетворяющий всем условиям, включая наличие Tmux. Вот что они предлагают после прохождения бесплатной регистрации:

— Возможность разместить свой сайт на домене http://имя_пользователя.bshellz.net
— 50 Мб дискового пространства
— Электронный адрес вида: имя_пользователя@bshellz.net
— Возможность использовать одну базу MySQL, наличие phpmyadmin: https://services.bshellz.net/phpmyadmin/

(далее…)

Подключаем несколько Яндекс.Диск в Linux — полет в облака халявы

монтирование нескольких яндекс.диск под linux Тема подключения Яндекс.Диска в Linux в общем-то не нова и не сказать, чтобы она была чем-то сложна. Диск как нормально подключался в период закрытого тестирования, так нормально подключается и сейчас. Вообще приятно, что Яндекс не стал изобретать велосипед и воспользовался поддерживаемым и распространённым протоколом WebDAV для предоставления доступа к Диску.

Я подключил сервис по инвайту и успешно им пользовался, а после открытия свободного доступа вдруг подумал — нельзя ли подключить несколько Дисков? Решил проверить эту возможность, а заодно и подключить Я.Диск как внешнесетевой обменник для всех мобильных устройств (файловый менеджер ES FileExplorer для Android поддерживает в том числе и работу с Диском) — чтобы в дороге скидывать фотки с планшета, записывать журналы и книги на телефон, да мало ли для чего ещё может пригодиться сетевая флешка.

Итак, ниже небольшая инструкция по подключению нескольких Я.Дисков в Linux. Кстати, если кто-то еще не знаком с Диском или не успел его завести — регистрация по приглашению выгодна приглашённому даже больше, чем пригласившему — приглашённый получает 1 Гб места (к уже имеющимся 10 Гб) против бонуса в 0,5 Гб для пригласившего. Самое время попробовать!
(далее…)

Автонумерация строк таблицы в LibreOffice Writer

Недавно ломал голову над проблемой автоматической нумерации строк в таблице LibreOffice Writer. Просто «растянуть» диапазон, как в Calc или Excell, там невозможно (по крайней мере в версии LibreOffice 3.4.5, которой я пользовался). Зато в ячейки таблиц можно вставлять формулы — именно с их помощью в итоге и получилось сделать автоматическую нумерацию строк.

Для начала нужно вручную задать номер первой строки, с которой будет начинаться нумерация (в примере он задан в ячейке A1), а затем вставить в ячейку на следующей строке формулу с номером ячейки в предыдущей строке, увеличенным на единицу (или другой шаг, если нумерация нужна не по порядку). Для вставки формулы в пустую ячейку надо ввести знак «равно» — появится строка для ввода формул. Формула для нумерации строк по порядку может выглядеть так: =<A1>+1.
(далее…)

Изменить имя сетевого интерфейса в Debian/Ubuntu Linux

Задался целью домашнюю wi-fi сеть перевести на современный протокол шифрования — wpa2. Вроде всё предельно просто должно быть даже в линуксе — ставишь wpa-supplicant, прописываешь имя точки, тип шифрования и ключ в /etc/network/interfaces — и всё работает. Но нет — бился часа четыре, пробовал по-разному — не подключается ноут мой к сети, хотя нетбук и смартфоны легко её подхватывают.

Оказалось, что wi-fi карточка в ThinkPad T40 не поддерживает wpa2 (и wpa тоже) на аппаратном уровне. Я думал, что это исключительно программные решения и даже не догадывался покопать в сторону аппаратной поддержки. В итоге пришлось карточку поменять, благо на e-bay их продаётся много.
(далее…)

Низкоуровневое форматирование flash/sd/microsd под Linux

Несколько раз приходилось форматировать флешки (к которым относятся и различные SD и microSD карточки), а поскольку происходит это довольно редко — вынужден был лезть в гугл. Конспективная памятка по форматированию флешек под Linux:

Проверить подключение flash

fdisk -l
Выведет список подключенных дисков и их разделов. Обычно флешка — /dev/sdb, но нужно обязательно проверить, так ли это!

Проверить, примонтирована ли флешка

df -h
Если флешка примонтирована — покажет это и точку монтирования. Перед форматированием — отмонтировать: umount /dev/sdb.

Проверить защиту от записи и геометрию

При желании — можно проверить защиту от записи и геометрию (защита от записи в линуксе не важна):
hdparm /dev/sdb.

Если нужно низкоуровневое форматирование — забить нулями

dd if=/dev/zero of=/dev/sdb.
В выводе покажет объем флешки (должен соответствовать заявленному), скорость и время записи. Также покажет, сколько было записано байт на флешку, что полезно при проверке флешки на физические ошибки (см. ниже).

Проверить на физические ошибки

head -c N /dev/sdb | md5sum
head -c N /dev/zero | md5sum
где N равно числу байт, записанных на флешку при помощи dd. Если контрольные суммы не совпадают — флешка «битая» или были ошибки записи (в реальности сталкивался с форматированием microSD через плохой кард-ридер — даже когда не выскакивали ошибки ввода-вывода при операциях — контрольные суммы не совпадали, с заменой кард-ридера проблема ушла).
Пример:

dimio@ibm $ dd if=/dev/zero of=/dev/sdb
dd: запись в «/dev/sdb»: На устройстве кончилось место
3932161+0 записей считано
3932160+0 записей написано
 скопировано 2013265920 байт (2,0 GB), 1010,99 c, 2,0 MB/c
dimio@ibm $ head -c 2013265920 /dev/zero | md5sum
5d0fd6273bed1c500c6fc22d86a59630  -
dimio@ibm $ head -c 2013265920 /dev/sdb | md5sum
5d0fd6273bed1c500c6fc22d86a59630  -

Ну и для полного счастья при желании:

dimio@ibm $ perl -we '
> print "OK" if q{5d0fd6273bed1c500c6fc22d86a59630}
> eq q{5d0fd6273bed1c500c6fc22d86a59630};'
OK

Разбиваем на разделы при помощи fdisk

fdisk /dev/sdb
Опции: m — справка, d — удалить раздел, p — просмотреть список разделов, n — создать раздел, t — поменять тип раздела, w — сохранить изменения.

Последний шаг — создать файловые системы на разделах флешки

mkfs.ext{2,3,4} /dev/sdbX
где X — порядковый номер раздела, на котором нужно создать файловую систему.
Также полезны: mkfs.msdos, mkfs.vfat (создаёт «стандартную» файловую систему флешек — vfat).

Если что-то осталось непонятным или есть дополнения и замечания — добро пожаловать в комментарии! 🙂

каталог интернет магазинов Москвы

Бесплатный редактор PDF для Windows и Linux — pdftk

Несколько недель назад понадобилось мне кое-что поменять в чертежах, которые были в виде pdf-альбома представлены. Файл pdf не был закрыт от редактирования к слову. Казалось бы — задача примитивная, но не тут-то было. Перепробовал около десятка различных бесплатных и условно-бесплатных pdf-редакторов — всё без толку. Некоторые «редакторами» только называются — на деле не могут вообще ничего. Другие вроде позволяют изменения внести, но лепят всюду свои надписи типа «отредактировано в таком-то pdf редакторе», что мне тоже совсем ни к чему. А чем можно банально разбить альбом на страницы — я вообще не понял.

Помощь, как часто бывает, пришла из мира open source — была найдена бесплатная консольная утилита для редактирования PDF — pdftk (кроссплатформенная, под Linux и Windows точно есть), позволющая редактировать pdf в широких пределах. Для любителей графики — и под Linux, и под Window у pdftk есть графические интерфейсы (GUI). Меня же как раз больше привлекла консольность — можно в пакетном режиме обрабатывать сразу несколько файлов. Ей я вырезаю или вклеиваю нужные листы в альбомы чертежей, а сами изменения делаю в обычно графическом редакторе (чаще в сего — в Gimp).
(далее…)

Стандартные пароли для устройств — большой список

Ссылка на память — список стандартных паролей для большого числа различных устройств: Default Password List. Стандартные пароли для роутеров, МФУ и т.п. устройств. Указаны протоколы доступа для авторизации (telnet, http и т.д.)

RC Link Redirector и ссылки в текстовом виджете

На правах мини-совета для тех, кто тоже использует плагин RC Link Redirector для закрывания от индексации посторонных ссылок. Изначально плагин умеет оборачивать ссылки в записях, на страницах, в цитатх, в комментарих и текстах комментариев и т.д., но не умеет обрабатывать текстовые виджеты, в которые удобно ставить свои кнопки, баннеры и прочие подобные штуки.

Чтобы плагин научился закрывать ссылки в виджетах, надо добавить в него две строки (можно через Плагины->Редактор, если нет специального редактора для PHP).

Первую — внутрь функции rcr_adminpage, например после 187 строки «&nbsp;"Оборачивать" ссылки в <strong>блогролле</strong></label></td></tr>» добавить строку:

   <tr><td><label><input name='rcr_txt_widgets' type='checkbox' value='1' <?php echo ($rcr_opt['rcr_txt_widgets'] ? 'checked' : '') ?> />
    &nbsp;"Оборачивать" ссылки в <strong>виджетах</strong></label></td></tr>

Вторую — внутри rcr_redirector_hook, например после строки 241 «if($rcr_opt['rcr_comment']) add_filter('comment_text', 'rcr_encode');» вставить строку:

if($rcr_opt['rcr_txt_widgets']) add_filter('widget_text', 'rcr_encode');

Теперь осталось в админке плагина поставить галку на опции «Оборачивать» ссылки в виджетах и наслаждаться результатом 🙂
P.S. Кому лень редактировать файл плагина — можно скачать обновлённый и просто заменить старый в папке /wp-content/plugins/rc_redirector