Показаны сообщения с ярлыком linux. Показать все сообщения
Показаны сообщения с ярлыком linux. Показать все сообщения

Duna HD: поиск тайных знаний

Некоторое время назад я стал счастливым обладателем медиаплейера Dune HD TV102. Зная, что внутри у этой приставки Linux, естественно мне захотелось посмотреть на это чудо изнутри. Не разобрать на части, конечно, а посмотреть как устроено программное обеспечение и вообще система. Кроме того,  дюна поддерживает подключение плагинов, почему-бы не разработать какое-нибудь полезное расширение для этой приставки?

Namei: Почему в nginx permission denied?

Почему в Nginx error.log появляются записи вида open() ... failed (13: Permission denied)? Вообще, речь конечно не про Nginx как таковой. Ситуация, когда в *nix-системе доступ запрещён по непонятной причине, хотя у файла или папки "всевсевсе" права rwxrwxrwx (777 в числовом выражении), бывает с любым процессом. В таком случае нужно не биться головой о стену, а вспомнить, что у любого процесса для доступа к любому файлу, помимо прав на чтение (или запись), должны быть права на переход в каждую папку начиная от корня. 

Установка nginx с помощью yum (RHEL/CentOS)


Чтобы установить nginx на RHEL/CentOS с помощью yum, надо сделать несколько простых шагов:

Корень человекообразного робота и его смысл

Всё-таки достал меня мой китайский Android с родной прошивкой. Не выдержал я, перепрошил его под CyanogenMod десятой версии. И зачем-то понадобилось мне стать всемогущим, ака получить root-доступ, да таким всемогущим, чтобы можно было в консоль войти и su не ответствовал глумливо:

Учебник GIT

Логотип Git
Вот вам сразу ссылка: Учебник GIT.

Впервые столкнулся по работе с git (это такая распределённая SCM ака система контроля версий. Из тех, что доводилось использовать раньше,- похоже на Mercurial). Википедия говорит, что git придумал Линус Торвальдс, чего-то ему не хватало в имеющихся на тот момент (в 2005 году) системах контроля версий при разработке ядра linux:

Проект был создан Линусом Торвальдсом для управления разработкой ядра Linux, первая версия выпущена 7 апреля 2005 года.

Та-же википедия говорит, что git затачивали под использование в скриптах, поэтому якобы система команд и ключей продумана и оптимизирована под скритпы. После Hg переучиваться тяжело, у git (как и у всех других SCM) своя волшебная философия,- мнемоника отдельная от всего и совершенно своя. Как с этим бороться,- понятно: мануалы почитать :-) Собственно, сайт проекта git содержит всё необходимое,- дистрибутивы для разных ОС, исходники и книжки на нескольких языках, в том числе на русском. Перевод весьма достойный, читается легко и всё понятно. Вообщем,- рекомендую.

Console Colors: Сделать цветную консоль за 3 шага

Пример раскраски вывода ls
в 
online-конфигураторе
Очень часто делаю что-то в консоли, и в десктопном маке и на удалённых серверах. Использую bash. И, очень часто, выводит из себя отсутствие раскрашивания, как минимум в выводе листинга директорий. Сел разбираться,- оказывается, чтобы сделать консоль цветной, нужно сделать 3 простых шага:

Во-первых, надо удостовериться, что в переменных окружения стоит правильная консоль xterm (xterm-color или даже xterm-256color). Смотрим на вывод команды env:


    $ env
    SHELL=/usr/local/bin/bash
    TERM=xterm-256color
    PAGER=more
    BLOCKSIZE=K
    EDITOR=vi
    ...
Если тип консоли указан неправильно,- надо исправить (и добавить соответствующую строку в ~/.profile):

    $ TERM="xterm"; export TERM

Во-вторых, надо разрешить консоли использовать цвета:
    $ CLICOLOR="YES"; export CLICOLOR
И, наконец, настроить цветовую схему для вывода ls. Цветовая схема для ls задаётся переменной окружения LSCOLORS (или LS_COLORS, зависит от системы). Формат описания цветовой схемы тоже зависит от системы, чтобы не искать документацию, можно воспользоваться простеньким online-конфигуратором (позволяет задать только базовые 8 цветов). Набросал для примера вот такую схему, и добавил описание в env:
    LSCOLORS="ExGxFxdxCxDxDxhbadExEx"; export LSCOLORS

Страсти вокруг du -h

В очередной раз столкнулся с нехваткой дискового пространства на тестовом Linux-сервере,- значит пора чистить конюшни, то есть разобрать, наконец, завалы дистрибутивов "на всякий случай", бэкапы поудалять и вообще.

Обычный способ,- посмотреть сколько места занимает каждая папочка начиная с рута, зайти в самые толстые, найти вредителей и уничтожить,- и так рекурсивно пока df -h не начнёт показывать приемлимые цифры. Но перфекционизму нет предела,- хочется "чтобы одной командой", да "отсортировать по размеру", да ещё и в человекочитаемом формает, т.е. занимаемое место показывать в Гига-\ Мега- \Кило- байтах. Поигрался с du -h и sort'ом: не вытанцовывается, полез гуглить.

Набрёл на прекрасный топик с кучей рекомендаций, начиная от улучшенной версии coreutils >= 7.5, в которой sort умеет сортировать выдаваемые du -h значения, заканчивая половыми извращениями в виде Python-овских скриптов или вставок awk или Perl в командной строке. Но самое изящное решение оказалось простым, как Unix:

du -scBM * | sort -rn

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

Ctrl-S и vi


У системных администраторов и программистов бывают плохие привычки. Одна из таких привычек,- работать попеременно в разных редакторах, например в редакторе mc и vi в консоли, да ещё и в Notepad++, к примеру. Сам по себе факт работы в разных редакторах ни плох, ни хорош, но вот следствия бывают не очень приятными. Например, привычные сочетания клавиш под разными системами могут приводить к разной реакции. Одно из таких комбинаций CTRL+S. Во множестве десктопных редакторов, в особенности в Windows, такое сочетание зарезервировано для сохранения текущего документа, в редакторе mc это же самое сочетание клавиш включает и выключает подсветку кода.

А вот при работе по ssh в терминальном окне Putty это сочетание клавиш приводит к зависанию сессии. Ну, то есть, множество раз мне казалось, что сессия зависла и приходилось попросту подключаться заново к серверу, пока я не решил разобраться.

Оказалось, что на самом деле CTRL+S включает режим XOFF, в котором терминал принимает нажатия клавиш, но не выводит в ответ ничего. Визуально кажется, что сессия умерла, но это не так. А если есть режим XOFF, то есть режим XON. Режим XON включается обратно при помощи CTRL+Q.

Вот так-то.

Linux в браузере

Буквально вчера (16 мая 2011 года) в интернете запустился проект jslinux (эмулятор PC с Linux на javascript в браузере) от уважаемого мужчины по имени Фабрис Беллар. Эмулятор для запуска Linux полностью написан на JavaScript. При входе на страницу отображается консоль, на которой начинается загрузка Linux с нуля до момента отображения рутовой консоли. В консоли работает куча стандартных команд, вплоть до компилятора TCC. И всё это работает прямо в браузере. Крутизна необыкновенная.

Yealink vp-2009

Тестирую новую железку SIP видеотелефон Yealink-2009 в связке с Мультифоном. Мегафон показал железку сначала на экспокоме, а потом девайс засветился в новостном ролике на канале "Россия 24" про Мультифон, и дальше мелькал ещё несколько раз в разных новостях:

Yeaphone - USB-трубки Yealink (SkypeMate) под Linux

По наводке с хабра наткнулся на сайт Thomas Reitmayr со страницами Yeaphone. По словам автора, основная цель проекта,- создать интерфейс взаимодействия с USB-трубками Yealink (USB-P1K / P1KH / P4K) для Linphone, чтобы монитор и клавиатура были больше не нужны. Это позволит использовать трубки во встроенных системах (Embedded Device). В качестве основного устройства автор использует Linksys NSLU2 с альтернативной прошивкой, делающей железку полноценным линуксом. В добавок ко всему, автор предлагает использовать трубку совместно с Asterisk со всеми его расширениями, автоответчиками, планами нумерации и прочими полезняшками.

Потенциально на такой связке можно построить собственную небольшую АТС-ку размером с базу для DECT-овской трубки.

Virtual Cisco

Cisco ASA 5500А с Cisco_то оказывается не всё так просто: как минимум один класс устройств Cisco (конкретно ASA 5500 series) работает на линуксе и платформе x86. Есть даже сайт проекта портирования Cisco ASA на PC. Энтузиасты распространяют установочные образы, пригодные для установки или запуска с LiveCD на реальной машине или даже в VMWARE. Вообщем, для подготовки к сдаче экзамена или для тестирования самое-то!

Специальный поиск Google

Несколько раз случайно натыкался, и каждый раз, когда было нужно,- не мог найти: Гугл позволяет задать область поиска выбором специального поисковика.

Поиск Linux
Поиск BSD
Ещё есть поиск по Microsoft, поиск по правительственным сайтам США и ещё несколько: полный список на странице Special Google Searches

Перенос\копирование правил для сообщений в Thunderbird

thunderbird logo Понадобилось перенести правила в Thunderbird из одного аккаунта в другой. Специальной кнопки для копирования\перемещения правил между почтовыми аккаунтами не нашёл, полез разбираться:

В базе знаний Thunderbird нашлось, что настройки фильтров хранятся для каждого аккаунта отдельно в файле с именем msgFilterRules.dat. В файле сначала указывается версия и настройки записи результатов фильтрации в лог:

утилиты GNU для Windows

GnuWin32 Почему-то в русском интернете мало используется весьма полезный пакет для Windows под названием GnuWin32. Проект GnuWin32 предоставляет набор популярных unix утилит, портированных на платформу Win32. Все утилиты предоставляются с лицензией GNU (или с аналогичными лицензиями open source) . Эти программы собраны с использованием стандартных 32-битных библиотек MS-Windows, таким образом они не зависят от каких-либо сторонних библиотек совместимости, например CygWin или Msys.

Geany - IDE для Linux

geany_main В поисках нормальной среды разработки для PHP под Linux обнаружил в стандартной поставке Ubuntu программу Geany. Оказалось достаточно удобно и для PHP и для постоянно используемого Python'а. Причём, работает и в Linux и в Windows (правда, требует GTK). По функционалу,- ничего лишнего и всё есть. Есть вкладки для консоли, стандартный Output, подсветка кода для множества языков и т.д. Есть и мелкие неприятности, но, в целом,- очень качественная IDE, рекомендую.

Мультифон в Linux

Поскольку Мультифон телерь работает и по UDP, решил протестировать несколько линуксовых SIP-клиентов на предмет совместимости с Мультифоном. Навскидку взял наиболее известные и легкодоступные в Ubuntu: WengoPhone, linphone, Ekiga и Empathy.

Windows Live и Linux

Понадобилось тут просмотреть в Ubuntu файл Microsoft Project,- OpenOffcie такого не умеет, первый попавшийся бесплатный аналог OpenProj с заявленной поддержкой файлов .mpp сказал Can not open file. В GoogleDocs тоже дали от ворот поворот. Вспомнил, что микрософт вроде как сделал свой вариант онлайн-офиса,- решил попробовать открыть там, тем более что аккаунт есть. Однако, сразу после логина получил печальное сообщение:


* Microsoft Internet Explorer 6, 7, or 8 running on Microsoft Windows XP, Windows Server 2003, or Windows Vista. You can download Internet Explorer from the Internet Explorer page.

* Mozilla Firefox running on Windows XP, Windows Server 2003, Windows Vista, or Mac OS X 10.2.x and later. You can download Firefox from the Firefox download page.


В эпоху тотального веба, когда космические корабли бороздят просторы большого театра, эти люди всё ещё запрещают мне ковыряться в носу пользоваться линуксом. Грустно...