Ошибка 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-ключей пользователей, подсоединяющихся к поражённой системе. Читать

Джефф Дин из компании Google — это Чак Норрис нашего времени

«Джефф Дин компилирует и запускает свой код перед коммитом, но только чтобы проверить на баги компилятор и CPU», — вот один из множества шуточных фактов о Джеффе Дине.

Джефф Дин считается кем-то вроде Чака Норриса. Отличие только в том, что он вовсе не герой боевиков, а инженер-программист компании Google.

Шутки о нём впервые появились на 1 апреля шесть лет назад. Один из коллег Дина по имени Кентон Варда открыл страничку, куда каждый мог добавлять факты о Джеффе Дине. Идею с энтузиазмом подхватили другие разработчики — и вскоре наполнили страничку множеством таких «фактов».

«Я ни с кем никогда не согласовывал это, — говорит Кентон Варда, — просто сделал, потому что подумал, это будет весело и народу понравится. Так всё происходит в компании Google. Но моя маленькая шутка и близко не может сравниться с самыми большими и смешными проектами в корпоративной сети».

«Когда Джефф Дин разрабатывает программу, то сначала создаёт бинарник, а потом пишет исходный код как документацию».

«Джефф Дин однажды не прошёл тест Тьюринга, потому что правильно установил 203-е число Фибоначчи менее чем за секунду».

«Джефф Дин родился 31 декабря 1969 года в 23:48. Ему потребовалось 12 минут, чтобы запустить свой первый счётчик времени».

Джефф Дин даже если захочет, уже не сможет избавиться от имиджа Чака Норриса. Впрочем, его вряд ли заботят такие мелочи. Один из ведущих программистов Google считается соавтором ключевых инфраструктурных систем компании, включая MapReduce, BigTable и Spanner. Читать

Для чего нужны 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 Читать

Очень волшебная кнопка.

Вчера выхватил забавный баг. Оказывается на некоторых ядрах, если нажать Alt + SysRq + J. Ведро начинает спамить в сислог и кернел лог сообщением типа:

Oct  6 00:54:45 citadel kernel: [43044.278885] Emergency Thaw on sdd1

После чего кончается место на разделе, и система тухнет.

Вот тут https://bugzilla.kernel.org/show_bug.cgi?id=47741 есть небольшой список подверженных багу версий ядер.

А вот тут https://bugs.launchpad.net/ubuntu/+source/linux/+bug/984273 этот же баг в багтрекере убунты. Если не лень, тыкайте на This bug affects you and 3 other people Edit , и выбирайте «Yes, affect me too». Таким образом можно привлечь внимание девелоперов к этому делу.