Первые шаги в линукс (freebsd, linux, unix)

launches Windows 7

Windows

VirtualBox + OpenSuse

Привык когда всё работает из коробки как в убунте, итак как же запустить VirtualBox в OpenSuse
1. Добавляем ручками себя в группу vboxusers: usermod -g vboxusers jedai
2. "/usr/bin/VirtualBox: line 72: /usr/lib/virtualbox/VirtualBox: Отказано в доступе
/usr/bin/VirtualBox: line 72: exec: /usr/lib/virtualbox/VirtualBox: не могу запустить: Отказано в доступе"
Проблема решается командой chmod 4711 /usr/lib/virtualbox/VirtualBox.
У исполняемого файла /usr/lib/virtualbox/VirtualBox нет прав на запуск не из под рута.
3. Можно еще /etc/init.d/vboxdrv setup запустить)

Автозапуск XP в виртуалбоке на весь экран при загрузке

На хабре предлагают вариант с запуском виртуальной машины в headless-mode, X-сессии и rdesktop-vrdp посредством дописывания в /etc/rc.local строк

su rigid -c "VBoxHeadless -a 127.0.0.1 -s WinXP" &
X :1 vt08 &
DISPLAY=":1" rdesktop-vrdp -f localhost &

где rigid - имя пользователя, от которого запускается виртуальная машина.
С Ubuntu (Infra-Linux) 9.04 пришлось немного поразвлечься, чтобы получить аналогичный удобоваримый результат - часть мытарств описывал на форуме lafox.net.
В Ubuntu для запуска отдельной X-сессии 8-я виртуальная консоль, как выяснилось по факту, не подходит - занята служебным выводом - использовал 9-ю - переключение по Ctrl+Alt+F9/Ctrl+Alt+F7.
Кроме того, я держу образы дисков виртуальных машин на USB-HDD и использую сетевой мост с виртуальным сетевым адаптером, поднимаемым с помощью того же /etc/rc.local (описывал тут). Так как /etc/rc.local вызывается на всех уровнях инициализации системы, я, соответственно, не могу уверенно использовать рекомендации с хабра для запуска самой виртуальной машины из /etc/rc.local, потому как либо USB-drive не примонтируется, либо сетевой адаптер стартанёт позже виртуальной машины, тем более ещё и этот порядок может смениться с новой версией ядра с новой версией порядка инициализации. Итак, запускать собственно виртуальную машину и rdesktop-vrdp при загрузке я не стал - решил, что это буду делать из нулевой X-сессии или 1-й виртуальной консоли (ежели чего).
Но если просто прописать в /etc/rc.localX :1 vt09 & то получаем, что при загрузке системы попадаем именно в первую, а не нулевую, X-сессию в 9-ю виртуальную консоль - т.е. черный экран и поди пойми, что нужно нажать Ctrl+F7 для попадания в логин-экран (или как там его) - просто 1-я X-сессия запускается позже 0-й. Пришлось разбираться хоть немного с run-level и порядком загрузки Ubuntu.
Для того, чтобы стартануть 1-ю X-сессию раньше 0-й пришлось создать в /etc/init.d скрипт (от root) с именем secondXsession следующего содержания

#!/bin/sh -e
#
# secondXsession

X :1 vt09 &

exit 0

дать ему права на выполнение (я ставлю птичку в свойствах файла в Nautilus-е, запущенном через sudo) и положить в /etc/rc2.d симлинк на него c именем S29secondXsession (/etc/rc2.dS29secondXsession выполняется ранее /etc/rc2.d/S30gdm, в котором стартует 0-я X-сессия), опять же за root-ом. (Симлинк делаю опять же правым кликом по файлу в Nautilus-е, запущенном через sudo, - создать ссылку; хотя, конечно, никто ln в консоли не отменял).
Для запуска из терминала собственно виртуальной машины в headless-mode и rdesktop-vrdp ранее пришлось установить nohup:

sudo apt-get install nohup

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

#!/bin/sh -e
#
# FLPC_Headless

nohup VBoxHeadless -a 127.0.0.1 -s FLPC 2>&1 > /dev/null &
DISPLAY=":1" nohup rdesktop-vrdp -f localhost 2>&1 > /dev/null &

exit 0

где FLPC имя виртуальной машины. Скрипт вызываю кнопкой запуска на Рабочем столе или из консоли.
Далее готовим почву для автоматизации выключения виртуальной машины при выключении Host-а.
Выключить виртуальную машину из 0-й X-сессии можно дав команду
VBoxManage controlvm poweroff
Однако это долгая процедура, к тому же выбрасывающая нас в конце в 9-ю виртуальную консоль, где нужно ждать порядком 10 секунд до появления голых иксов дабы переключиться обратно в 7-ю. Быстрее - дать команду выключиться с сохранением состояния
VBoxManage controlvm savestate
- она срабатывает, но, к сожалению, так же выбрасывает в 9-ю виртуальную консоль и приходится опять же ждать, пока проявятся голые первые иксы из которых можно переключиться в 7-ю.
Проблемой оказалось то, что в VirtualBox 3.1.2 виртуальная машина не стартует в headless-mode, если была выключена с сохранением состояния.
И тут при попытке повторного запуска виртуальной машины проявился баг VirtualBox 3.1.2 (якобы искоренённый в версии 3.08): не работает
VBoxManage startvm .
В принципе работает другое:
VirtualBox --startvm
но так запускается не только виртуальная машина, но и оболочка(окно) запуска, которая не гасится манипуляциями из командной строки с виртуальной машиной. Оказалось, что в экспериментальном порядке разработчиками VirtualBox предлагается ещё один способ запуска виртуальной машины, который всё-таки работает как нам надо
VBoxSDL --startvm
оформляем это дело скриптом

#!/bin/sh -e
#
# FLPC_Headless

DISPLAY=":1" nohup VBoxSDL --startvm FLPC 2>&1 > /dev/null &

exit 0

- в его пользу отказываюсь (надеюсь пока) от запуска виртуальной машины в headless-mode. Ну и, соответственно, завёл кнопку запуска.
Для выключения с сохранением намалевал скриптик /etc/init.d/vmsavestate :

#!/bin/sh -e
#
# vmsavestate

su vitaly -c "VBoxManage controlvm FLPC savestate" &
sleep 10

exit 0

дал ему права на исполнение и сделал симлинки на него в /etc/rc0.d для shutdown и в /etc/rc6.d для reboot:
sudo ln -s /etc/init.d/vmsavestate /etc/rc0.d/K01vmsavestate
sudo ln -s /etc/init.d/vmsavestate /etc/rc6.d/K01vmsavestate
- идею подсмотрел там. Думаю, что можно как-то анализировать код возврата и тем самым ускорить выключение при отсутствии запущенной виртуальной машины или если машина была запущена и свернулась быстрее 10-и секунд, но пока я этого, к сожалению, не умею.

Gnome, metacity, значки "сверхнуть, развернуть, закрыть" слева

В OpenSUSE решил сделать как в убунте значки "сверхнуть, развернуть, закрыть" слева

"gconf-editor"
Переходим в раздел apps/metacity/general
Смотрим на параметр button_layout и в нём меняем слова местами

То есть было:
menu:minimize,maximize,close
а стало:
close,maxinize,minimize:menu
или в любом другом порядке по вкусу

Обновление OpenSuse, VirtualBox, Zypper


Итак решил обновить свою сузю, вторую ос которая валялась на втором жестком диске,
Скажу что очень дружественная операционная система, обкатанная, вылизанная компанией Novell.
Все работает "изкаропки" как у Ubuntu. Правда изначально gui-шных настроек в OpenSUSE в разы больше, чего стоит Yast2!!!!

1) обновление базы пакетов :
#zypper ref
2) обновить сами пакеты :
#zypper dup
3) reboot

Столкнулся с ситуацией, что /etc/init.d/vboxdrv setup вызывает критическую ошибку Virtualbox KERN_DIR error If this is not correct, specify KERN_DIR=

оказалось надо поставить kernel-syms, linux-kernel-headers, kernel-source.
Можно с помошью zypper:
zypper in kernel-syms

следующая конструкция мне очень пригодилась:
sudo zypper al php5
я както поставил php5.2 со старых репов сьюзи, вот и при обновлении системы php5.2 мог бы оновиться до 5.3, а мне это не надо. sudo zypper al php5 - заставляет не обновляться php5 при общем обновлении системы

Знакомый только сегодня поставил Ubuntu

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

Порадовало руководство Министерства Образования

Cоздадим Вам сайт

Если вам нужна персональная страница, веб-портал или социальная сеть, или консультация, добро пожаловать на сайт Информационный блог веб разработчика http://jedi-it.ru/