SavaPage Server Minimal Install Guide
This is a guide to install a minimal headless Debian or Ubuntu system in a Virtual Machine, as base for installing SavaPage Open Print Portal, PaperCut Secondary Server, and PostgreSQL for SavaPage and PaperCut Databases.
Virtual Machine | 2 CPU, 4GB RAM, 100GB HDD | When using PaperCut managed direct queues only. |
Virtual Machine | 2 CPU, 4GB RAM, 150GB HDD | When using PaperCut managed hold/release queues. |
Virtual Machine specifications differ depending on requirements. Contact Datraverse to tailor your wishes.
1. Netinstall
1.1. Boot from Netinst CD
- Debian
- Download Debian “stable release” netinst CD image for amd64 from here.
- Look for
debian-11.*.*-amd64-netinst.iso
at the bottom of the page.
- More info on https://www.debian.org/CD/netinst/
- Ubuntu
- Download Ubuntu 20.04 “Focal Fossa” Minimal CD image for 64-bit PC (amd64, x86_64) from here.
Boot the VM with the CD .iso image
1.2. Install
Installer boot menu Advanced options > Expert install
Select any nearby location, in this case “Belgium” is chosen.
Choose Language: English Select your location: other > Europe > Belgium Configure locales: United States - en_US.UTF-8 > No additional locales
+---------------------+ | Debian | +---------------------+ Configure the keyboard Keymap to use: American English Detect and mount CD-ROM Modules to load [*] usb-storage (USB storage) Load installer components from CD Installer components to load: Do NOT select any component
+---------------------+ | Ubuntu | +---------------------+ Configure the keyboard Country of origin: English (US) | Keyboard layout: English (US)
Detect network hardware Modules to load [*] usb-storage (USB storage)
Choose a Hostname that identifies your organization. This makes it easier for third-party support to distinguish multiple terminals from different customers. Prefix your hostname with sava-
, and use a short mnemonic, that identifies your organization, as suffix. So, the hostname for Acmee Corp could be sava-acmee
.
Configure the network Hostname : (your 'sava-mnemonic' hostname) Domain name : (empty for now) No autoconfiguration > Use static IP's as appropriate in your infrastructure
+---------------------+ | Ubuntu | +---------------------+ Download installer components Installer components to load: Do NOT select any component
Set up users and passwords Enable shadow passwords: <Yes> Allow login as root: <No> Full name for the new user: beheerder Username for your account: beheerder Choose a password for the new user: ************ Encrypt your home directory: <No> Configure the clock Set the clock using NTP? <Yes> NTP server to use: (accept the default) Select your time zone: Europe/Brussels
Detect disks Partition disks Partition method: Manual Select the SCS ... (sda) device Create new empty partition table on this device? : <Yes> Partitiontable type: msdos
The size of the partitions is based on the default HDD size as specified at the top of this page. Contact Datraverse on how to size the partitions in case HDD size differs from the default options.
- PaperCut Secondary needs to be installed in
/home/papercut/
. All its temp (spool) files resides there as well. Since it is hard to tell what size PaperCut will occupy at runtime, a/home
partition is not created. It is better to be on the safe side with a large/
mount. - SavaPage is installed in
/opt/savapage/
, where/opt/savapage/custom/
and/opt/savapage/data/
hold operational files (that are not part of the initial installation). The/opt
mount isolates the complete SavaPage runtime in a separate partition. - PostgreSQL data_directory resides in
/var/lib/postgresql/9.*/main/
. In case of a disaster, the SavaPage database can be restored from/opt/savapage/data/backups/
and PaperCut from its own Windows backup location. Of course, storing database backups to an external location is recommended.
Select the FREE SPACE to create the following partitions: For a 100 GB disk: size mount use as partition type ---- ----- ------- --------- ---------- 55GB / ext4 /dev/sda1 *PRIMARY* 40GB /opt ext4 /dev/sda2 *PRIMARY* 5GB swap /dev/sda3 *PRIMARY* For a 150 GB disk: size mount use as partition type ---- ----- ------- --------- ---------- 105GB / ext4 /dev/sda1 *PRIMARY* 40GB /opt ext4 /dev/sda2 *PRIMARY* 5GB swap /dev/sda3 *PRIMARY*
Install the base system
+---------------------+ | Debian | +---------------------+ Kernel to install: linux-image-amd64 Note: this is the generic metapackage
+---------------------+ | Ubuntu | +---------------------+ Kernel to install: linux-generic
Drivers to include in the initrd: targeted: only include drivers needed for this system
Configure the package manager
+---------------------+ | Debian | +---------------------+ Scan another CD or DVD: <No> Use a network mirror: <Yes> Protocol for file downloads: http Debian archive mirror country: Belgium Debian archive mirror: (accept default) HTTP proxy information (blank for none): Use non-free software: <No> Use contrib software: <Yes> Enable source repositories in APT: <No> Services to use: [*] security updates [*] release updates [*] backported software
+---------------------+ | Ubuntu | +---------------------+ Use restricted software: <No> Use software from the "universe" component: <Yes> Use software from the "multiverse" component: <No> Use backported software: <Yes> Enable source repositories in APT: <No>
Select and install software
+---------------------+ | Debian | +---------------------+ Warning: When using VM in Virtualbox, do NOT install "virtualbox-ose-guest-x11" Participate in the package usage survey: <No> Choose software to install: [*] SSH server [*] standard system utilities [ ] disable everything else
+---------------------+ | Ubuntu | +---------------------+ How do you want to manage upgrades on this system? Install security updates automatically Choose software to install: [*] OpenSSH server [ ] disable everything else
Install the GRUB boot loader on a hard disk Install GRUB boot loader to master boot record: <Yes> Device for boot leader installation: /dev/sda Force FRUB installation to the EFI removable media path: <No> Finish the installation Is the system clock set to UTC? <Yes> Installation complete Detach netinst iso image and <Continue>
Lifecycle (EOL)
2. Configure Remote Access
To SSH access the Debian server over the Internet, forward local port 22
of the server to a random (non-trivial) external port. For example:
Debian Server on LAN | 192.168.0.11 | find with ip addr show |
Internet WLAN | 176.62.168.143 | |
Port Forward | 176.62.168.143:59411 → 192.168.0.11:22 | Please do not filter these ports. |
3. Additional Steps by Datraverse
Optionally, Datraverse will deliver a fully functioning system, according to the agreed design and Service Level Agreement.
3.1. Secure Access
After remote access is established, password logins are immediately disabled and pubkey authentication is set up. You can provide the public SSH keys for users that are allowed access.
3.2. Installation and Configuration
On top of the basic headless Debian system, additional packages are installed and configured.
Ongoing Operational Support can optionally be performed by Datraverse within Service Level Agreement limits.