From e7236907dfe3e9130d532d5e8a7f2b17af13df1c Mon Sep 17 00:00:00 2001 From: Richard Qin Date: Wed, 28 Oct 2026 23:13:09 +0800 Subject: Refactor Debian container script into modular components with configurable paths and documentation. Signed-off-by: Richard Qin --- debian-container/lib/mount.sh | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 debian-container/lib/mount.sh (limited to 'debian-container/lib/mount.sh') diff --git a/debian-container/lib/mount.sh b/debian-container/lib/mount.sh new file mode 100644 index 0000000..0b623c8 --- /dev/null +++ b/debian-container/lib/mount.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash +# SPDX-License-Identifier: GPL-3.0-or-later +# Copyright (C) 2026 by Richard Qin + +dc_cleanup_mounts() { + umount "$DC_ROOT/dev/pts" 2>/dev/null || true + umount "$DC_ROOT/dev" 2>/dev/null || true + umount "$DC_ROOT/proc" 2>/dev/null || true + umount "$DC_ROOT" 2>/dev/null || true +} + +dc_mount_root() { + mkdir -p "$DC_ROOT" + mount -o loop "$DC_IMAGE" "$DC_ROOT" + mkdir -p "$DC_ROOT/proc" "$DC_ROOT/dev" +} + +dc_mount_virtual_filesystems() { + mount -t proc -o ro,nosuid,nodev,noexec proc "$DC_ROOT/proc" + mount -t tmpfs -o mode=0755,nosuid tmpfs "$DC_ROOT/dev" + mknod -m 0666 "$DC_ROOT/dev/null" c 1 3 + mknod -m 0666 "$DC_ROOT/dev/zero" c 1 5 + mknod -m 0666 "$DC_ROOT/dev/random" c 1 8 + mknod -m 0666 "$DC_ROOT/dev/urandom" c 1 9 + mknod -m 0666 "$DC_ROOT/dev/tty" c 5 0 + mkdir -p "$DC_ROOT/dev/pts" + mount -t devpts -o newinstance,ptmxmode=0666,mode=0620 devpts "$DC_ROOT/dev/pts" + ln -s pts/ptmx "$DC_ROOT/dev/ptmx" +} + -- cgit v1.2.3