Linux

Конвертация 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 формальных серверов -- это неизбежно запутаться во всех них.

Чистка /usr/portage/distfiles

(Оригинал написан для linuxetc.ru)

На днях забился /. Напрочь, оставив лишь 5% для рута. Исследование показало, что в /usr/portage/distfiles накопилось три с половиной гига исходников. После на удивление долгого поиска в интернете нашёл упоминание утилиты eclean из пакета gentoolkit.

Она как раз удаляет ненужные исходники, оставляя актуальные.

Занес в кронтаб строки:

# воскресная чистка /usr/portage/distfiles
00 9 * * 0 /usr/bin/eclean distfiles --quiet

Запуск и удержание кластера

(Оригинал написан для linuxetc.ru) Считается, что после установления соединения по VPN соответствующие демоны, например, ipsec, сами обрабатывают исключительные ситуации типа внезапного пропадания коннекта и восстанавливают соединение при необходимости. На практике же картина не столь радужна и приходится применять "ручные" средства контроля связности VPN и её восстановления. Одно из возможных решений описано ниже.
RSS-материал