Ubuntu vs openSUSE. Личные впечатления.

По просьбе общественности делюсь своими впечатлениями об использовании дистрибутивов Ubuntu и openSUSE. Для начала обращаю внимание на то, что моё мнение является лишь личным мнением и ни в коем случае не претендует на полноту и ясность. Я рассуждаю, исходя из собственных потребностей, которые могут не совпадать с Вашими потребностями. Читать далее «Ubuntu vs openSUSE. Личные впечатления.»

MSI Wind + Ubuntu 8.04 + WiFi

С тех пор как осенью 2008 у меня появился MSI Wind я установил на него самый свежий из стабильных релизов на тот момент (Ubuntu 8.04 «Hardy Heron»), я больше не обновлял ОС. Я установил запрет на обновление ядра, но при этом исправно устанавливал обновления безопасности и обновления программ и библиотек. Недавно WiFi начала себя как-то странно вести — то отключтся сам по себе, то говорит что сети нет, но последней каплей стало сообщение об отсутствии возможности провести сканирование доступных WiFi сетей выданное после выполнения команды

sudo iwlist scan

Я решил обновить ядро, а вместе с ним и драйвер, так как грешил именно на него.

Обновление ядра до версии 2.6.24-23 прошло легко и непринуждённо, а вот с установкой драйверов возникли некоторые затруднения.
Попытка установки бинарного пакета, взятого с форума MSI Wind, по непонятной мне причине, успехом не увенчалась.
Тогда я решил самостоятельно собрать драйвера из исходных кодов. Драйвера версии 0.4 были взяты с сайта Google Code.
Следуя инструкции в файле readme из архива я установил драйвер и поддержку WPA/WPA2 PSK (установив дополнительный пакет libssl-dev). WiFi заработал. НО! После перезагрузки компьютера драйвера автоматом не подхватываются (Свяжитесь с вашим системным администратором для решения следующей проблемы: Ошибка SIOCGIFFLAGS: No such device)! В результате я написал маленькй скриптик, который это исправляет. Прежде чем его запускать сначала прочитайте его и исправте путь к папке с драйверами.

Очень жду выхода Ubuntu 9.04 «Jaunty Jackolope», так как говорят что в нём всё работает из коробки.

Это страшное слово – «виртуализация». Часть третья, заключительная. У страха глаза велики.

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

Итак, с чего же я начну… Став счастливым обладателем еще 4Гбайт оперативной памяти, 2-х терабайтников от WD и пары вентиляторов, я пришел к мысли, что надо не просто поставить все это в сервер, но и заодно воспроизвести ситуацию с переустановкой системы.
Для начала напомню и дополню свою конфигурацию сервера:

— процессор AMD Phenom X4 9550 SocketAM2+ (2.20GHz, 4Mb, 1800MHz) (я сторонник AMD, так уж вышло);
— плата MB ASUS sAM2+ M3A78 AMD 770 DDR2 ATX (выбирал по доступности и с наличием RAID, что в итоге оказалось не совсем корректным, читайте в первой части);
— оперативная память 8Гбайт (всего четыре планки по 2Гб, максимум для материнки);
— жесткие диски, 4 по 1Тб (объединены по два в RAID-1, один на более отказоустойчивых для активной работы, второй на попроще дисках для малоиспользуемых файлов относительно первого);
— операционная система Debian Lenny x86_64.

Перед тем, как переустанавливать, я естественно сохранил настроечные документы. И вы не забудьте тоже их сохранить, дабы заново не изобретать велосипед.
Что же изменилось, помимо добавления в аппаратной начинке? А изменению у меня подвергнутся виртуальные настройки. Я заранее распределю на разные сетевые карты виртуалки по признаку активности с внешним миром, повесив на отдельную сетевую карту внешние. Описывать там особо нечего, кроме того, что для этого я создал два бриджа, вместо одного и при настройке виртуальной машины прописывал нужный бридж. Плюс ко всему я перетаскиваю rtorrent с виртуальной на хостовую машину, т.к. столкнулся с неприятными особенностями работы nfs при большом кол-ве открытых файлов. Количественно это может и не много, около 200 одновременно открытых файлов, но от этого начинались жуткие тормоза раздачи, что меня не устраивало.
Как установить чистую систему, не потеряв нужных данных, вы и без меня знаете наверняка. Остановлюсь на важных и болезненных моментах, по моему мнению:

— виртуальные машины воспроизвелись без проблем, путем простого наката папки /etc/libvirt из бекапа (изменения вступили в силу после перезагрузки, единственное что поправил — это пути до образов жестких дисков и названия бридж-интерфейсов);
— при настройке второго рейда не торопитесь его использовать, лучше дождитесь окончательной синхронизации (хотя пользоваться им можно и сразу, но из-за фоновой синхронизации будут ощутимые потери в производительности).

Хм… что-то мало болезненных моментов, не правда ли? Ну так не забываем, что перед нами операционная система Linux, которая гораздо гибче и стабильнее Windows, так что сомнений быть больше у Вас не должно. В остальном никаких проблем не возникло, так что смело можете при необходимости переставлять систему, не боясь потерь.
Напоследок несколько фото, как выглядит в живую и со стороны ПО мой сервер (за качество не ругайте, снято на коммуникаторе):





Это страшное слово – «виртуализация». Часть вторая. Не повторяйте чужих ошибок.

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

1. Если предполагаете использовать серверы раздельно для сети и для интернета, лучше сразу запланировать/приобрести/настроить минимум две сетевые карты. Во-первых, работать будет шустрее. После разделения на две сетевые карты скорость по внутренней сети стала около 10Мбайт/с, тогда как в случае единственной сетевой карты скорость скакала от 2 до 6Мбайт/с. Во-вторых, как выяснилось, на уже настроенной на один интерфейс виртуальной машине при смене активного интерфейса начинаются непонятные явления, потери пингов и т.п. (Windows Server вообще потерял сеть, например, а rtorrent просто зависал).
2. Разделяйте на разные физические разделы данные, используемые с ощутимо разной интенсивностью. Т.е. если вы планируете раздавать файлы по пиринговой сети, ftp и локальной сети, то лучше сохранять эти файлы на отдельном разделе, по минимуму смешивая с теми, которые используются другими виртуальными машинами. Благо современные средства монтирования файловых систем позволяют в одну папку монтировать одновременно несколько физических разделов.
3. Если вы используете в качестве гостевой системы Linux, то по возможности приближайте ее к варианту, который стоит на хосте. Т.е. в моем случае это Debian Lenny. Сервер LAMP+FTP+Ubuntu работал относительно нестабильно в плане сетевой активности, в отличие от связки LAMP+FTP+Debian…
4. Если планируется очень большая активность файловых операций (типа раздача более 100 торрентов одновременно), то советую в этом случае отказаться от использования виртуальной машины и настроить сервер непосредственно на хосте. Это позволит избежать значительных потерь в производительности (к примеру хешироваться файл для торрент-раздачи на хосте будет раз в 10 быстрее, чем в виртуальной машине через nfs).

Ubuntu. Играем музыку с меньшим потреблением памяти.

Бродя по интернету, обнаружил такую статью.
Я всегда стремлюсь оптимально подходить к инструменту, с которым работаю. Т.е. стараюсь выбрать тот, которые делает свои задачи максимально просто, быстро и потребляет при этом по возможности меньше. Музыку я слушаю очень просто — открываю всю свою медиатеку, ставлю перемешивание (SHUFFLE) и при необходимости нажимаю следующую песню (NEXT). Никаких особенных плейлистов и т.п.

Именно поэтому я заинтересовал этим плеером. Почитав о нем, посмотрел по ссылкам… Хотел уже было подключать репозиторий. И тут оказалось, что MOC уже есть в стандартном репозитории. Т.е. ничего дополнительного и не надо.
Достаточно набрать такие строки:

sudo aptitude install moc moc-ffmpeg-plugin

Запускается теперь очень просто — в терминале набираем

mocp

и наслаждаемся двухпанельным интерфейсом.
В подробностях рассказывать как управлять не стану, там есть встроенная справка, при нажатии символа «?» она появится. Вот так выглядить удобный для меня вариант:Мой текущий MOC

Сделать Ubuntu красивым. Контратака на Windows и MacOS X.

Являясь ярым поклонником продуктов Open Source, в том числе и Linux, не мог не пройти мимо темы, обсуждаемой при переходе на Linux. В моем посте речь пойдет про графическое оформление и шрифты. Пожалуй не стану перечислять все посты, которые сподвигли меня на сочинение данной статьи, а перейду сразу к делу.
Моё описание актуально в первую очередь для Ubuntu Hardy 8.04, с графическим окружением GNOME, разрешения экрана 1280х800 (экран широкоформатный, это важно). Большая часть будет актуальна и для других вариантов. Хотя могу сразу сказать, что полностью воспроизвести мой способ на 64-битном дистрибутиве Ubuntu 8.10 мне не удалось.
Перепробовав несколько вариантов оформления и использования различных шрифтов, подобрал наиболее оптимальный для себя способ, представленный на рисунке:
Общий вид моего рабочего стола Ubuntu
Как же его сделать?

А вот делать то ничего особенного и не надо, как выяснилось.
1. Устанавливаем и обновляем до актуального состояния операционную систему Ubuntu(я предпочитаю Ubuntu Hardy 8.04.2). Не забываем поставить драйвера для видеокарты с поддержкой ускорения при необходимости.
2. Мне нравится стилизация под MacOS, поэтому я ставлю тему рабочего стола, основанную на Brushed. Найти подобные темы можно тут. Я лично выбрал такую. Кстати, желательно там зарегестрироватся, иначе некоторые темы не дает скачать полностью. Итак, скачиваете тему, и устанавливаете ее в систему. Заходим Система — Параметры — Внешний вид, открываем закладку Тема, жмем кнопку Установить…, выбираем наш скаченный архив с темой и… все готово.
3. Я предпочитаю отключать Compiz, т.к. его спецэффекты мне не нужны. Заходим Система — Параметры — Внешний вид, открываем закладку Визуальные эффекты и ставим галку Без эффектов. Должно быть что-то вроде:
Отключаем эффекты Compiz в GNOME
4. Теперь настроим шрифты. Заходим в настройки Система — Параметры — Внешний вид, открываем закладку Шрифты и выставляем все параметры по картинке, наблюдая в реальном времени, к чему приводят Ваши действия:
Делаем красивый шрифт в GNOME
если у вас экран широкоформатный, то желательно увеличить разрешения шрифта, жмем кнопку Подробнее… и ставим нужную цифру в поле. в сети встречается расчет нужного значения, я же подбирал методом тыка, который, как известно, еще никто не отменял:
Выравниваем шрифт в GNOME

И теперь Вы можете со спокойной совестью хвастатся вашим красивым рабочим столом, не уступающим, ИМХО, по четкости ни Windows Explorer, ни MacOS X.
Пара ньюансов:
— Отключать Compiz не обязательно, при использовании темы Brushed это ни на что не влияет;
— Есть темы, которые не только просто стилизуют рабочий стол под MacOS, но и воспроизводят почти досконально ее оформление и поведение… Но я бы это делать не советовал, т.к. испробованная одна такая тема работала весьма криво и нестабильно, к тому же пришлось включать Compiz.

Это страшное слово – «виртуализация». Мое решение на базе KVM.

Заметка пригодится всем, кому интересно использовать виртуализацию в своей работе. Мое решение вполне может претендовать на промышленное применение и пригодится тем, кто захочет сократить расходы на аппаратную часть при необходимости иметь в наличии разветвленную сетевую инфраструктуру. На подобном варианте базируется некоторые решения от IBM, к примеру. Но эти решения далеко не бюджетные и востребованы лишь в исключительных случаях.
Итак, однажды мне понадобилось в домашних условиях воспроизвести разветвленную сетевую инфраструктуру, состоящую из различных программных платформ. Путь начинался от VMWare Workstation и завершился KVM… Почему именно KVM и как все было, читайте ниже.

1. Немного истории или с чего все началось.
Работая в банке, я вживую столкнулся с виртуализацией. Это была операционная система AIX от IBM, работающая на майнфреймах. С самого начала меня поразила мощь и гибкость подобного подхода. И когда мне понадобилось воспроизвести в тестовых целях дома разветвленную программную инфраструктуру, то сразу базировал все это на принципах виртуализации. Это позволило избежать как значительных затрат на аппаратную часть, так и уместить все весьма компактно в плане пространства.
Для читателя следует учесть, что на самом деле инструментов виртуализации великое множество. Каждый из них имеет свои тонкости и нюансы. Я же ставлю цель рассказать об одном варианте, с которыми работаю лично, описывая по возможности недостатки и особенности остальных.
2. Мой выбор называется KVM (или Kernel-based Virtual Machine).
Подробнее об этом варианте можно почитать тут.
Но лучше все по порядку излагать. Начну с условий отбора и какие из известных мне вариантов этим условиям неудовлетворяют:
— основная система должна быть бюджетной и мощной.

В аппаратном плане я выбрал вариант AMD Phenom X4 9550 / Asus M3A78 / 2x2Gb DDR-II / 1x160Gb IDE + 2x1Tb SATA-II. Видео здесь совершенно не приципиально, кроме того, что в случае встроенной придется учитывать, что она под себя забирает часть оперативной памяти, соответственно для виртуальных машин ее останется меньше. Скажу сразу — выбор материнки с встроенным RAID-контроллером был не совсем корректным. Как выяснилось, RAID этот работает только в программном режиме, т.е. нужны драйвера для Windows систем, ну а в Linux такого же эффекта можно было достичь гораздо проще, используя стандартные средства.
Использование программной платформы для основной системы было однозначно в пользу GNU/Linux, т.к. позволяло получить среду виртуализации без лишних затрат на лицензирование, а также более облегченную в плане нагрузки (вот никогда я не пойму, почему в Windows Server без графики ничего нельзя поставить и сделать…. бессмысленная нагрузка, ИМХО). Изначально планировалось использовать вариант Ubuntu Server Hardy LTS, но почти сразу была произведена миграция на Debian Lenny (он к тому времени как раз вышел).Ни в коем случае не принижаю достоинства Ubuntu, но субьективно Debian стабильнее и быстрее работает.

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

От выбора разбегаются глаза, но после изучения отзывов в интернете и попыток использования сложилось субьективное мнение.
Продукты VMWare не подходят. Workstation платная, ESXi не удалось поставить на мою систему из-за неподдерживаемого чипсета (он у меня оказался более современным). Неплохим выбором был бы VMWare Server, но судя по отзывав она тяжеловата и периодически падает, сам я не стал пробовать после неудачи с ESXi. Не подошли они еще по одной причине — компания все таки продает свои продукты и только часть из них доступна в свободном доступе.
VirtualBox оказался весьма удачным вариантом. Существует в двух вариантах — OSE и Freeware. В открытом доступе исходников Freeware-версии нет, зато компенсируется это функциональностью. Из известных мне различий — это отсутствие в OSE версии поддержки USB, ограничения при работе с сетью, неподдерживается графическая акселерация (кстати, дающая весьма приличный прирост скорости работы виртуальной машины). VirtualBox идеально подходит для простейшей реализации, т.к. позволяет быстро получить работоспособную виртуальную машину без лишних телодвижений и внимательного изучения руководства. Приятной особенностью оказалась поддержка работы из консоли, что позволяет не использовать графических надстроек и соответственно снимается дополнительная нагрузка на хост-машину. Для начинающих «домашних виртуализаторов» я бы посоветовал именно такой вариант. Лично я до сих пор его использую на личном ноутбуке для быстрого поднимания тестовой среды, а также для работы в Windows (там уже давно и стабильно обосновалась Ubuntu в качестве основной системы). По субьективным ощущениям работает VirtualBox гораздо шустрее VMWare Workstation, занимает меньше места как на диске, так и в памяти. Для каждой машины выделяется отдельное окно, а также при установленных драйвера в гостевой системе (есть «из коробки») есть возможность интегрировать в рабочий стол хоста, что очень удобно и позволяет разнести задачи на разные виртуальные столы.
QEMU — очень мощная штука. Но когда вспомнил про нее, уже обратил внимание на виртуализацию на базе ядра и информацию про Xen и KVM, потому близко знакомится с чистым QEMU не стал.
Xen — идеальная система для виртуализации. Но имеет весьма существенный недостаток — гостевая система должна быть заранее подготовленна.
KVM, базируется на QEMU, по скорости почти не уступает Xen, зато обладает более гибкой функциональностью, всей мощью настроек QEMU (хотя основная часть необходимых мне была и в VirtualBOX). Оба варианта, Xen и KVM реализованы во всех современных дистрибутивах и для использования не надо прилагать серьезных усилий. Но есть между ними принципиальное отличие, о котором пойдет речь дальше.

— необходимо иметь возможность воспроизвести на виртуальных машинах различные программные платформы.

Несмотря на доступность в этом плане продуктов VMWare и VirtualBOX, от их использования я отказался еще ранее, так что рассматривать не буду… А вот применительно к Xen и KVM опишу чуток подробнее, т.к. сам искал информацию весьма долго.
Xen не позволяет запускать системы отличные от хостовой!!!, а точнее не подготовленные заранее для работы в виртуальной среде. И к сожалению (а может к счастью), подобной обработке не поддаются дистрибутивы Windows. Что меня не устраивало, потому в итоге выбор пал на варианте использования KVM, для которого заранее подготавливать гостевую систему не надо.

Итак причины выбора KVM кратко:

1. Реализация доступна из коробки в любом большом дистрибутиве;
2. Реализовано на базе ядра Linux, соответственно обладает большой скоростью;
3. Используется такими гигантами, как RedHat и Ubuntu, что говорит о высокой стабильности и гибкости;
4. Не требуется дополнительных махинаций с гостевой системой для установки в виртуальную машину.

3. Как я сделал это на Debian.
Дальше пойдет больше техническое описание, описывающее по шагам, как я сделал свой сервер, свободно тянущий с десяток виртуальных серверов.
Несмотря на то, что мой любимый дистрибутив Ubuntu, в итоге под базовую системы был выбран Debian. В рамках статьи объяснять тонкостей не буду, что да как, но на десктопе я все также предпочитаю использовать Ubuntu. Большинство инструкций для Ubuntu и Debian актуальны для обоих вариантов, потому при настройке я использовал и это и то и другое.
Итак, начнем ставить сервер.
Берем дистрибутив Debian. Чтобы не качать лишнего потом и сразу получить свежую систему, я брал вариант netinstall, при помощи которого устанавливал только вариант «Стандартная система», большего нам и не надо. Кстати, я использую 64-битный выпуск, чтобы получить поддержку большего количества оперативной памяти (>3Гб) без обходных путей и выкрутасов (к примеру, 32-битное серверное ядро дистрибутива Ubuntu поддерживает больше, чем 3Гб, но только при наличии такой возможности в чипсете).
Я использую под системные разделы («/», «/home», swap) жесткий диск IDE, дабы не иметь проблем при работе системы при установке на RAID-массив (а они есть). При установке сразу создаю RAID-1 на основе двух жестких дисков SATA для достижения большей сохранности данных (основная информация будет храниться на нем). В дальнейшем для работы с софтовым RAID-массивом следует использовать утилиту mdadm.
Свежеустановленную систему я немного ретуширую. Для начала устанавливаю ssh, чтобы можно было сразу засунуть системник подальше и отключить от него уже ненужный монитор:sudo apt-get install sshМногие советуют переключить порт с стандартного 22 на другой. Но это следует делать только в том случае, если вы уверены в своих действиях и ваш сервер подключен напрямую к интернету. Кстати, следует упомянуть, что если будет использоватся нестандартный порт, то потом возникнут сложности с удаленным управлением KVM-виртуализацией. Поэтому я оставил стандартный порт, но через аппаратный маршрутизатор сделал переброску на нестандартный, доступный снаружи.

Затем включаем синхронизацию времени через интернет (настоятельно советую, пригодится).
sudo apt-get install ntp ntpdate
Для контроля температуры чипсетов, процессора и жестких дисков:
sudo apt-get install lm-sensors hddtemp
Утилита hddtemp работает сразу, для настройки lm-sensors запускаем после установки:sudo sensors-detectотвечаем на все вопросы утвердительно.
Использовать очень просто:
— узнать температуру процессора, чипсета и других характеристик sudo sensors получаем что-то вроде:

it8712-isa-0290
Adapter: ISA adapter
VCore 1: +1.33 V (min = +3.54 V, max = +3.30 V) ALARM
VCore 2: +3.76 V (min = +1.39 V, max = +1.01 V) ALARM
+3.3V: +3.28 V (min = +4.00 V, max = +0.91 V) ALARM
+5V: +6.69 V (min = +3.04 V, max = +6.10 V) ALARM
+12V: +12.67 V (min = +15.23 V, max = +5.57 V) ALARM
-12V: -15.33 V (min = -0.85 V, max = -12.39 V) ALARM
-5V: +2.85 V (min = +3.06 V, max = +3.47 V) ALARM
Stdby: +5.99 V (min = +0.11 V, max = +6.37 V)
VBat: +3.31 V
fan1: 2922 RPM (min = 3260 RPM, div = 2)
fan2: 0 RPM (min = 5400 RPM, div = 2) ALARM
fan3: 0 RPM (min = 2732 RPM, div = 2) ALARM
M/B Temp: +44.0°C (low = -73.0°C, high = -49.0°C) sensor = transistor
CPU Temp: +32.0°C (low = -65.0°C, high = -9.0°C) sensor = transistor
Temp3: +128.0°C (low = +23.0°C, high = -66.0°C) sensor = disabled
cpu0_vid: +0.000 V

— узнать температуру 1 жесткого диска SATA — sudo hddtemp /dev/sda получаем что-то вроде:

/dev/sda: WDC WD1001FALS-00J7B0: 33°C

Для дальнейшей работы рекомендую обзавестись сторонним DHCP-сервером и на нашем сервере виртуализации настроить bridge-интерфейс.
Установим нужные утилиты: sudo apt-get install bridge-utils
Я использую в качестве DHCP-сервера свой роутер, а bridge-интерфейс создавал по инструкции. По той же инструкции рассказано, как сделать, чтобы виртуальная машина в KVM создавалась по умолчанию с использованием этого способа подключения. Для ускорения перезагрузки (совершенно не критичная ситуация, если сервер будет включен круглосуточно) советую заранее указать статический адрес на интерфейс даже при условии доступности DHCP.

И самое вкусное, устанавливаем KVM модули и полезные утилиты. Сразу добавим текущего пользователя в соответствующую группу для доступности использования KVM. Описание использования утилит можно найти по уже указанным руководствам.sudo aptitude install kvm libvirt-bin virtinst virt-top python-virtinst
sudo adduser softovick libvirt
Фактически сразу можно использовать. Описывать все команды смысла не вижу, для этого есть man. Но покажу, как я создаю виртуальную машину:
для Linux virt-install -n linux -r 512 -f linux.img -s 15 -c образ.iso --accelerate --vnc --vncport=5900 --noautoconsole --os-type=linux --os-variant=generic26
для Windows virt-install -n windows -r 512 -f windows.img -s 15 -c образ.iso --accelerate --vnc --vncport=5901 --noautoconsole --os-type=windows --os-variant=win2k3 --noacpiПосле этого дальнейший ход установки и экран гостевой машины можно контролировать, подключившись при помощи VNC-клиента к серверу по порту 5900 и 5901(рекомендую для каждой машины заранее определять порт VNC, чтобы было удобно подключаться). Есть еще несколько полезных опций, я их не использую лишь потому, что не столкнулся с их необходимостью.

И еще один штрих, но не последний. Как подключить к гостевой системе возможность что-то писать напрямую на физический раздел или папку на рейде, я пока не понял, хотя и старался. Поэтому в случае Linux я подключаюсь к данным на сервере при помощи nfs, а в случае Windows — при помощи Samba. Настройка Samba достаточно тривиальна, устанавливаем sudo aptitude install samba и правим конфигурационный файл /etc/samba/smb.conf под свои задачи. А вот установка и настройка nfs не совсем тривиальна. Я использую такой вариант установки, позволяющий подключаться к нужным папкам с любого ip-адреса локальной сети (вида 192.168.10.*):sudo aptitude install nfs-kernel-server portmap
perl -pi -e 's/^OPTIONS/#OPTIONS/' /etc/default/portmap
echo "portmap: 192.168.10." >> /etc/hosts.allow
/etc/init.d/portmap restart
echo "/media/raid 192.168.10.0/255.255.255.0(rw,no_root_squash,subtree_check)" >> /etc/exports
/etc/init.d/nfs-kernel-server reload
После приведенных действий достаточно на гостевой системе сделать так:
sudo mount сервер:/media/raid локальная_папка
При необходимости можно включить автоматическое монтирование при загрузке, поправив конфигурационный файл /etc/fstab, добавив туда строку типа:
virtual:/media/raid /media/raid nfs defaults 0 2
Ну вот, в целом настройка нашего сервера виртуализации завершена. Управлять им можно как в консоли, так и при помощи графических инструментов virsh или virtual manager.

P.S.:
Некоторые полезные советы:
1. Если вы указали конкретный порт VNC для гостевой машины, то через Virtual Manager вы не сможете автоматически запустить графическую консоль.
2. Virtual Manager не сможет подключиться, если у вас переопределен порт ssh. Точнее для этого придется долго и нудно разбираться.
3. Обязательно используйте для гостевой Windows Server режим —noacpi, чтобы она нормально установилась.
4. Аккуратно настраивайте режим сбережения энергии на гостевых системах, ни в коем случае не отключайте экран, иначе не сможете потом подключится по VNC.
5. Если вы хотите удаленно выключать и перезагружать машины через Virtual Manager, то отключайте хранитель экрана, т.к. он блокирует управление питанием.

Запрет обновления ядра Linux

На MSI Wind установлен WiFi модуль от Realtek. И к сожалению к нему до сих пор нет нормальных драйверов, поэтому при обновлении ядра приходится заново собирать для него драйвера из исходных кодов. Как это избежать? Очень просто — заблокируйте обновление ядра.

Откройте Synaptic [Система — Администрирование — Менеджер пакетов Synaptic]. И заблокируйте версии для следующих пакетов:

linux-generic
linux-libc-dev
linux-restricted-modules-common
linux-restricted-modules-generic

Для этого выделите нужный пакет и выберите пункт меню [Пакет — Заблокировать версию]:
Заблокировать обновление ядра Linux // Synaptic

Теперь при проверке обновлений через Менеджера Обновлений на его заявление о том что Не все обновления возможно установить отвечайте кнопкой Закрыть и после этого можно щёлкнуть на кнопку Установить обновления.

Всё. У меня так система работает с октября 2008 года.

Поиск WiFi сети

На MSI Wind есть возможность отключения адаптера WiFi для того чтобы минимизировать расход энергии. Это бывает полезно когда пользуешься этим устройством в местах где нет WiFi сетей и где не получилось подключиться к сети электропитания. Но когда возвращаешься домой, где есть WIFi, то после загрузки Ubuntu 8.04.1 и включения WiFi адаптера сеть автоматически не находится. Раньше чтобы сеть нашлась я перезагружал компьютер, но это путь мне никогда не нравился. В результате после изучения базовых WiFi утилит я разобрался как найти сеть без перезапуска компьютера.


sudo iwlist scan
sudo ifdown -a
sudo ifup -a

В первой строке сканируются доступные WiFi сети.
Вторая строка выключает все сетевые интерфейсы. Лучше выключить именно все, так как у кого-то WiFi находится на интерфейсе wlan0, а у кого-то на ath0. Если вы точно знаете, то можно использовать sudo ifdown .
Третья строка вновь поднимает все интерфейсы, но уже вместе с WiFi.

Обновление от 01 февраля 2009 в 09:15
При написании заметки я ошибся в порядке команд. Теперь исправил. При выполнении сканирования WiFi интерфейс должен быть поднят, иначе никакого сканирования не произойдёт!

Домашний сервер

После переноса всего рабочего процесс на MSI Wind у меня остался компьютер, который начал простаивать. Так как компьютер полностью рабочий, то меня это несколько расстраивало. После некоторых раздумий и прикидок я решил сделать этот компьютер домашним сервером. Итак, что на нём должно работать?

  • WEB сервер, то есть LAMP с phpMyAdmin, для хранения моих небольших проектов во время проектирования и создания, а также для изучения открытых систем и системного администрирования;
  • SVN для контроля версий систем моих небольших проектов;
  • Trac для управления моими небольшими проектами;
  • Torrent клиент, то есть rTorrent, для поддержания лозунга — «Искусство должно принадлежать народу».

Сейчас я настроил только LAMP, SVN и Trac. И дальше пойдёт некоторое повествование как это сделать. С rTorrent есть несколько затруднений, поэтому о нём я напишу чуть позже.

Установить LAMP, имея диск Ubuntu Server 8.04.1, не составляет никакого труда. Поэтому заострять на этом внимания я не буду. Тем более в Сети уже полно руководств по настройке сервера под контролем Ubuntu. Как на английском с картинками, так и на русском, но без картинок.

Установку SVN и Trac я выполнял по инструкции. Проблем никаких не возникло.

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

sudo nano /etc/apache2/sites-available/default

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

# Эта строчка говорит о том что на сервере будет несколько сайтов
NameVirtualHost 10.5.5.11:80
# Конфигурируем первый хост. Набор данных взят из файла по-умолчанию.
<VirtualHost 10.5.5.11:80>
ServerAdmin webmaster@localhost
ServerName project1
DocumentRoot /home/serg/www/

<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>

<Directory «/home/serg/www»>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined
ServerSignature On

Alias /doc/ «/usr/share/doc/»
<Directory «/usr/share/doc/»>
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>

# Конфигурируем второй хост. Используем только то, что нужно
<VirtualHost 10.5.5.11:80>
ServerName project2
DocumentRoot /home/serg/www2
<Directory «/home/serg/www2»>
Options -Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
</VirtualHost>

Где:
10.5.5.11 — IP адрес компьютера в локальной сети

Теперь нужно упросить Apache прочитать новые настройки. Благо он не девушка, поэтому это сделать совсем не сложно:

sudo /etc/init.d/apache2 force-reload

На компьютере с которого будет производиться обращение к серверу нужно сделать следующее: перейти в меню Система — Администрирование — Сеть. Разблокировать окно для редактирования. Перейти на вкладку Узлы и добавить параметры:
IP-адрес: 10.5.5.11 (это адрес сервера в моей сети, у вас скорее всего будет другой)
Псевдонимы: project1 project2 (здесь нужно указывать то, что было написано в директивах ServerName у каждого VirtualHost):
Свойства псевдонимов узла // meAndUbuntu.blogspot.com
В результате получим что-то типа:
Сетевые параметры // meAndUbuntu.blogspot.com

Теперь, при включённом домашнем сервере, я могу набрать в строке браузера http://project2 и посмотреть как работает проект после последних изменений.

Материалы распространяются под лицензией Creative Commons: Атрибуция — Некоммерческое использование — С сохранением условий (Attribution-NonCommercial-ShareAlike) 3.0 Unported.
Рейтинг@Mail.ru