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

iStat - Удалённый мониторинг системы для iPhone

iStat - утилита для iPhone, iPodTouch позволяющая удалённо просматривать статистику, собираемую демоном istatd. На деле выглядит так:


Демон istatd запускается на Solaris, FreeBSD, Linux или MacOS и собирает статистику.
На данный момент возможен мониторинг следующих параметров:

  • аптайм.
  • загрузка системы.
  • загрузка процессора.
  • статистика загрузки памяти.
  • объем свопа.
  • загрузка дисков.
  • статистика сети (пока только одного интерфейса).
Istatd "отдает" статистику в удобном xml формате. А утилита iStat просто удалённо получает все данные и визуализирует их.

Попробуем?!
  • Качаем istatd.
  • configure, make, make install
  • редактируем istat.conf
  • запускаем
Теперь istatd слушает указанный в конфиге порт, и готов отдавать статистику.


Можно попробовать и консольного клиента:
Скачиваем простой код клинта для istatd.
Собираем:
gcc -o istatd_client istatd_client.c -lsocket -lnsl
Запускаем:
/istatd_client XX.XXX.XX.X 5109 12345

Istatd на данный мент явно не готов для "боевых" условий - нет шифрования, и слишком мало статистики, которую и так легко получить в консоли.  

Данный пост подготовлен на основе статьи Александра Еремина о iStat.

Кладем логи Zyxel в удаленный syslog

Есть ADSL модем Zyxel P660H-T1, он может отсылать свои логи на удалённый хост, поддерживающий syslog.
Так же, в той же сети, есть Unix хост, который может принимать сообщения syslog от других хостов или устройств.
Теперь настроим всё это дело.
В модеме выбираем пункт Logs – Log Settings (делаем это в Web-конфигураторе)
В разделе Unix Syslog задаем Syslog IP Address – это и есть адрес удалённого хоста, так же выбираем Log Facility – категория. Можно выбрать от Local1 до Local7, зависит от того используете ли вы уже эти категории на Unix хосте. Я использую Local1. И ставим галочку Active. С модемом всё.

Теперь на Unix хосте редактируем /etc/syslog.conf. Добавляем правило:

local1.debug /var/log/zyxel.log

/var/log/zyxel.log - это и будет лог файлом для модема
Мне, например, очень не понравилось что логи от модема стали попадать в консоль и другие категории. Для отключения этого надо добавить правило к нужным категориям в виде local1.none:

*.alert;kern.err;daemon.err;local1.none operator
*.alert;local1.none root
*.emerg;local1.none *

Перезапускаем syslog.

Если у Вас нет в сети Unix машин, то можно настроить службу syslog и под Windows. В Интернете большой выбор таких программ. Я, например, использую Kiwi Syslog Server. Не буду на этом заострять внимание, там всё и так интуитивно понятно.

С помощью syslog можно создать централизованно хранилище логов для многих сетевых устройств и Unix / Linux серверов.

Работаем с ISO образами дисков в Solaris, lofiadm, mkisofs

Постоянно натыкаюсь на статьи как монтировать ISO образы в Solaris. Сам же монтирую образы пару раз в год. Для LiveUpdate или если что-нибудь устанавливаю с компаньона.
Что-бы каждый раз не вспоминать, напишу и у себя, как монтировать ISO образы дисков в Solaris.

Например, есть iso образ - /export/images/disk.iso

Чтобы его смонтировать необходимо создать виртуальное устройство:

#lofiadm -a /export/images/disk.iso /dev/lofi/1

Теперь монтируем:

#mount -F hsfs -o ro /dev/lofi/1 /cdrom

Без параметров утилита lofiadm покажет список таких виртуальных устройств:

#lofiadm
Block Device File
/dev/lofi/1 /export/images/disk.iso

После окончания работы с устройством его можно отмонтировать:

#umount /cdrom

Удаляем виртуальное устройство:

#lofiadm -d /export/images/disk.iso



А теперь, наоборот создаём ISO образ из существующего диска. Можно с помощью команды cat:

#cat /vol/dev/dsk/c0t1d0/disk_name > /export/images/image.iso

А можно и с помощью специальной утилиты mkisofs:

#mkisofs -r -o /export/images/image.iso /cdrom/disk_name

При условии что диск смонтирован в /cdrom. Solaris, если включено автоматическое монтирование дисков - automount, смонтирует диск именно туда.
Первый вариант намного проще, но зато утилита mkisofs предоставляет исчерпывающие возможности работы с дисками и образами.

Syslog в Solaris

Syslog в Solaris не отличается от реализаций в других системах Unix, но есть некоторые особенности.
Ввиду использования M4 для парсинга syslogd.conf, в случае наличия хотя бы одного пробела в конфигурационном файле журналирование тихо и полностью отключится. То есть все до единого разделители в syslogd.conf должны быть табуляциями. В противном случае возникает трудно уловимая ловушка.
В Solaris используется утилита logadm, которая управляется конфигурационным файлом /etc/logadm.conf. В нем указывается возможность сжатия файла, ротации, права доступа к нему, возможность отправки сигнала определенной службе, чтобы она заметила подмену журнала, если она сама, а не syslogd занимается его пополнением, и т.п.
Для активации изменений, внесенных в /etc/syslog.conf, требуется послать сигнал HUP:

#kill -HUP `cat /var/run/syslog.pid`

Или перезапустить всю службу system-log:

#svcadm -v restart system-log

Категории и уровни детализации можно подсмотреть в заголовочном файле /usr/include/sys/syslog.h:

#cat /usr/include/sys/syslog.h

Теперь loghost - это хост куда отправляются все сообщения. Задается в файле /etc/hosts, путем добавления синонима loghost к целевому хосту. Как правило, loghost 'ом выступает localhost или один из локальных адресов:

#cat /etc/hosts

#
# Internet host table
#
::1 localhost
127.0.0.1 localhost
192.168.0.200 Solaris loghost

192.168.0.200 - адрес одного из интерфейсов.

Loghost 'ом может быть и другой хост, например, 192.168.0.100:

::1 localhost
127.0.0.1 localhost
192.168.0.200 Solaris
192.168.0.100 RemoteHost loghost

Если хост выступает в роли логхоста для удалённых машин или устройств с поддержкой syslog, то он должен принимать входящие сообщения на 514-м порту.

Пример syslog.conf, идущий по умолчанию в Solaris:

# syslog configuration file.
#
# This file is processed by m4 so be careful to quote (`') names
# that match m4 reserved words. Also, within ifdef's, arguments
# containing commas must be quoted.
#
.err;kern.notice;auth.notice /dev/sysmsg
.err;kern.debug;daemon.notice;mail.crit /var/adm/messages

.alert;kern.err;daemon.err operator
.alert root

.emerg

# if a non-loghost machine chooses to have authentication messages
# sent to the loghost machine, un-comment out the following line:
#auth.notice ifdef(`LOGHOST', /var/log/authlog, @loghost)

mail.debug ifdef(`LOGHOST', /var/log/syslog, @loghost)

#
# non-loghost machines will use the following lines to cause "user"
# log messages to be logged locally.
#
ifdef(`LOGHOST', ,
user.err /dev/sysmsg
user.err /var/adm/messages
user.alert `root, operator'
user.emerg
)

Для просмотра последних записей файла протокола используется команда tail с ключом f (tail -f), которая выводит последние 10 строк файла протокола и затем постоянно выдает новые строки по мере их появления после последней выведенной строки.
В /var/adm/messages по умолчанию собираются сообщения, выдаваемые при загрузке системы, а также важные сообщения по ходу работы.

Система журналирования в Unix, Syslog

Система журналирования в Unix - Syslog (RFC 3164). Syslog позволяет вам регистрировать почти все что угодно с практически любым уровнем детализации. Журналирующая система устроена достаточно просто. Программы шлют записи предназначенные для журналирования к системному демону syslogd. Syslogd сравнивает каждую пришедшую запись с правилами, которые находятся в файле /etc/syslog.conf. Когда обнаруживается соответствие, syslogd обрабатывает запись описанным в syslog.conf способом.
Файл /etc/syslog.conf состоит из двух столбцов. В первом указывается правило отбора записей для журнала. Во втором содержится описание действий, которые будут предприняты для обработки подошедшей записи. Источник журналируемых записей описывается указанием категории (facility) и уровня (level). Категория это или источник записей, или программа, которая шлет сообщения демону syslogd. Существуют следующие категории:
auth – Все что связано с авторизацией пользователей, вроде login и su.
authpriv – Тоже самое что и auth, однако пишет журнал в файл, который могут читать лишь некоторые пользователи
console – Сообщения, обычно печатаемые на системной консоли, могут быть записаны в журнал при помощи этой категории.
cron – Сообщения от системного планировщика.
daemon – Ловушка для сообщений от всех остальных системных демонов, которые не имеют явно описанных категорий.
ftp – При помощи этой категории вы сможете сконфигурировать ваш FTP сервер, что бы он записывал свои действия. Смотрите /etc/inetd.conf.
kern – Сообщения от ядра.
lpr – Сообщения от системы печати.
mail – Сообщения от почтовой системы.
mark – Эта категория используется для того, что бы помещать в журнал сообщение каждые 20 минут. Она может быть полезна в комбинации с некоторыми другими журналами (например вы сможете узнать с 20-ти минутной точностью, когда же завис ваш сервер – прим. переводчика).
news – Сообщения от сервера новостей.
ntp – Сообщения от сервера точного времени.
security – Сообщения от различных служб безопасности, таких как ipfw или ipf.
syslog – Система журналирования может журналировать сообщения от самой себя.
user – сообщения от пользовательских процессов
uucp – Собирает сообщения от UNIX-to-UNIX Copy Protocol.
local0 - local7 – Зарезервированные категории для использования администратором системы. Многие программы дают возможность указать категорию журналирования, если ваша программа это позволяет, выбирайте одну из них.
То, что кажется одному человеку незначительным, другому может показаться существенным. Здесь мы встречаемся с уровнями подробности сообщений. Syslog предоставляет восемь уровней важности сообщений. С их помощью, вы можете выбрать, что записывать в журнал, а что отбросить. Вот эти уровни, в порядке уменьшения важности:
emerg – Система в панике. Сообщения немедленно выводятся на все активные терминалы. Продолжение работы невозможно.
alert – Это плохо, но не настолько плохо как уровень emerg. Система может продолжить работу, но эту ошибку следует устранить немедленно.
crit – Это критические ошибки, такие как проблемы с аппаратным обеспечением или серьезные нарушения работы программного обеспечения.
err – Ошибки. Это скверно, такие ошибки должны быть устранены, но они не требуют мгновенной вашей реакции.
warning – Предупреждения.
notice – Общая информация которая должна быть записана, если она вам нужна, но вероятно она не потребует вашей реакции.
info – Различная системная информация.
debug – Этот уровень обычно используется программистами и иногда системными администраторами, которые пытаются понять – почему же эта программа так поступает? Отладочные сообщения могут содержать всю информацию которую счел необходимым вывести ее разработчик для отладки кода; между прочим она может содержать данные нарушающие приватность ваших пользователей.
none – Это специальный уровень означающий – «ничего не записывать в данной категории». Он обычно применяется для исключения информации из групповых записей.
Описание правила отбора источника информации включает в себя категорию и уровень детализации, разделенные точкой. Когда вы указываете уровень, по умолчанию в журнал записываются сообщения уровень которых выше или равен указанному. В качестве примера рассмотрим эту запись из файла /etc/syslog.conf:

mail.info /var/log/maillog

В журнал /var/log/maillog будут записаны сообщения от почтовой системы, с уровнем выше или равным уровню info.
Если возникнет потребность, то вы можете воспользоваться символом «*» в описании журналируемого источника. Например для записи абсолютно всех сообщений от почтовой системы вы можете воспользоваться следующим синтаксисом:

mail.* /var/log/maillog

Для записи в журнал абсолютно всех событий происходящих в системе:

*.* /var/log/all.log

Это сработает, однако такой файл будет содержать слишком много очень подробных сведений, для того что бы его можно реально использовать: для нахождения полезных сведений вам придется каждый раз сооружать нетривиальные последовательности команд grep.
Благодаря тому, что категория отладочных сообщений тоже подпадает это правило, все приватные сведения пользователей попадут в этот журнал. Вероятно вы не захотите записывать подобную информацию. Вы можете исключить аутентификационную информацию используя категорию authpriv с уровнем none. Точка с запятой даст вам возможность объединить правила в одной строке:

*.*;authpriv.none /var/log/all.log

В /etc/syslog.conf вы можете использовать операторы сравнения. Допустимы следующие операторы: «<» (меньше чем), «=» (равно), «>» (больше чем). Применив эти операторы вы сможете например разделить журнал записей почтового трафика и журнал отладочной информации предоставляемой почтовой системой:

mail.info /var/log/maillog
mail.=debug /var/log/maillog.debug

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

local3.* /var/log/whatever

В качестве источника записей вы можете указать имя программы. Если программа позволяет использовать категории, применяйте их. Однако, если вам не хватает категорий (local0-7 вполне могут закончиться – прим. переводчика), или программа просто не поддерживает syslogd, то вы можете использовать ее имя.
Такая запись состоит как минимум из двух строк. В первой строке находится название программы, в начале которого находится восклицательный знак. Вторая содержит параметры журналирования. Например, посмотрите, как выглядит запись для сбора информации о действиях ppp:

!ppp
*.* /var/log/ppp.log

Она начинается с указания имени программы и затем указывает syslog’у, что необходимо записывать абсолютно всю исходящую от нее информацию в файл. Вряд ли вы можете быть уверены, что случайная программа сторонних производителей имеет подходящие категории журналирования, так что лучшим выходом будет запись в журнал всех сообщений этой программы.
Наконец мы подошли к описанию второго столбца файла /etc/syslog.conf. В большинстве случаев он содержит полное имя файла журнала, но существуют и другие способы обработки поступающих записей.
Вы можете отсылать журналируемую информацию на другую машину, предварив ее имя символом «@». Следующий пример демонстрирует как можно перенаправлять все получаемое вашим syslog’ом на выделенный syslog-сервер в моей сети:

*.* @loghost.blackhelicopters.org

/etc/syslog.conf на loghost используется для окончательной обработки присылаемых записей.
В качестве способа обработки записей вы можете указать имена пользователей, разделенные запятыми. Если эти пользователи будут находится в системе в момент прихода сообщения удовлетворяющего указанному условию, то оно будет перенаправлено на их терминалы. Если вы хотите показывать некоторые сообщения на всех пользовательских терминалах, то следует воспользоваться символом «*».
Наконец, если вы хотите воспользоваться какой-нибудь другой программой для журналирования, вы можете использовать символ «¦» для перенаправления потока ввода-вывода на эту программу:

mail.* |/usr/local/bin/mailstat.pl

Ставим Linux Mandriva на VirtualBox

 Пол года на пальцах объясняю одному начинающему "линуксоиду" что надо пользоваться виртуалками. Дал ему уже десятки ссылок как это сделать. Но толку пока никакого, тока и слышу "где найти дрова?", "как поднять звук?" А так как парень хороший, послать в /dev/null нельзя :)  Вот так эта стать и появилась.
 Виртуализация на сегодняшний день это целое направление в IT, но мы не будем лезть в дебри. Нам нужен только обычный виртуальный персональный компьютер. Смыс предельно прост - из под Windows запустить виртуальный комп, в внутри него запускать другие ОС например тот же Linux Mandriva. Преимущества очевидны: у Вас всегда под рукой ваша Windows, а Linux спокойно работает в отдельном окошке - не надо перезагружаться, чтобы сменить ОС - они работает сразу обе. Представьте, вы первый раз поставили Linux, 
Вам нужно поднять инет, а про то как это сделать написано в инете :) Надо перезагрузить комп, выбрать Windows, там посмотреть что надо, опять перезагрузить, выбрать линукс, попробовать, понять что это не то что искали... и так до бесконечности. А с виртуалкой вы 
обо всём этом забываете. Переключаетесь между ОС также как Вы переключаетесь между программами в Windows.
 Если честно то я давно использую VMware, никогда не обращал внимания на результаты всяких тестов. Чисто субъективно VMware меня полностью устраивает. Одно, что мне в ней (кстати, какого рода VMware? имхо, женского - как никак "виртуальная машина") никогда не нравилось - это цена. С VirtualBox я познакомился с первых же его версий. Очень понравился (VirtualBox пусть будет мужского рода - "виртуальный ящик"). Вот некоторые достоинства: бесплатен, сборки под все основные ОС (можно и самому собрать из исходников), довольно шустрый, динамично развивается, а ещё это проект Sun Microsystems.
 Итак, теперь нам надо скачать сам VirtualBox. Идём на главную страницу проекта. Там находим раздел “Downloads” и качаем VirtualBox 2.2.2 for Windows hosts x86/amd64 (на 13 мая 2009 г. последняя версия 2.2.2).
 Теперь нам нужен образ CD/DVD диска самого линукса. Мы скачаем Linux Mandriva. Советую скачать Mandriva Linux 2009 Spring One KDE4 – 700Mb – этого достаточно для задач данной статьи.
 Нам понадобится около 10Gb свободного места на диске. И не менее 512Mb оперативной памяти, иначе всё будет жутко тормозить или вообще ничего не получится.
 Теперь подготовим Windows к установке VirualBox:
1-е VirtualBox как и другие программы  по умолчанию установится в ProgramFiles, пусть так и будет. Но создадим на любом диске с 10Gb свободного места специальную папку, я назову её VBoxPC, там у нас будут лежать с
ами виртуальные машины. У меня получилось «D:\VBoxPC\»
2-е Разберёмся с сетью. Идём в «Сетевые подключения» (Пуск->Настройка->Панель Управления->Сетевые подключения). 

 У Вас немного всё будет отличатся, в зависимости от установленных сетевых устройств. Сюда могут, например, попасть виртуальный Bluetooth сетевой интерфейс, сетевой интерфейс DVB карты. Всё будет зависеть от установленных в Вашем компьютере реальных устройств или драйверов виртуальных устройств. Как мы видим у меня три сетевых интерфейса, у Вас может их вообще не быть. По умолчанию сетевые интерфейсы называются «Подключение к локальной сети». Советую переименовать, я например, дал названия соответствующие самой сетевой карте Atheros, D-Link и wmWare. Назовите как угодно, главное чтобы не путались что и где. Хороший способ, писать названия той сети или интернет провайдера, куда подключена сетевая карта. Так же советую отключить все неиспользуемые сетевые интерфейсы. У меня в данный момент D-Link не используется и я его отключил. (выбираем «отключить» в контекстном меню интерфейса). Теперь давайте познакомимся с адресами Ваших сетевых интерфейсов. Свойства->Пртокол Интернета (TCP/IP)->Свойства:

 Здесь ничего не надо менять, просто посмотрите, какие у вас адреса, на каком интерфейсе, чтобы иметь об этом представление. Так же это можно сделать из командной строки (Пуск->Выполнить->Открыть:cmd) с помощью команды ipconfig /all. Получится примерно так:

 Теперь начнём установку VirtualBox. Всё по умолчанию, жмём «Далее», «Далее»... Разрешаем установку драйверов виртуальных сетевых интерфейсов – «Всё равно продолжить»:

 После запуска будет предложено зарегистрироваться, мы этого делать не будем – жмём «Отмена». Регистрация даёт некоторые полезные преимущества, но нам они пока не нужны, мы только знакомимся с продуктом. Зарегистрироваться можно в любое время потом и абсолютно бесплатно, а можно и вообще никогда этого не делать :) 
Пока свернём VirtualBox и посмотрим, что у нас изменилось в «Сетевых подключениях»:

 У нас появился новый сетевой интерфейс – VirtualBox Host-Only Network. На самом деле VirtualBox создал целую виртуальную сеть. Поставил вам сетевую карту в компьютер (виртуальную) и подключил ваш компьютер к этой сети. Теперь у нас есть подключение к новой сети, к которой мы также подключим и наш виртуальный компьютер, внутри которого будет работать Linux. 

 По умолчанию виртуальная сеть имеет маску 192.168.56.0, а виртуальный сетевой интерфейс в Windows имеет адрес 192.168.56.1. Если эти параметры вступают в конфликт с теми, что у Вас уже используются в других интерфейсах. Помните? Мы как раз для этого и смотрели параметры остальных интерфейсов. Как правило, при установке VirtualBox не допустит конфликтных ситуаций. Но если у Вас появилась необходимость сменить  параметры виртуальной сети, то делаем следующее. Открываем VirtualBox, далее Файл->Настройки…->Сеть, нажимаем «Изменить виртуальную сеть хоста» (кнопка справа с иконкой отвёртки).

 Меняем адрес сетевого интерфейса Windows на вкладке «Адаптер», а параметры виртуальной сети на вкладке «DHCP сервер». Если Вы знаете, как поднять сеть в Linux то DHCP сервер можно отключить.
 Добавлю ещё, что в гостевую ОС (так называется ОС установленная внутри виртуальной машины) можно добавлять сетевые интерфейсы которые с помощью моста будут работать поверх ваших реальных сетевых подключений. Таким образом, можно будет выпустить вашу гостевую ОС напрямую в реальные сети. 
 С сетью пока разобрались, теперь диски.
 Создаём в нашей папке VBoxPC ещё две паки Disks и Machines. В первой будут лежать виртуальные жесткие диски для гостевой ОС, в виде обычных файлов. Какой большой плюс, теперь можно не бояться, что при установке Linux Вы что-нибудь отформатируете нужное. Теперь вся файловая система Linux будет всего лишь файлом Windows. А во второй прочие файлы необходимые для работы гостевой ОС, всякие настройки и логи. 
Открываем «Файл»->«Настройки…»->вкладка «Общие» и меняем пути для «Папка для жестких дисков» и «Папка для машин» на соответственно D:\VBoxPC\Disks и D:\VBoxPC\Machines:

«Файл»->«Менеджер виртуальных носителей…» Вкладка «Образы CD/DVD». Жмём кнопочку «Добавить» и указываем путь к  установочному ISO образу диска с Linux:

Это будет CD/DVD-ROM нашей машины. Linux будет думать, что он работает с настоящим приводом. А на самом деле он просто будет работать с файлом образа.
Теперь вкладка «Жесткие диски»,  кнопка «Создать». С помощью мастера создаём диск фиксированного размера – (динамические диски не всегда пригодны, не все файловые системы гостевых ОС могут с ними работать) , размером примерно 10Gb (можно и меньше, если знаете, что хватит по установку Вашего Linux). Скриншот выкладывать нет смысла, там всё аналогично CD/DVD дискам.
И теперь самое главное – создаём виртуальный компьютер. «Машина»->«Создать» или кнопка «Создать» (с голубой шестеренкой). С помощью мастера задаём следующие параметры:
Имя: Linux Mandriva (тут, в принципе, можно написать что угодно)
Операционная Система: Linux
Версия: Mandriva (или та которая у Вас, если нет в списке - то просто выберете по версии ядра )
Размер основной памяти: более 256Mb, но так что бы Windows осталось не менее 256Mb от всей установленной оперативной памяти.
Загрузочный жесткий диск: да (галочку оставляем)
Использовать существующий: выбираем то что мы и создали.
По завершению работы мастера получим следующее:

Теперь немного пройдемся по свойства в отдельности. Давайте по порядку.
Общие – увеличиваем видеопамять – 64Mb достаточно. 
Жесткие диски – ничего не трогаем.
CD/DVD-ROM – Подключить CD/DVD. Файл образа, выбираем в списке нужный.
Сеть – Адаптер1 включить. Тип адаптера не трогаем. Тип подключения: Виртуальный адаптер хоста. Имя: не трогаем.
USB – выключаем, чтобы он нас лишний раз пока не отвлекал.
Остальное оставляем как есть.
Должно получится так:

 Что мы имеем. У нас полностью готовый виртуальный компьютер. У него есть жесткий диск размером 10Gb, своя оперативная память, в его CD-ROM вставлен установочный диск с Linux, он подключен к виртуальной сети. Осталось его только включить. Не забудьте, что когда вы кликнете мышкой внутри окна с гостевой ОС, то клавиатура и мышь перейдут под её управление, для того что бы их освободить нужно нажать правый Ctrl. 
 И наконец жмём «Старт»
 Если всё пошло как надо, то VirtualBox откроет ещё одно окно с Вашей гостевой ОС, там она и будет работать. Думаю, Вы уже поняли что дальше делать ;) 

 VirtualBox имеет много приятных функций, например снепшоты. Но это уже тема другой статьи ;) Польза виртуалки очевидна. Можно экспериментировать с ОС не отрываясь от работы в Windows. Не надо каждый раз переживать за разбивку диска. Не думать о драйверах. Можно скопировать папку VBoxPC на другой компьютер и запустить там уже установленную и настроенную систему. Или скачать с инета уже готовый образ виртуалки, только «Старт» и всё, даже устанавливать ОС на виртуальный компьютер не надо.

 В общем, надеюсь, что статья Вам окажется полезной.
Удачных Вам экспериментов ;)

З.Ы. У меня VirtualBox стоит на Solaris, а внутри запущена Windows в качестве гостевой ОС.

Мой .cshrc

#
# .cshrc - csh resource script, read at beginning of execution by each shell
#
# see also csh(1), environ(7).
#

umask 22

set path = (/usr/sfw/bin /usr/sbin /usr/bin)

setenv  EDITOR          vi
setenv  PAGER           less
setenv  BLOCKSIZE       K
#setenv  CC              /opt/SUNWspro/bin/CC
#setenv  cc              /opt/SUNWspro/bin/cc

setenv  JAVA_HOME       /usr/java

if ($?prompt) then
        set prompt = "%B`hostname`%b%# "
        set filec
        set history  = 256
        set savehist = 256
        set mail = (/var/mail/$USER)
        if ( $?tcsh ) then
                bindkey "^W"    backward-delete-word
                bindkey -k up   history-search-backward
                bindkey -k down history-search-forward
        endif
endif