Load average

Наблюдая выводы таких команд, как top, htop, uptime, w и, возможно, других, пользователь наверняка обращал внимание на строку load average:

top

Расширяя обсуждение в «Общем обзоре стандартных средств наблюдений за системой», попробуем разобрать смысл этих чисел. Итак, проще говоря, числа отражают число блокирующих процессов в очереди на исполнение в определенный временной интервал, а именно 1 минута, 5 минут и 15 минут, соответственно. Понятие блокирующих процессов обычно хорошо освещают в последнее время, когда рассказывают о nginx. :) В данном случае, блокирующий процесс — это процесс, который ожидает ресурсов для продолжения работы. Как правило, происходит ожидание таких ресурсов, как центральный процессор, дисковая подсистема ввода/вывода или сетевая подсистема ввода/вывода.
Читать

Падение скорости записи USB на Ubuntu 12.04

Пару дней не мог понять, какого хрена скорость записи на USB HDD падает до 2 Мб\с. Причем проблема не постоянная. После перезагрузки работает вроде нормально. Проблемы начинаются через некоторое время.

Перебрал самые очевидные варианты, после, изучив логи, нашел там: «assuming drive cache: write through».

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

Оказалось, что не зря я подозревал в нехорошем, ядро из Hardware Enablement Stack.

Откатился к ядру 3.2 из 12.04. Проблема исправилась.

По поводу того, как удалять эту гадость, не я один вопросом задавался: http://askubuntu.com/questions/265999/how-to-remove-kernel-lts-enablement-stack

UPD: Убил кучу времени на разгребание зависимостей, поэтому хочу сразу предупредить, если соберетесь удалять эту напасть, примите во внимание, что возможно XORG не запустится, и придется все редать в консоли. Запаситесь мануалами.

Ошибка iconv

Если при перекодировании текстового файла вы получаете:

root@dc:/etc/verlihub# iconv -f cp1251 -t utf8 motd.utf > motd
iconv: illegal input sequence at position 2862

Не обязательно искать символ который это вызывает, достаточно добавить опцию -c, т.е.

root@dc:/etc/verlihub# iconv -сf cp1251 -t utf8 motd.utf > motd

-с Заставляет игнорировать некорректные символы.

Как доходчиво и быстро разобраться что делает команда на bash

Сегодня нашел сайт http://explainshell.com/ всем админам настоятельно рекомендую ознакомиться. Но сразу предупрежу, не во всех браузерах работает, проверяли на firefox 25.0.1 и google chrom 16.0.

Выглядеть должно примерно так:

 

explain

 

Разработчики собрали информацию с помощью парсинга 29761 руководств из репозитория справочников Ubuntu. Им пришлось немало потрудиться, чтобы корректно извлечь информацию об аргументах каждой программы, потому что в некоторых справочниках используется нестандартное форматирование страниц.

Как разрешить traceroute c помощью iptables

Недавно, выяснил, что для работы таких утилит как traceroute и tracepath, недостаточно разрешенного ipmp.

Т.е. в ситуации когда вы сидите за линуксовым шлюзом, на котором все «ненужные» адреса, порты и протоколы закрыты, разрешения натить icmp от пользователя в инет не достаточно, что бы работали трассировщики.

Оказывается, что для трассировки используется не только icmp, но и UDP. Т.е. что бы разрешить пользователям трассировать маршрут, нужно сделать что-то вроде

iptables -A FORWARD -i eth0 -p udp -m udp --dport 33434:33523 -j ACCEPT

Т.е. для трассировки требуется пропускать UDP пакеты на порты с 33434 по 33523.

 

 

Перекомпиляция системы под свое железо

Не многие знают, что не одну только генту можно пересобрать из исходников =)) Debian тоже позволяет совершить над собой такое извращение, причём с оптимизацией. Под оптимизацией я имею в виду то, что по умолчанию весь Дебьян собран под i386 архитектуру, что не есть хорошо в то время, когда НЛО бороздит просторы нашей планеты =)

Попробуем…

И раз: sudo apt-get install apt-build
Во время установки у программа спросит желаемый уровень оптимизации и архитектуру процессора. Для экстремалов можно выбрать уровень оптимизации равным «-03» и архитектуру pentium4 (именно он именуется как i686)
Читать

Linux-бэкдор скрывается в легитимном сетевом трафике

Компания Symantec в результате разбора атаки на одного из крупных хостинг-провайдеров выявила новый вид бэкдора для GNU/Linux, cообщает opennet.ru.

Бэкдор выполнен в форме разделяемой библиотеки, перехватывающей ряд стандартных вызовов, таких как read, EVP_CipherInit, fork и ioctl. Библиотека связывается с работающими на системе сетевыми процессами, такими как sshd, берёт на себя обработку указанных вызовов и получает контроль над трафиком поражённых серверных приложений. При работе бэкдор не сохраняет файлов, не создаёт сокетов и не инициирует сетевые соединения, прикрываясь в своей активности поражённым серверным процессом, что затрудняет его обнаружение. Управляющие команды передаются в составе штатного сетевого трафика, через интеграцию подставных блоков. Бэкдор отслеживает появление в нормальном, не вызывающем подозрение, трафике маску «:!;.», при обнаружении которой декодирует следующий за ней блок данных. Данные зашифрованы с использованием шифра Blowfish и следуют в формате Base64. Через закодированные блоки, примешанные в обычный трафик, могут передаваться управляющие команды для выполнения произвольной shell-команды или отправки в ответ накопленных бэкдором данных. Основной функцией бэкдора является перехват и накопление конфиденциальных данных, таких как пароли, ключи шифрования и email-адреса. В частности, поддерживается перехват паролей и SSH-ключей пользователей, подсоединяющихся к поражённой системе. Читать

Для чего нужны Zeroconf и Avahi.

Я, как старый линуксоид, когда впервые установил Ubuntu и увидел незнакомое слово avahi, конечно же сразу посмотрел в google. Потыкался в несколько ссылок, увидел другие непонятные слова, типа zeroconf, multicast dns, bonjour. Сразу понял, что это какая то мутная технология от Apple и нафиг мне ненужная.

Однако, с ростом локальной сети внутри моей квартиры, подумал, что неплохо бы было полюбопытствовать, как можно приспособить zeroconf, чтобы облегчить себе жизнь.

Давайте разберемся с терминологией:

  1. Zeroconf — это протокол, разработанный Apple и призванный решать следующие проблемы:
    • выбор сетевого адреса для устройства;
    • нахождение компьютеров по имени;
    • обнаружение сервисов, например принтеров.
  2. Avahi — открытая и свободная реализация протокола zeroconf.
  3. Bonjour — open-source реализация протокола zeroconf от Apple.

Читать

Прозрения псто

Исторически так сложилось, что я всегда для подключения к p2p сети DC++ пользовался linuxdcpp. Сравнительно недавно перешл на Eiskaltdcpp.

Все бы хорошо, всем вроде доволен, но начал меня напрягать досадный баг, в менюшках значки все заменены на перечеркнутый круг, т.е. типа нет такого значка в системе. Вот сегодня, сижу дома, на больничном, времени свободного дох… много. Решил тупо снести прогу и поставить снова. И тут, для тех, кто не в курсе, небольшая заметка. Дело в том, что данная программа имеет два интерфейса, GTK  и QT. Поскольку я всегда под гномом жил, у меня стоял GTK. Так вот, переставляю я программу, запускаю…. а там чудо из чудес! Множество функций неведомых, старых множества наоборот нет… Короче по какой то причине, встал у меня дефолтом QT интерфейс, а в нем оказались пофиксены куча мелких, но неприятных багов.

 

Вывод первый, если у софтины много интерфейсов — тестить все, ибо именно от фронтенда зависит доступный функционал.

Вывод второй, софт на GTK развивается хреново, желательно переходить на QT, или вообще на кеды.

Управление VLC плеером с Android устройства

Что бы управлять плеером с андроид устройства, нужно три вещи:

1. Включить в VLC плеере (на компьютере) WEB интерфейс.

2. Установить на android устройство специальное приложение (в принципе не обязательно, но так удобнее).

3. Что бы компьютер и мобильное устройство были в одной сети (не обязательно, но очень желательно)

Итак. Теперь по каждому пункту подробнее:

1. Не зависимо от платформы (Linux, Win, Mac), веб интерфейс включается через «Вид»->»Добавить интерфейс»->»Веб интерфейс». В после этого, можно подключаться на http://localhost:8080, и управлять плеером.

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

  • Windows – C:\Program Files (x86)\VideoLAN\VLC\lua\http ( “Program Files” вместо “Program Files (x86)” на 32х битных версиях Windows.)
  • Mac OS X – /Applications/VLC.app/Contents/MacOS/share/lua/http/.hosts
  • Linux – /usr/share/vlc/lua/http/.hosts Читать