Part 2: Configuring IP, User Privileges, and the Second Data Disk Objective of This Section In this section, we further configure the freshly installed Debian VM. We assign a static IP address, establish proper user privileges, and permanently mount the second disk for Nextcloud data. All packages will be updated to the latest state, and clean administrative privileges will be prepared. At the end of this section: the VM is reachable via a static IP address a regular admin user with sudo privileges is configured the data disk is correctly mounted and persistently integrated Step 1: Log In to the VM and Initial Overview Prerequisites Debian 13 has been successfully installed The VM is running in Proxmox Access to the Proxmox web interface An SSH client (e.g., Tabby, Terminal, iTerm, PuTTY) Hardware Recommendations The second virtual disk has already been added in Proxmox Size as required (e.g., 200 GB or more) The disk has not yet been configured inside Debian VM Parameters (Example) Hostname: nextcloud-vm Static IP (example): 192.168.10.120 Gateway: 192.168.10.1 DNS: internal DNS + fallback Required Credentials (Example) User: ncadmin Root password SSH access to the VM Log In via SSH Start the VM in Proxmox and determine the currently assigned IP address. Then connect via SSH using the admin user ncadmin (or the user created in Part 1): # Use your VM’s name and IP address ssh ncadmin@192.168.10.120 On first connection, confirm the fingerprint with yes , then enter the password. Step 2: Configure a Static IP Address Objective The VM must always be reachable under the same IP address. This is a prerequisite for DNS configuration, reverse proxy usage, and later for Nextcloud itself. Edit Network Configuration Open the file: /etc/network/interfaces : sudo nano /etc/network/interfaces Modify the primary interface as follows (the interface name may differ, often ens18 ): # The primary network interface allow-hotplug ens18 #iface ens18 inet dhcp iface ens18 inet static address 192.168.10.120 netmask 255.255.255.0 gateway 192.168.10.1 dns-nameservers 192.168.10.6 1.1.1.1 Adjust the IP addresses to match your network. Save with CTRL+O , confirm with Enter, exit with CTRL+X . To ensure that the dns-nameservers defined in the interfaces file are actually applied, the resolvconf package must be installed and enabled: sudo apt install resolvconf sudo systemctl enable resolvconf sudo systemctl start resolvconf Restart networking: sudo systemctl restart networking Important: Do not close the current terminal. Instead, open a new terminal and test whether SSH login works again. Connection successful → configuration is correct Connection fails → use the existing terminal session to correct the network configuration Step 3: Update the System and Root Access Switch to Root Mode su - Update the System apt update apt full-upgrade This updates both the package lists and all installed packages. Optionally, the hostname can also be adjusted at this stage. Step 4: Configure sudo Privileges The regular user should be able to perform administrative tasks without remaining logged in as root. Install sudo apt install sudo Add User to sudo Group usermod -aG sudo ncadmin Afterward, log out from root. Future administrative commands can be executed using sudo . Step 5: Prepare the Second Disk The second virtual disk will be partitioned, formatted, and mounted as the data directory for Nextcloud. ⚠️ The mount point /srv/cloud.zn80.net is only an example. You may use any suitable path, such as /srv/nextcloud/data , /var/lib/nextcloud , or /home/ncadmin/cloud-data . Choose a structure that aligns with your system design and remains intuitive. Overview of Available Drives lsblk The second disk is usually /dev/sdb . Create Partition sudo fdisk /dev/sdb Within fdisk , enter: n (new) p (primary) 1 Enter (start) Enter (end) w (write) Create Filesystem sudo mkfs.ext4 -L cloud.zn80.net /dev/sdb1 Create Mount Directory sudo mkdir -p /srv/cloud.zn80.net Step 6: Permanently Mount the Disk Objective The data disk should automatically mount at system startup. Determine UUID blkid Note the UUID of /dev/sdb1 . The UUID is important because device names may change after reboot, whereas UUIDs remain constant. Edit /etc/fstab sudo nano /etc/fstab Add or modify the following line: # nextcloud data UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX /srv/cloud.zn80.net ext4 defaults,noatime 0 2 Save and close the editor. Test Mount sudo mount -a df -h The disk should now be mounted under /srv/cloud.zn80.net . The system is now fully prepared. The actual Nextcloud installation follows in: Part 3: Downloading, Installing, and Configuring Nextcloud Step 7: Resize the Disk (Optional) ⚠️ Important Notice Before Resizing Before resizing the data disk, create a backup of the VM or critical data. A mistake (e.g., selecting the wrong partition) can result in complete data loss. The VM must be powered off and on again for the rescan and parted steps. Live resizing using resize2fs works only with ext4 and a mounted filesystem, but it is riskier and not always recommended. Proceed carefully and verify the partition before modifying it. Objective If additional storage is required later, the existing partition can be expanded without data loss. Resize Disk in Proxmox Select VM Disk → Resize Add desired capacity Rescan in Debian echo 1 > /sys/block/sdb/device/rescan Reboot the VM if necessary. Check Free Space parted -s -a opt /dev/sdb "print free" Resize Partition parted -s -a opt /dev/sdb "resizepart 1 100%" Resize Filesystem e2fsck -f /dev/sdb1 resize2fs /dev/sdb1 Afterward, lsblk and df -h will reflect the new size. Note: Differences in displayed sizes are due to GB vs. GiB.