Archiv štítku: VirtualBox

Windows 2k na novém HW

Instalace Debianu

Nastavení rozlišení obrazovky

Instalace X serveru

apt-get install xserver-xorg
apt-get install xinit

Start do konzole

Kdyby se stalo, že se systém pokouší startovat do X, tak je jednoduché nastavit zpět start do konzole:

systemctl set-default multi-user.target

Instalace VirtualBoxu

Do /etc/apt/sources.list přidat contrib, například:

deb http://httpredir.debian.org/debian/ jessie main contrib

Pak je nutné update a lze nainstalovat virtualbox:

apt-get update
apt-get install virtualbox

Nastavení VirtualBox guestu z konzole

Když máme nainstalovaný Xserver, tak to lze přes něj:

xinit VirtualBox $* - :1

Autologin

Aby se po spuštění počítače automaticky přihlašoval uživatel “user”, je potřeba upravit /lib/systemd/system/getty@.service tak, aby tam bylo:

ExecStart=-/sbin/agetty --noclear -a user %I $TERM

to má ovšem ten následek, že se nelze přihlásit pod jiným účtem. Vyřeší se to tím, že se vytvoří nová getty služba, která se spustí jenom jednou a teprve potom se spouští klasická:

zkopírujeme si do /etc/systemd/system soubor /lib/systemd/system/getty@.service dvakrát pod různými názvy, například getty0@tty1.service a getty1@tty1.service . V getty0 upravíme následující:

[Unit]
Conflicts=getty1@tty1.service

[Service]
ExecStart=-/sbit/agetty --autologin uzivatel --noclear %I $TERM
ExecStopPost=-/bin/systemctl start getty1@tty1
Restart=no

[Install]
Alias=getty.target.wants/getty@tty1.service

V getty1 stačí pouze Alias. Následně nalinkujeme do podadresáře getty.target.wants pomocí

ln -sf /etc/systemd/system/getty1@tty1.service /etc/systemd/system/getty.target.wants/getty1@tty1.service

Autostart aplikace po přihlášení

do .bash_profile přidáme:

exec ~/startupscript

tím se docílí toho, že při ukončení skriptu se automaticky uživatel odhlásí.

Spouštění VM při startu

spustíme přes startx a automatické spuštění VM uděláme přes .xinitrc, do kterého můžeme přidat i zakázání screensaveru:

xset s off
xset -dpms
VirtualBox --startvm "jmeno_vm" --fullscreen

Povolení přístupu na COM port

Pro přístup na COM port je potřeba uživatele přidat do skupiny dialout:

adduser user dialout

Povolení přístupu na USB

Pro přístup k USB zařízením musí být uživatel členem skupiny vboxusers:

adduser user vboxusers

Poweroff

Přidat uživatele do /etc/sudoers (pozor je důležité odřádkovat):

user ALL=NOPASSWD: /sbin/poweroff

Pak už stačí sudo poweroff

Instalace SSH serveru

Nainstalovat openssh-server

Nastavit PermitRootLogon na yes

Zakázání screensaveru

do grubu přidat consoleblank=0 (ověřit)

nainstalovat x11-xserver-utils

v home vyrobit .xinitrc a do něj nastavit

xset s off
xset -dpms
xset s noblank

Automatické spouštění virtuálního stroje s dotazem:

read -t 1 -n 1 -p "Stiskni Q pro preruseni zavadeni VM" input; RETVAL=$?
if [[ $RETVAL -gt 128 ]] || [[ $input != "q" ]]; then
	./start
else
	exit
fi

read -t 1 -n 1 -p "Stiskni Q pro preruseni vypinani" input; RETVAL=$?
if [[ $RETVAL -gt 128 ]] || [[ $input != "q" ]]; then
	sudo poweroff
else
	exit
fi

Přístup do klienta VirtualBoxu přes RDP z Windows

VirtualBox podporuje běh v tzv. Headless módu, kdy se klient spustí bez okna a běží jako server na pozadí. Ovšem v takovém režimu se k němu VirtualBox neumí připojit a jediný způsob komunikace s ním je například přes SSH klienta. VirtualBox má ovšem zabudovanou podporu RDP přístupu – je potřeba ji jenom zapnout v nastavení VM (Nastavení/Obrazovka/Vzdálená obrazovka/Povolit server). Je nutné zadat jiné číslo portu než je standardně vyplněno (3389), protože se budeme připojovat k místnímu počítači a na portu 3389 již běží RDP připojení k samotnému počítači. Ke klientovi VirtualBoxu se pak připojíme přes standardní Připojení ke vzdálené ploše, jako adresu počítače zadáme localhost:číslo portu.