Слетел русский язык в Ubuntu 12.04

После очередного обновления и перезапуска системы слетел русский язык. В настройках языка системы стоит русский, но все надписи в меню и названия программ на английском. Более того, в консоли русский текст отображается как вопросительные знаки, а текущая кодировка терминала определяется как ANSI_X3.4-1968. Попытки «починить» locale положительного эффекта не дали. Удаление и установка русского языка из панели параметров системы — тоже.
Читать далее

Плавное обновление nginx

После ручной сборки nginx из исходных кодов выполнение перезапуска веб-сервера приведет к ошибке о занятом интерфейсе:

nginx: [emerg] bind() to [::]:80 failed (98: Address already in use)

Так происходит потому, что скрипт запуска (/etc/init.d/nginx) не обнаруживает в памяти запущенного рабочего процесса новой версии, а на старый не обращает внимания.
Читать далее

Как сохранять корректное имя при загрузке файла wget

Если передать консольному загрузчику файлов wget ссылку с параметрами, имя загруженного файла будет содержать часть этих параметров. Например, команда

wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.2.2/zabbix-2.2.2.tar.gz?r=http%3A%2F%2Fwww.zabbix.com%2Fdownload.php&ts=1396461786&use_mirror=freefr

приведет к тому, что в папке вместо архива с окончанием tar.gz будет лежать файл zabbix-2.2.2.tar.gz?r=http:%2F%2Fwww.zabbix.com%2Fdownload.php

wget может попытаться получить правильное имя можно с помощью параметра —content-disposition.
Читать далее

Вывод времени события в dmesg

В dmesg содержатся сообщения ядра, позволяющие диагностировать ошибки в системе. По умолчанию вывод выглядит следующим образом:

[ 0.217507] TCP established hash table entries: 65536 (order: 8, 1048576 bytes)
[ 0.217762] TCP bind hash table entries: 65536 (order: 8, 1048576 bytes)
[ 0.217941] TCP: Hash tables configured (established 65536 bind 65536)
[ 0.218034] TCP: reno registered
[ 0.218112] UDP hash table entries: 4096 (order: 5, 131072 bytes)
[ 0.218211] UDP-Lite hash table entries: 4096 (order: 5, 131072 bytes)
[ 0.218344] NET: Registered protocol family 1
[4315224.110087] r8169 0000:04:00.0 eth0: link down
[4315230.097079] r8169 0000:04:00.0 eth0: link up

В начале каждой строки указано время, прошедшее с момента старта системы, до наступления события. Оценить продолжительность отсутствия линка на интерфейсе eth0 в примере выше — нетривиальная задача. Гораздо проще сделать это, переведя время в человеку понятный формат.
Читать далее