Рабочий пример записи в fstab для unionfs-fuse
unionfs-fuse#/media/disk1=rw:/media/disk2=rw /media/unionfs_disk fuse allow_other,nobootwait 0 0
allow_other необходим, чтобы кто-то кроме root мог пользоваться смонтированной unionfs-fuse директорией.
Рабочий пример записи в fstab для unionfs-fuse
unionfs-fuse#/media/disk1=rw:/media/disk2=rw /media/unionfs_disk fuse allow_other,nobootwait 0 0
allow_other необходим, чтобы кто-то кроме root мог пользоваться смонтированной unionfs-fuse директорией.
Поскольку sed не использует регулярные выражения, а вместо регулярных выражений использует морально устаревшее, труднообъяснимое, мало понятное непойми что, мы его заменим конструкцией
perl -0777pe 's/search/replace/g' -i filename
Где
-0777 - символ, использующийся в качестве построчного разделителя вместо стандартного \n (значения от 0400 и выше заставят perl обработать сразу весь файл целиком в один заход, но 0777 является общепринятым соглашением для этой цели).
-p - встраивает вводимый вами код на perl в "печатающий цикл", который будет обрабатывать stdin построчно.
-e - Позволяет передать исполняемый код в качестве аргумента, а не файла.
-i - Заменяет строки указанного входного файла на результаты вывода perl.
Живой работающий пример:
perl -0777pe 's#(\s+else[\s]+)cnf="\$1/openssl.cnf"(\s+fi)#$1cnf="\$1/openssl-1\.0\.0\.cnf"$2#g' -i /etc/openvpn/easy-rsa/2.0/whichopensslcnf
Пользителка (пользявка) для .bashrc
greplace()
{
perl -0777pe "$1" -i $2
}
Или, что еще удобней и безопасней (-i надо добавлять вручную, чтоб заменило, а без -i в stdout для отладки выводить будет просто):
greplace()
{
perl -0777pe "$1" $2 $3
}
А теперь заменим все "echo" внутри файла filename на адрес нашего айпишника, который выдаст нам curl из своего stdout (при условии, что сервис по адресу http://myip.dnsomatic.com доступен и работает исправно, чего я гарантировать не могу).
greplace 's/echo/'`curl -s http://myip.dnsomatic.com`'/g' -i filename
На случай, если http://myip.dnsomatic.com или какая-либо другая команда, будет возвращать данные с пробелами или символом ", обернём `curl -s http://myip.dnsomatic.com` в "".
greplace 's/echo/'"`curl -s http://myip.dnsomatic.com`"'/g' -i filename
И ещё можно вынести за скобки s
greplace()
{
perl -0777pe s"$1" $2 $3
}
и писать вот так
greplace /search/replace/g filename
Правда без использования кавычек \ придётся экранировать: \\
greplace /\\s+/_/g filename
Спасибо всем этим прекрасным людям, лучшим сынам своего отечества, без которых этот пост был бы невозможен:
http://stackoverflow.com/questions/3365260/match-and-replace-multiple-newlines-with-a-sed-or-perl-one-liner
http://stackoverflow.com/questions/6302025/perl-flags-pe-pi-p-w-d-i-t
http://perldoc.perl.org/perlrun.html#Command-Switches
Была проблема с soundconverter который вместо преобразования flv в mp3 зависал навечно. Ffmpeg который теперь avconv называется, при переконвертации этого же файла выдавал ошибку "avconv Encoder (codec id 0) not found for output stream #0:0". Проблема решилась установкой пакета "ubuntu-restricted-extras".
sudo apt-get install ubuntu-restricted-extras
И всё зашибись. По крайн��й мере до тех пор пока еще каких-нибудь ошибок не получу кучу.
UPD: То же самое, только для Debian.
lsb_release -a
echo "deb http://www.deb-multimedia.org squeeze main non-free" >> /etc/apt/sources.list
apt-get update
apt-get install deb-multimedia-keyring
apt-get update
apt-get remove ffmpeg
apt-get install ffmpeg x264
ffmpeg --version
http://www.debiantutorials.com/how-to-install-ffmpeg-with-h-264mpeg-4-avc/
Твики, уменьшающие изнашиваемость флешки и кое-какие раздражающие факторы.
ext2 noatime,nodiratime
/etc/fstab
tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/tmp tmpfs defaults,noatime,mode=1777 0 0
Firefox -> about:config --> browser.cache.disk.parent_directory --> /tmp
sudo tune2fs -c 50 -i 0 /dev/sdXN
Волею судеб, Wine не видится в моём редакторе меню для XFCE, поэтому его невозможно оттуда ни убрать, ни переместить. Однако есть способ его переместить, или избавиться совсем. На полное понимание хитросплетений конфигов менюшек не претендую. Возможно, некоторые из моих соображений неверны или полностью ошибочны. Однако, что удалось выяснить мне:
Конфиг менюшки находится в файле
~/.config/menus/xfce-applications.menu
И там в этом файле в самом его низу, в разделе Locations, есть такая директива
<Merge type="menus"/>
Которая выдирает все менюшки из различных уголков системы, таких как
~/.config/menus/applications-merged
/etc/xdg/menus/applications-merged
~/.local/share/applications
и многих других уголков, мне неведомых, поскольку слишком запутан сей конфиг для моих маломощных мозгов. Однако, саму эту директиву
<Merge type="menus"/>
можно либо удалить либо перетащить в нужное место, чтобы она глаза не мозолила, и все автоматически добавленные менюшки перетащатся/удалятся вместе с ней.
GRUB_RECORDFAIL_TIMEOUT=1
GRUB_TERMINAL=console
UUID=ce752aa9-9682-492c-86ce-5c460f892805 /media/ce752aa9 ext3 rw,nobootwait 0 0
UUID=ce752aa9-9682-492c-86ce-5c460f892805 /media/ce752aa9 ext3 rw,nobootwait 0 0>
sudo update-grub
Многословный вариант, который пока прочитаешь, забудешь что сделать надо было:
GRUB_RECORDFAIL_TIMEOUT=1 sudo update-grub
/etc/grub.d/00_header следующим образом:
#if [ \${recordfail} = 1 ]; then
# set timeout=-1
#else
set timeout=${GRUB_TIMEOUT}
#fi
После чего запустить grub-update
GRUB_TERMINAL=console
И последующим grub-update.
nobootwait и режим 0
ОБЯЗАТЕЛЬНО ПРОПИСАТЬ В /ETC/FSTAB NOOBOTWAIT ФЛАГ ДЛЯ КАЖДОГО ДИСКА
Решение:
Обойти это ограничение возможно, убив deluge (это важно), и затем поправив ~/.config/deluge/web.conf ручками.
Злобные выпады и преамбула:
Не очень понятно, каким образом в столь талантливо написанном приложении как deluge может появиться max value '99999'. Я бы еще понял если бы там стояло ограничение по int или long. Помимо всего прочего, 99999 это ~ 1.15 дня. Именно не реже вы должны соединяться с веб-интерфейсом deluge, чтобы не пропала ваша сессия по cookie. Только вот у меня веб-морда deluge открыта для внешнего мира и в связи с этим пароль там 32-значный, с труднозапоминаемыми символами.
При отключении шнура USB каждый раз отваливается раскладка. Это баг. Багрепоры писать не умею, поэтому исправил сам, путем редактирования /etc/default/keyboard. У меня стоит раскладка us colemak, поэтому
XKBLAYOUT="us,ru"
XKBVARIANT=","
исправил на
XKBLAYOUT="us,ru"
XKBVARIANT="colemak,"
И теперь она больше не отваливается.
sudo dd if=./ubuntu-12.04-alternate-i386.iso|pv|sudo dd of=/dev/sdc
"Dedicated grub partition", в противовес "separate boot" (когда /boot является частью операционной системы), располагается вне операционной системы на отдельном, специально созданном для загрузки других операционных систем, разделе. Краткая инструкция по установке:
sudo grub-install --root-directory=/mnt /dev/sdX
, где /dev/sdX - имя диска, куда будет добавлена запись MBR, необходимая для того чтобы загрузка вообще происходила и происходила именно с раздела примонтированного сейчас на /mnt.
sudo chmod 777 -R /mnt
Не могу ни рекомендовать, ни опровергнуть данный пункт, поэтому просто упоминаю его здесь, возможно он также поможет решить какие-нибудь проблемы с GRUB, если они возникнут.
sudo grub-mkconfig -o /mnt/boot/grub/grub.cfg