Setup Debian virtual machine on VirtualBox
Table of Contents
Create a new VirtualBox VM
In the VirtualBox GUI click "New" and choose the following parameters in the wizard:
- Type: Linux, Debian (64-bit)
- Memory Size: at least 3000MB, anything less and the build might not complete.
- Hard Disk: Create a virtual hard disk now
- Hard Disk file type: Use the default, VDI (VirtualBox Disk Image)
- Storage on physical hard disk: Dynamically Allocated
- File location and size: at least 40GB
After creating the VM, we need to configure it.
- Click the
Settingsbutton, then go to
Processorsub-tab. Increase the number of processors to the number of cores on your machine if you want builds to be faster.
- Go to the
Networktab. Adapter 1 should be attached to
Port Forwarding. We want to set up a port through which we can reach the VM to get files in and out.
- Create a new rule by clicking the plus icon.
Set up the new rule the following way:
- Leave Host IP empty
- Host Port:
- Leave Guest IP empty
- Guest Port:
Oktwice to save.
Get the Debian 8.x net installer (a more recent minor version should also work, see also Debian Network installation). This DVD image can be validated using a SHA256 hashing tool, for example on Unixy OSes by entering the following in a terminal:
echo "896cc42998edf65f1db4eba83581941fb2a584f2214976432b841af96b17ccda debian-8.10.0-amd64-netinst.iso" | sha256sum -c # (must return OK)
shasum on OSX.
Then start the VM. On the first launch you will be asked for a CD or DVD image. Choose the downloaded ISO.
This section will explain how to install Debian on the newly created VM.
- Choose the non-graphical installer. We do not need the graphical environment; it will only increase installation time and disk usage.
Note: Navigating in the Debian installer:
To keep a setting at the default and proceed, just press
To select a different button, press
- Choose locale and keyboard settings (doesn't matter, you can just go with the defaults or select your own information)
- The VM will detect network settings using DHCP, this should all proceed automatically
- Configure the network:
- Leave domain name empty.
- You can leave the root password empty. Otherwise, enter it twice and remember it for later.
- Name the new user
gitianuser(the full name doesn't matter, you can leave it empty)
- Set the account username as
- Choose a user password and enter it twice (remember it for later)
- The installer will set up the clock using a time server; this process should be automatic
- Set up the clock: choose a time zone (depends on the locale settings that you picked earlier; specifics don't matter)
- Disk setup
- Partitioning method: Guided - Use the entire disk
- Select disk to partition: SCSI1 (0,0,0)
- Partition Disks -> All files in one partition
- Finish partitioning and write changes to disk -> Yes (
Enterto select the
- The base system will be installed, this will take a minute or so
- Choose a mirror (any will do)
- Enter proxy information (unless you are on an intranet, leave this empty)
- Wait a bit while 'Select and install software' runs
- Participate in popularity contest -> No
- Choose software to install. We need just the base system.
- Make sure only 'SSH server' and 'Standard System Utilities' are checked
- Uncheck 'Debian Desktop Environment' and 'Print Server'
- Install the GRUB boot loader to the master boot record? -> Yes
- Device for boot loader installation -> ata-VBOX_HARDDISK
- Installation Complete -> Continue
- After installation, the VM will reboot and you will have a working Debian VM. Congratulations!
Connecting to the VM
After the VM has booted you can connect to it using SSH, and files can be copied from and to the VM using a SFTP utility.
22222 (or the port configured when installing the VM).
On Windows you can use putty and WinSCP.
For example, to connect as
gitianuser from a Linux command prompt use
$ ssh gitianuser@localhost -p 22222 The authenticity of host '[localhost]:22222 ([127.0.0.1]:22222)' can't be established. RSA key fingerprint is ae:f5:c8:9f:17:c6:c7:1b:c2:1b:12:31:1d:bb:d0:c7. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '[localhost]:22222' (RSA) to the list of known hosts. gitianuser@localhost's password: (enter gitianuser password configured during install) 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. gitianuser@debian:~$
sudo to execute commands as root.
Optional - Easier login to the VM
You'll need to generate an SSH key, e.g. by following the instructions under "Generating a new SSH key" here.
After that, login to the VM and enter:
On your machine edit or create
~/.ssh/config and add:
Host gitian HostName localhost Port 22222 User gitianuser
Open a new terminal tab and enter:
scp ~/.ssh/id_rsa.pub gitian:.ssh/authorized_keys
Next time you need to login to the VM, just use: