добавляем в vim синтаксис для nginx

Качам синтаксис

mkdir -p ~/.vim/syntax/
wget http://www.vim.org/scripts/download_script.php?src_id=19394 -O ~/.vim/syntax/nginx.vim

Указываем где находятся конфиги nginx

vim ~/.vim/filetype.vim
au BufRead,BufNewFile /etc/nginx/*,/etc/nginx/conf.d/*,/usr/local/etc/nginx/* if &ft == '' | setfiletype nginx | endif

namei

Может быть полезна для понимания почему нет прав на запись в нужный файл или директорию.

При указании с параметром -l показывает права доступа, владельца и группу каждой директории указанного пути.

namei -l /var/spool/mail/vmail/trap/new
f: /var/spool/mail/vmail/trap/new
dr-xr-xr-x root  root  /
drwxr-xr-x root  root  var
drwxr-xr-x root  root  spool
drwxrwxr-x root  mail  mail
drwxr-xr-x vmail vmail vmail
drwx------ vmail vmail trap
drwx------ vmail vmail new

добавляем поддержку H.264 в Vivaldi browser

Если у вас убунта, то устанавливаем пакет chromium-codecs-ffmpeg-extra
sudo apt-get install chromium-codecs-ffmpeg-extra

Если же не убунта, как и у меня, то скачиваем пакет
wget http://security.ubuntu.com/ubuntu/pool/universe/c/chromium-browser/chromium-codecs-ffmpeg-extra_64.0.3282.119-0ubuntu1_amd64.deb

Дальше достаем из скачанного пакета файл libffmpeg.so и копируем его в .local/lib/vivaldi/
mkdir -p ~/.local/lib/vivaldi
cp libffmpeg.so ~/.local/lib/vivaldi/

Проверяем поддерживает ли теперь Vivaldi H.264 и MSE & H.264 на страничке https://www.youtube.com/html5?hl=ru&gl=RU

Как вывести звук с микрофона на колонки в Linux

Есть много вариантов: смотреть.

Мне понравился тот, которому я могу научить людей далёких от техники.
Читать далее «Как вывести звук с микрофона на колонки в Linux»

Mutt: отключить sent файл

По умолчанию, Mutt сохраняет каждое отправленное письмо в файл sent в директории пользователя. Как следствие файл может разрастись до неимоверных размеров. Отключить это можно создав файл /home/<user>/.muttrc и добавив в него

set copy=no

Безопасная чистка данных с диска

Есть ситуации, когда необходимо очистить HDD/SSD так, чтобы на нём гарантированно не осталось информации. Здесь на помощь приходит утилита shred.
Читать далее «Безопасная чистка данных с диска»

Сканер Canon LiDE 120 и Ubuntu 16.04.1

У меня уже несколько лет исправно трудится сканер Canon LiDE 110, который прекрасно совместим с GNU/Linux. Мне понадобилось купить ещё один сканер и я решил купить такой же. Но к сожалению, в наличии больше таких устройств не оказалось, но был Canon LiDE 120. Решил взять его. Как оказалось, поддержка сего устройства в GNU/Linux пока есть только с небольшим шаманством.
Читать далее «Сканер Canon LiDE 120 и Ubuntu 16.04.1»

Перенос виртуального сервера на физический с созданием программного рейда

Задача: перести виртуальный почтовый сервер на физический с созданием RAID 1 (зеркало).

Имеется виртуалка на XenServer и физический сервер с двумя винтами по 1 Тб

Установим Centos minimal на один из винтов и поделим диск на разделы

/dev/sda1 /boot
/dev/sda2 swap
/dev/sda3 /

Теперь установим mdadm и vim (обожаю этот текстовый редактор)

yum install mdadm vim

Теперь надо подготовить второй диск для настройки на нем рейда. Скопируем схему разбивки диска с /dev/sda

sfdisk -d /dev/sda | sfdisk /dev/sdb

Читать далее «Перенос виртуального сервера на физический с созданием программного рейда»

Уведомление о завершении команды в консоли

Скрипт для zsh позволяющий вывести уведомление о завершений команды, если терминал не открыт и команда выполнялась больше 10 секунд.

function active-window-id {
    echo `xprop -root | awk '/_NET_ACTIVE_WINDOW\(WINDOW\)/{print $NF}'`
}

# end and compare timer, notify-send if needed
function notifyosd-precmd() {
    if [ ! -z "$cmd" ]; then
        cmd_end=`date +%s`
        ((cmd_time=$cmd_end - $cmd_start))
    fi
    if [ ! -z "$cmd" -a $cmd_time -gt 10 -a "$window_id_before" != "$(active-window-id)" ]; then
            kdialog --title "$cmd_basename completed" --passivepopup "\"$cmd\" took $cmd_time seconds"
            unset cmd
    fi
}
 
# make sure this plays nicely with any existing precmd
precmd_functions+=( notifyosd-precmd )
 
# get command name and start the timer
function notifyosd-preexec() {
    window_id_before=$(active-window-id)
    cmd=$1
    cmd_basename=${cmd[(ws: :)1]}
    cmd_start=`date +%s`
}
 
# make sure this plays nicely with any existing preexec
preexec_functions+=( notifyosd-preexec )

Скрипт для КДЕ, т.к. используется kdialog для вывода уведомления. Оригинал на гитхабе. Там же для гнома.

Код сохраняем в файл .notifyosd.zsh и добавляем в .zshrc строку

[ -e ~/.notifyosd.zsh ] && . ~/.notifyosd.zsh