С Новым Годом!



8 коммент.
Поздравляю всех с этим праздником!

Пусть в Новом году у вас всё соберётся и скомпилируется получится, желаю удачи, здоровья и долгих лет uptime :-)


Ваш до последнего байта,
Virens.
Читать далее

Юмор: если бы операционные системы были едой, то...



10 коммент.
В канун праздников предлагаю отвлечься от серьёзных тем и немного отдохнуть.

Мы имеем дело с операционными системами так же часто, как и с едой - в некотором смысле, и то, и другое "для внутреннего употребления", как говорил Жванецкий. Так что сравнение [1] имеет право быть.

Windows
Это обычный фаст-фуд типа Макдональдса. Стандартно-средние бутерброды (типа BigBalmer и Гейтс МакБиллис), без особого выбора, не полезно (но калорийно) - все вроде едят и не жалуются. Ну, иногда в бутерброде попадаются гайки и тараканы - в лучших традициях советского общепита. Выкинул и ешь дальше. Как ни оформляй и не приукрашивай, до ресторанного уровня не добраться. До тех пор, пока не узнают, как именно эту еду готовят. Рецептура держится в строжайшей тайне, ибо является рождённой в страшных муках интеллектуальной собственностью посредственного поварья.

MacOS
Это ресторан, в котором всё сделают за вас, вкусно, на уровне и за соответствующую немалую плату. Изысканные блюда, сервис - вы такое дома повторить вряд ли сможете. Рецептов вам не дадут, потому что "это вам знать не надо", и уж тем более на кухню не пустят. Хотя и в ресторанах работают подчас не боги...

Linux
По-разному: от ресторанов достаточно высокого уровня до больших книг с рецептами. В "ресторанном" варианте многое будет почти как в MacFood, то есть на хорошем уровне, вкусно и красиво, и значительно дешевле. Такой бизнес-класс. И кроме того, по первому требованию дадут посмотреть рецепт и даже постоять на кухне - рецепты открыты. Наиболее известные рестораны - RedHat, Novell, или Xandros.
В "рецептурном" случае вам предлагается встать за плиту самому и сделать себе еду из готовых продуктов: от быстрозамороженных полуфабрикатов до набора продуктов, из которых ещё надо выбрать нужные и смешать в правильной пропорции. Специи добавляете сами по вкусу - что не так просто, если вы до этого питались в фаст-фудах.
Linux - это возможность испытать свою способность к творчеству. Не все умеют готовить, не сразу всё получается, но через некоторое время отважные смельчаки, не спасовавшие перед кастрюлями и сковородками, находят это занятие весьма увлекательным и добиваются очень неплохих результатов. Как правило, достигшие некоторого мастерства в этом деле обожают делиться рецептами на страницах Интернета. При некотором навыке, можно не только вкусно (и полезно) питаться самому, но и накормить друзей, знакомых и, быть может, даже открыть свой небольшой ресторанчик.

FreeBSD
Это "Книга о вкусной и здоровой пище" без картинок, но с подробными пояснениями, какие полуфабрикаты и как надо готовить, чтобы получить готовое блюдо. Очень напоминает Gentoo с её легендарной "Поваренной книгой". В руках хороших поваров получаются вкусные блюда, но чаще похоже на еду, которую готовит начинающая хозяйка: немножко пересолено, недожарено и аляповато, но задор есть и пахнет многообещающе.

BeOS / Haiku
Это небольшой набор консервов для выживания в походных условиях. Сделано небольшим, но очень сплочённым коллективом поваров, в основном для туристов, экстремалов и прочих смелых и находчивых людей. Умопомрачительные по оригинальности рецепты, требующие подчас экзотических ингредиентов, нестандартных поварских инструментов и искусства приготовления на открытом огне. На приверженцев фаст-фудов и тем более ресторанов производит неизгладимое впечатление, после которого несчастные просыпаются в холодном поту и щупают пульс.

YellowDog (игровые приставки)
Это скорее всего пицца. Вкусно, но питаться этим постоянно не представляется возможным. Рецептура почти не меняется годами - подсыпают другие специи, добавляют лук или убирают чеснок.

PalmOS (КПК)
Это разного рода шоколадные батончики, не требующие приготовления и сразу готовые к употреблению. В настоящее время вытесняется "пирожками" из MicroFood весьма сомнительного качества и странно пахнущей начинки.


Литература:
[1] dpwiz, "Если бы системы были едой...", Transactions of Ubuntu Vision and Linux Processing, Russian Ubuntu-forum, 2006.
Читать далее

Свободные утилиты восстановления данных



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

Утилита dd
Старая, как сам UNIX, утилита, входящая решительно в любой нормальный дистрибутив UNIX-основанных систем. Более того, на блоге уже упоминался вариант её использования для проверки дисков. Теперь она послужит нам для нужд восстановления.
Собственно, её использование приведёт к копированию данных, несмотря на ошибки. Внимательное чтение мануала man dd даёт ключ к использованию:
dd if=/dev/cdrom of=~/bad.iso bs=2048 conv=noerror
Игнорирование ошибок чтения обеспечивает именно последний параметр, при этом вы будете наблюдать многочисленные сообщения об ошибках.
В Сети есть мануал на русском для тех, кто испытывает трудности с англицким наречием.

Утилита recoverdm
В комплект поставки дистрибутивов она входит редко, но распространяется под лицензией GPL, и скачать её отсюда.
Требует рутовых прав, так как использует некоторое "трюкачество", например сброс состояния контроллера и чтение "сырых" данных (RAW-data). Обеспечивает большую точность восстановления, чем dd, и больший набор параметров. Однако работает гораздо медленнее dd в силу того, что гораздо большее количество попыток чтения совершается. Способна восстанавливать данные с дискет, CD/DVD и жёстких дисков. Кроме того, поставляется с утилитой mergebad, которая полезна в случае, например, когда есть несколько компакт-дисков, и все они битые, а информация на них распределена.
Компиляция из исходников посредством команды make не представляет никакой трудности. Нужно поставить на ней соответствующие права и выполнить команду:
sudo ./recoverdm -t 20 -i /dev/hda -o bad.iso -l badsectors.bad -n 10 -r 12
После чего начнётся медленное и печальное восстановление. Лучше всего ставить эту процедуру на ночь, так как при сколько-нибудь обширных сбоях чтения компакт-дисков такое считывание может занять несколько часов (мой злосчастный миморекс читался 7 часов).
В процессе считывания вы будете видеть в консоли такие вот сообщения:

Trying RAW read...
Tried reading 10 times, failed doing that. Continuing...
error at 732188672 bytes, retrying: 1
error at 732188672 bytes, retrying: 2
error at 732188672 bytes, retrying: 3
seek to end...
error at 732188672 bytes, retrying: 4
resetting device...
error at 732188672 bytes, retrying: 5
resetting controller...
error at 732188672 bytes, retrying: 6
error at 732188672 bytes, retrying: 7
error at 732188672 bytes, retrying: 8
error at 732188672 bytes, retrying: 9
error at 732188672 bytes, retrying: 10
Trying RAW read...
Tried reading 10 times, failed doing that. Continuing...

которые будут тем многочисленнее, чем больше запорчен диск и чем больше вы поставили попыток чтения. Естественно, утилита не волшебная, и те данные, которые восстановить не удалось, просто заменяет пустыми блоками. Если на диске было много фотографий, потерю десятка вы переживёте менее болезненно, чем всего диска целиком.
Восстановление этой программой занимает существенно больше времени, чем dd. Не ждите, что диск с обширными повреждениями (более 10% секторов) проутюжится меньше, чем за 7-8 часов (при многократном считывании с параметрами, указанными выше). Но есть проверенный способ: ставим на ночь и идём спать...

Личный опыт
Восстанавливал при помощи этих двух утилит один фильм со славных своим "качеством" дисков фирмы Memorex. Так назвать их можно было только из глубокого сарказма - даже безродная китайщина до сих пор читается на максимальной скорости (записаны 5 лет назад!), зато славные миморексы сдохли всем десятком через каких-то полтора года.
Как бы там ни было, но dd и dd_rescue работали долго и в итоге было слишком много пропущенных секторов - фильм шёл с заметными "глюками". Тот же диск, отутюженный recoverdm с приведёнными выше параметрами дал существенно меньшее количество пропусков и фильм шёл куда более "плавно" и при этом выпали только три-четыре незначительных эпизода по 5-6 секунд. Более чем удовлетворительный результат при том, что обычное копирование прерывалось на половине диска с истерическим воплем "I/O error, пишите письма".

Ссылки:

Пост был вдохновлён собственными потребностями в восстановлении данных с дисков МимоMemorex и этой отличной статьёй. В ближайших планах апробация программы testdisk, про которую писали тут.
Читать далее

Устранение эффекта красных глаз средствами графического редактора GiMP



16 коммент.
Задача: так уж вышло, что на фотографии некоторые люди/животные получились с красными глазами - как устранить?
Решение: только если они не слишком много компилируют тарболы, средствами GiMP это можно поправить. Устранение эффекта красных глаз - простая процедура.

Причина явления
Например, здесь приводится объяснение эффекту: яркий свет вспышки отражается от сетчатки глаза (глазного дна), которая отражает свет "красных" длин волн (так как в глазном дне много кровеносных сосудов), поэтому на снимках вместо зрачка становятся видны красные круги. Чем темнее сцена, тем шире открыты зрачки, и тем ярче будут "красные глаза".
Чтобы избежать этого неприятного явления, нужно выпрямлять себе руки чтением книжек или сайтов по фотографии. Лучше всего располагать объект съёмки лицом к свету, а при возможности включить люстру и другое освещение. Можно воспользоваться и второй вспышкой, работающей синхронно с основной, и направленной ее в потолок. Тогда при освещении рассеянным светом, эффекта "красных глаз" не возникнет. Фотографируя одной вспышкой нужно стараться вынести ее дальше от объектива, однако это не всегда возможно, да и большие тени сзади смотрятся плохо.

Метод борьбы с этим эффектом есть в некоторых фотокамерах (как правило, профессиональных): вспышка камеры посылает два последовательных световых импульса - первый вызывает сокращение зрачка, второй освещает сцену для съемки. Такой метод часто критикуется профессиональными фотографами: глаза получаются неестественными из-за того, что в темноте зрачки должны быть широко открыты.
Другой способ борьбы - редактирование фотографий в графических редакторах, чем мы и займёмся.


Устраняем красноглазие с помощью GiMP
Всё будет показано на примере фотографии одного из заслуженных "чугунистов" ресурса www.photosight.ru, у которого регулярно "чешется фотоаппарат" - надеюсь, он не подаст на меня в суд за нарушение копирайта. Ну и "боярыня-то красотою лепа, очервлёна губами, бровьми союзна... " (с) Иван Васильевич меняет профессию. Мда... печальная картина.
В общем, фрагмент кадра:

Открываем GiMP, заходим в меню "Изображение - Режим - Decompose". Дальше появляется меню, предлагающее нам раскидать изображение по слоям - выбираем цветовую схему, пусть будет RGB.
Получаем изображение из трёх слоёв, разбросанных по каналам.

Полупрозрачным показано окно, которое появится после разброса цветов по каналам. Нам нужен красный канал. Открываем меню "Диалоги - Слои", видим, что изображение стало серым, но в слоях - цветовые каналы. Выключаем все каналы, кроме красного. Затем выделяем окружности на глазу инструментом "Лассо" или просто круговым выделением. Далее идём в меню "Инструменты - Инструменты цвета - Яркость/контраст". Понижаем значение яркости в выделенной области.

Всё, включаем остальные слои обратно. Идём снова в меню "Изображение - Режим", но выбираем Compose. Уверенно нажимаем OK.

Любуемся результатом содеянного. Стало лучше - во всяком случае, не так бросается в глаза.

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

Некоторые замечания о сборке ядра Linux: как собрать ядро в Линукс



37 коммент.
Если вы столкнулись с необходимостью собрать ядро Linux, наложить патч для ядра Линукс или просто вы уже забыли, как это делается - здесь приводятся рекомендации и ссылки для "быстрого старта".


Зачем собирать ядро Linux?
Если всё работает, цветёт и пахнет - не трогайте ничего! Есть старая поговорка "не сломалось - не чини!", в ней мудрость многих поколений пользователей UNIX, бессонные ночи и море слёз. Ну так зачем же это надо?

Как говорят классики, полезно пересобрать ядро в следующих случаях:
  • чтобы задействовать свойства, которых нет в поставляемых сборках ядра (например, поддержка памяти больше 1Гб, сжатых файловых систем или других интересных возможностей);
  • создания монолитного ядра, без модулей (бывает необходимо при создании специфичных систем, например LiveCD);
  • для установки обновлённого ядра, в котором есть необходимые свойства или поддержка вашего оборудования;
  • чтобы больше узнать о ядрах Linux.
Не бойтесь пересобирать ядро Линукс. Это забавно и полезно. И никакой чёрной магии в этом нет.


Как собрать или пересобрать ядро Линукс?
Вы хорошо подумали, взвесили все "за" и "против" и решились-таки на этот шаг. Это не так сложно, как может показаться, процесс автоматизирован и упрощён до известных пределов. Я поделюсь некоторыми очевидными (для тех, кто уже наступал на грабли) или не очень (кто их удачно обошёл) подводными камнями, подстерегающими вас на этом пути.
Прежде всего, заполучите статью "Ставим ядро 2.6, или Ядерная физика для домохозяйки" (тут - новая версия этой статьи). Не надо оскорбляться таким названием - это исчерпывающая статья по сборке ядра, её автор, Михаил Зарипов, перевёл на русский почти все опции ядра!

Статья построена из расчёта, что человек использует make menuconfig и некоторых параметров вы в ней не найдёте, но основное в ней отражено. Качаем, читаем и следуем приведённым в ней рецептам - это 99% даст положительный результат.

Как узнать Linux версию ядрa?
Для этого в консоли от простого пользователя пишем:
uname -a
в ответ получаем что-то вроде:
Linux dot 2.6.33.1 #1 SMP PREEMPT Fri Mar 26 09:54:11 EST 2010 i686 GNU/Linux
Красным выделена версия ядра - 2.6.33.1 так что теперь можно ориентироваться в том, какая версия ядра на сайте kernel.org для вас более свежая.

Какие бывают ядра Линукс?
Вот здесь об этом здесь много и долго говорилось. Кратко: идём в архив официальной серии ядер, выпускаемых непосредственно Линусом Торвальдсом. Прежде всего, надо разобраться, что такое стабильные и нестабильные ядра (stable и development) и как они нумеруются. Пусть имеется ядро версии a.b.c.d
  • a - это основной номер версии. Меняется он раз в несколько лет, как правило, когда нестабильная серия с очень существенными изменениями становится стабильной.
  • b - это patchlevel. Именно он определяет, является ли данное ядро стабильным или нет. Если он четный - ядро стабильное, если нечетный - нестабильное. Числа a и b в виде a.b называется серией ядер.
  • с - это sublevel. Он определяет номер ядра в серии, отличия не радикальные, но существенные: появились новые драйвера, устранены ошибки, добавлены новые возможности.
  • d - это extraversion устраняются мелкие баги.
Официальные ядра в виде исходных текстов можно скачать с ftp://ftp.kernel.org. Идём туда и видим кучу ядер. Нам какое? Есть несколько соображений:
  • берём то, которое посвежее: и оборудования побольше поддерживается, и старых глюков меньше;
  • лучше всего брать ядро с последним номером в серии, то есть ядро с максимальным номером d: например, 2.6.15.7 (а дальше идут уже 2.6.16);
  • погуглить на тему проблем в ядре a.b.c.d которое вы выбрали - вдруг там что-то нужное вам временно поломали.

Какие могут быть проблемы при сборке ядра?

Проблем при сборке обычно не бывает, только если вы не намудрили с компилятором или недоустановили его. В процессе сборки проблем не так много, они обычно возникают после сборки ядра по следующим причинам:
  • вы не включили в ядро то, что очень нужно, и теперь
  1. система не загружается;
  2. пропала возможность работы с некоторым оборудованием;
  • вы включили в ядро то, что не надо (особенно с надписью EXPERIMENTAL) и теперь
  1. система работает нестабильно или очень медленно;
  2. ядро вываливается в kernel panic;
  • вы взяли нестабильное ядро и/или компилятор в бета-версии/выставили дикие флаги оптимизации
  1. вас предупреждали
На эти грабли можно и не наступать - есть несколько рекомендаций.


С чего начать?
С того, что к сборке ядра нужно подготовиться: это займёт много времени, особенно если вы это делаете в первый раз. У меня пересборка первого ядра заняла 4 часа - вдумчивое чтение статьи, поиск параметра, включение или выключение и так далее. У вас это может занять времени меньше - затем я это и пишу.
Хорошо бы взять конфиг из вашего дистрибутива - дистростроители в сборке ядер понимают, как правило, больше вас, так что не стесняйтесь. Копируем в каталог с ядром и пишем
make oldconfig
Флажки параметров ядра должны расставиться соответствующем конфигу образом, если только в вашем дистрибутиве не принято накладывать на ядро 33 заплатки. Конфиг так же можно попросить у ближайшего линуксоида - будет кого пинать и доставать своими вопросами. Если охота проявить творчество, можно попросить создать конфиг с умолчальными настройками:
make defaultconfig
Не увлекайтесь заплатками, особенно поначалу. Каждая из них добавляет возможности в ядро, но может привести к дестабилизации системы и крайне неприятным последствиям. Обзор различных интересных патчей и веток ядер Линукс дан в этой прекрасной статье.


Где лежат большие грабли
Как и всё остальное в Линукс, тексты ядра прокомментированы и можно в процессе сборки попросить помощи. В menuconfig это крайняя правая кнопка HELP. Комментарии есть практически к каждой опции, более или менее внятные, и их стоит почитать, если из статьи не ясно, что это такое.

Перво-наперво,
не включайте в ядро и не делайте модулем никаких функций, рядом с которыми написано слово
EXPERIMENTAL или DEPRECATED!
Это может вывести систему из стабильного состояния и добавить вам совершенно ненужных проблем - включайте только в том случае, если это очень необходимо и вы знаете, что делаете.

Чтобы система после перезагрузке загрузилась с новым ядром, обязательно включите поддержку следующих опций монолитно:
  • файловой системы, которую вы используете на системном диске;
  • файловых систем initramfs и cramfs в меню Device drivers --- Block devices, иначе система не сможет считать стартовый образ ядра;
  • поддержку вашего дискового контроллера в Device drivers --- ATA/ATAPI/MFM/RLL support

Чтобы не ломать голову и не думать, почему не работает что-то, имейте в виду:
  • То, что может быть будет подключаться к системе, полезно сделать модулем, то, чем будете пользоваться постоянно - лучше монолитно (об исключениях - ниже).
  • Драйвера для звуковых карт включаются модульно в меню Device drivers --- Sound --- Advanced Linux Sound Architecture --- чтобы потом их проще было конфигурировать (если для этого нет крайней необходимости, не пользуйтесь OSS).
  • Если в системе есть SATA-диски, планируется подключать флешки и писать CD или DVD-диски - не выключайте поддержку SCSI в меню Device drivers --- SCSI device support, так как очень многое в Линукс работает "как протокол поверх SCSI".
  • Если вы планируете пользоваться кардридером, обязательно включите опцию Device drivers --- SCSI device support --- Probe all LUNs on each SCSI device, иначе будете видеть только первый слот.
  • Файловые системы, которые планируется использовать редко, сделайте модулем. Обязательно включите поддержку петлевого устройства в Device drivers --- Block devices --- Loopback device support, иначе не сможете монтировать образы дисков.
  • Корневую файловую систему включайте монолитно в ядро - иначе система не сможет загрузиться.
  • Будьте внимательны, если используете ReiserFS и не включайте все флажки под ним подряд (лучше вообще никаких не ключайте): один из них (указанный здесь пустым) File systems --- Reiserfs support [ ] Enable reiserfs debug mode приводит к замедлению файловой системы и в логах постоянно будет появляться "WARNING! Using reiserfs in slow mode for debugging" или что-то в этом духе. Не включайте этот флажок!
  • В меню Block layer --- IO Schedulers отмечайте ДА на все планировщики ввода-вывода, потом можно будет на лету их менять (по ситуации).
  • Для ноутбуков я бы советовал включать шину ISA в меню Bus options, так как некоторые встроенные устройства прикрепляются именно к ней.
  • Включите поддержку вашей сетевой карты модулем в меню Device drivers --- Network device support --- Device drivers --- Ethernet (10 or 100Mbit) ---
  • Если хочется мониторинг железа, включаем всё модулями в Device drivers --- Hardware Monitoring support --- и сверяемся ещё раз с постом.
  • Не забываем включить поддержку USB и поддержку нужных флешек в Device drivers --- USB support --- USB Mass Storage support
  • Так же стоит сразу включить поддержку оперативной памяти более 1Гб отметив Processor type and features --- High Memory Support (off) --- 4Gb
Далее для сборки набираем:

от простого пользователя:
make bzImage
(собрать ядро)
make modules
(собрать модули

от пользователя root:
make modules_install
(установить модули)
make install
(установить ядро)

После того, как ядро собрано, следует создать загрузочный образ (в Дебиане это применяется). Для этого нужно выполнить либо

mkinitramfs -o /boot/initrd-вашаверсияядра вашаверсияядра
либо (для старых или специфических дистрибутивов)
mkinitrd -o /boot/initrd-вашаверсияядра вашаверсияядра
То есть например:
mkinitramfs -o /boot/initrd-2.6.20 2.6.20
После этого прописываем в загрузчике (скорее всего это будет GRUB):
title Debian Linux (2.6.20)
root (hd0,0)
kernel /vmlinuz-2.6.20 ro root=/dev/sda1
initrd /initrd-2.6.20.img

Номер системы, загружаемой по умолчанию, равен 0. Чтобы определить по умолчанию загрузку вашего нового ядра, либо поместите описывающий его раздел файла, в начало, либо измените номер системы по умолчанию на нужный вам (помните, что номера начинаются с 0) Если вы используете GRUB, после редактирования файла конфигурации вам не нужно выполнять какие-либо команды.

Вот все грабли, на которые я наступал и которые вспомнил. Уважаемые комментаторы приглашаются к конструктивной критике и дополнению вышеописанных подводных камней.

Ссылки
Собственно, они в основном приведены в теле документа, но всё-таки. О сборке ядер "по технологии Дебиан" говорится здесь. Восхитительная статья по сборке ядер 2.6 тут (а тут её обновление). Замечательный обзор того, какие ядра Линукс, кроме канонической ветки Линуса Торвальдса, есть здесь. Тут можно посмотреть ещё некоторые полезные замечания по сборке ядра.

Уважаемые комментаторы накопали ещё несколько очень полезных ссылок. Вот здесь говорится о сборке ядра для Убунты, а тут - для Дебиана на английском. Может, кому поможет.
Читать далее

Elive! или Где Debian встречает Enlightenment



17 коммент.
Часто, говоря о навороченных и красивых средах, сразу говорят о XGL/Compiz. Потом, немного подумав, добавляют KDE и GNOME. Но так редко упоминают о красивом и артистичном Enlightenment, и о его последней и самой многообещающей инкарнации - E17. О том, как посмотреть это чудо в действии, и будет рассказано в этом посте.


Elive! оживает...
Итак, посмотрим на Elive! 0.5 Revolution. При старте спросят о языке - благо их Elive! поддерживает много (тут сказываются дебиановские корни).

После этого начинается обычная загрузка с "живого" диска. После того, как система в основном загрузится, вас спросят о том, какую тему использовать: обычную или "ночную", а так же попросят указать разрешение и ввести логин с паролем (будет выведено справа). После всего этого вы попадаете в Просвещённую среду с очень интересно устроенным интерфейсом.

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

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

Множество тем позволяет превратить Е17 во всё, что угодно. Не даром это чудо называют "самый артистичный оконный менеджер". Вот, например, "ночная тема", которую можно посмотреть на живом диске Elive.

Так же имеется возможность установки на винчестер, после чего Elive превращается в обычный Debian Testing + Unstable и последней сборкой Enlightenment.


Заключение
Мне этот живой диск видится полезным в качестве наглядной демонстрации возможностей графического интерфейса Линукс, наравне с Kororaa XGL. Быть может, Elive по количеству свистулек уступает XGL и, как следствие, находится в его тени. Но это отнюдь не умаляет успехов E17 в деле развития графических интерфейсов. Скачать это чудо можно здесь.
Читать далее

SSH для простых смертных: настройка и использование SSH в Linux



57 коммент.
В сети много документов по настройке SSH для удалённого управления Linux и BSD-системах, но часто в них умалчиваются простые вещи. В этом посте я расскажу о простом использовании клиента SSH и настройке удалённого доступа.






Установка SSH в Linux на примере Debian
Итак, всё, что нам нужно для установки полного комплекта удалённого управления компьютером (SSH-клиент и SSH-сервер) давным-давно лежит в репозитории. Лёгким движением ставим пакет:
# apt-get install ssh
и ждём несколько мгновений, когда оно настроится. После этого мы получим возможность SSH доступа в систему и управления ей. Так как технология эта кросс-платформенная, то можно управлять по SSH Linux или FreeBSD можно и из Windows. Для этого есть
putty, SSH Windows клиент.

На стороне клиента
Теперь надо поправить настройки, которые лежат в каталоге /etc/ssh - конфиг для клиента называется ssh-config, конфиг для сервера, соответственно, sshd-config. На своей, клиентской, стороне, настраиваем возможность приёма X11Forward, ищем и меняем ключи на:
ForwardX11 yes
ForwardX11Trusted yes
Клиентская машина теперь может запускать удалённо графические приложения на сервере. Настройка SSH на стороне клиента закончена, теперь идём к админу далёкого сервера...
В принципе, можно на клиентской стороне ничего не менять, а логиниться на удалённую машину так:
$ ssh -X user@server1.mydomain.com
или
$ ssh -X user@192.168.x.x
если лезть в конфиги на своей стороне не хочется, но у меня это почему-то не работало...

На стороне сервера
Теперь нужно настроить SSH сервер: в конфигах машины-сервера, к которой будем подсоединяться (у вас ведь есть её рутовый пароль, так ведь?) в /etc/ssh/sshd-config ищем и меняем ключи на:
X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

Этим мы разрешаем серверу запускать удалённо графические приложения и отправлять их на клиентскую машину. Перестартуем сервис:
sudo /etc/init.d/ssh restart

Теперь мы сможем заходить на машину не только в консольном режиме, но и с запуском иксовых приложений.

Если хочется разрешить вход только с определённых машин, нужно подправить строки в конфиге /etc/ssh/sshd_config
AllowUsers hacker@*

AllowUsers *@192.168.1.*
Впрочем, это уже для более продвинутых товарищей.

SSH в действии
Всё готово, и теперь я приведу несколько команд SSH для примера. Открываем консольку и пишем в ней:
$ ssh имя_пользователя_удалённой_машины@ip_адрес_или_сетевое_имя_удалённой_машины
Например, в моём случае, когда я захожу удалённо на ноутбук, пишу ssh beast@192.168.1.5 - так как у меня не настроен сервер имён, пишу адреса. Опять-таки, доступ по SSH может быть не только из Linux или FreeBSD, но и из Windows - при помощи putty.

После этого нас могут спросить: данный айпишник ещё не опознан, как доверительный, стоит ему доверять? Пишем yes, стоит, конечно! :-) Далее вводим пароль пользователя удалённой машины, под которым мы заходим и, если он правильный, попадаем в консоль удалённой машины. В процессе набора пароля вы его не увидите - набирайте всё равно; даётся три попытки - потом соединение обрывается.

Итак, нас поприветствуют как-то вроде этого:

penta4@penta4rce:~$ ssh beast@192.168.1.5
Password:
Linux notebeast 2.6.15.7 #3 PREEMPT Sun Jul 2 12:51:07 MSD 2006 i686 GNU/Linux
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

Last login: Tue Oct 10 19:23:57 2006 from 192.168.1.1
beast@notebeast:~$

Теперь, в окошке терминала, который на нашей машине, мы рулим компьютером, к которому мы подключились. Не перепутайте терминалы, а то вырубите не тот компьютер :-) Здесь всё просто и логично, но нам бы хотелось ещё и запускать графические приложения на удалённой системе. Легко!

Запуск графических приложений удалённо
Вводим, как обычно, логин и пароль удалённой машины. И вот перед нами та же самая консоль. Как вызвать графическое приложение? Просто наберите имя вызываемой программы и поставьте после имени знак амперсанд:
$ gimp &;
Это запустит на удалённой машине GiMP в фоне и вернёт вам консоль для дальнейших действий. Если вы не поставите амперсанд после имени приложения, то управление в консоль будет возвращено только после завершения приложения.

На приведённом скриншоте: слева gimp, запущенный на "родной" машине, справа - на удалённой. Кнопочки чуть разные из-за того, что на удалённой машине другие настройки gimp. В остальном - как родной.

Итак, у вас запустится графическое приложение точно так же, как если бы оно работало у вас. Есть одно но: это приложение будет работать на вашем экране, но с документами и настройками удалённой машины. Если файл для обработки находится в вашем домашнем каталоге, то его нужно будет передать на удалённую машину. Оно (и другие приложения, которые вы запустите) будет работать ровно до того момента, пока открыто ssh-соедиение. Туда же, в консольку ssh-соединения, будут выдаваться служебные сообщения запускаемых вами приложений.


Заключение
Ну вот, как выясняется, удалённое соединение и работа по SSH может быть полезна и простым смертным, а не только бородатым админам. Очень удобно, например, быстренько влезть на компьютер коллеги и помочь ему в чём-то (прочитать логи, например), тихо и незаметно поставить софт, или просто загрузить чем-то полезным простаивающую машину. В общем, много применений.

Так как пост делался с упором на простого пользователя, тут не рассматривается шифрованное копирование файлов и прочие тонкости. Они есть на русском в виде краткого описания настройки SSH, а ещё очень подробная статья с nixp. Хорошая справка (правда, на английском) здесь и тут. Думаю, что этого хватит.
Читать далее