warning: Creating default object from empty value in /var/www/html/modules/taxonomy/taxonomy.pages.inc on line 33.

Linux

Работа с html entity conceal в файлах FreeMind в vim

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

Как-то раз мне понадобилось расставить у трёх десятков узлов ссылки на внешние ресурсы. Расставлять их в самой FreeMind мне показалось очень неудобно и я решил это сделать в vim. Открыв файл схемы в редакторе, я был неприятно удивлён: русский текст в атрибутах xml был завёрнут в html entity вида

 TEXT="Разум"

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

git status и кириллические имена файлов

Если в git-репозитории есть файлы с кириллическими символами в именах, то git status покажет их нечитаемым образом. Решение:

 git config --global core.quotepath false

Конвертация mpv -> flv

Понадобилось перевести видеофайл из mpv в flv. Использованная в итоге команда:

mencoder -mc 0 -vf harddup -ofps 25 -srate 44100 -oac mp3lame -lameopts vbr=2:q=8:aq=1:br=96 
-ovc lavc -of lavf -lavfopts format=flv -lavcopts vcodec=flv:vbitrate=236:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 
5.mpv -o 5.flv

Подробности: man mencoder.

Рипанье видео, DVD и прочего

Просто памятка: самая удобная лично для меня программа, рипающая видео -- dvd::rip.

Размещение /var в tmpfs

Купил себе EeePC 901. Среди прочего понадобилось вынести самую "писучую" часть /var с SSD с его ограниченным числом перезаписей.

Нашёл в интернете изящное решение по выносу нужных каталогов в оперативную память. В /etc/fstab дописываем строки:

tmpfs /tmp tmpfs defaults,noatime,mode=0777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,mode=0777 0 0
tmpfs /var/log tmpfs defaults,noatime,mode=0777 0 0
tmpfs /var/run tmpfs defaults,noatime,mode=0777 0 0

Разумеется, можно добавить и другие, если надо. Только помните, что оперативки у 901 всего гигабайт.

Как в vim поставить # в начало всех строк выделения?

Как в vim поставить # в начало всех строк выделения?

Кратко: <c-v>jjjjjI#<esc>

Подробно:

  • <c-v> выделить блок
  • jjjjj — несколько строк книзу
  • I (большая i) — вставить перед блоком
  • #<esc> — # и к нормальному режиму.

Работает только в визуальных блоках.

Ссылки на полезные материалы по vim

Логотип vimЛоготип vim

<

dl>

http://habrahabr.ru/blogs/vim/28108/#habracut
Как быстро начать редактировать в Vim.

Подключение приёмника IRLink к Linux

(Оригинал написан для linuxetc.ru) Как-то раз я собрался с духом и настроил у себя просмотр IP-телевидения от Корбины с помощью всемогущего mplayer (возможно, я напишу об этом позднее). Создал в fvwm меню пунктов на сорок для быстрого выбора каналов... Но всё равно было как-то не вполне удобно. Например, научить домашних пользоваться телевизором с клавиатуры -- мягко скажем, задача не из простых и смысла в ней нет никакого.

Так я осознал, что моему компьютеру нужен пульт дистанционного управления. Беглый поиск в гугле моментально вывел меня на общеизвестную в линуксовых кругах программу lirc. Всё бы ничего, но к ней требовался инфракрасный приёмник и пульт. Паять приёмник самому у меня не было ни умения, ни особого желания.

SSL proxy на lighttpd

(Оригинал написан для linuxetc.ru) Возникла необходимость сделать на lighttpd балансирующий ssl-прокси к веб-серверу под управлением Apache. Другими словами, реализовать схему:
               https-запрос
	            |
		   \\|/
                 lighttpd
		 /       \\
		/         \\
	    apache1      apache2
где apache1. apache2 выбираются, исходя из доступности. Так как задача отняла чуть больше времени и сил, чем ожидалось, приведу решение с небольшим комментарием:

OpenVPN: частный случай p2p соединения

(Оригинал написан для linuxetc.ru) Рассмотрим весьма частный случай применения OpenVPN.

Конфигурация сети:

  1. Диспетчер, он же центральный хаб "звезды", он же VPN-сервер в стандартной схеме "клиент-сервер".
  2. Client1, по отношению к диспетчеру -- клиент.
  3. Client2, по отношению к диспетчеру -- клиент.
  4. Предполагается, что впоследствии появятся ещё Client3, ..., ClientN, и все они по отношению к диспетчеру будут суть клиенты.

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

Требуется обеспечить симметричный p2p VPN-линк между Client1 и Client2. Другими словами, превратить "звезду" в полносвязку.

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

Так как Client1 и Client2 -- это равноправные сервера, делать кого-то формальным сервером не было ни желания, ни особого смысла. С учётом же возможности пояления Client3, ..., ClientN заводить N формальных серверов -- это неизбежно запутаться во всех них.

RSS-материал