fix: Restructure containers - aios contains child containers internally

Changed from 3 separate containers to 1 container with child containers inside:
- /var/lib/machines/aios/ (main container)
  - /var/lib/machines/restore-img/ (child container)
  - /var/lib/machines/workspace/ (child container)

ai user operates child containers from within aios using machinectl.
This commit is contained in:
Claude
2025-11-07 14:40:46 +00:00
parent a35a6bc870
commit e88b241519
3 changed files with 20 additions and 41 deletions

View File

@@ -21,9 +21,9 @@ function aios-shell() {
sudo machinectl shell $NAME
}
# Login to aios container
# Login to aios container as ai user
function aios-login() {
sudo machinectl login $NAME
sudo machinectl shell $NAME /bin/su - ai
}
# Create backup of current aios

View File

@@ -27,19 +27,17 @@ fi
echo "1. Extracting $TARBALL..."
tar xf "$TARBALL"
# Move all containers to /var/lib/machines/
echo "2. Installing containers to /var/lib/machines/..."
rm -rf /var/lib/machines/$NAME /var/lib/machines/$BACKUP /var/lib/machines/workspace
# Install aios (contains child containers inside)
echo "2. Installing aios to /var/lib/machines/..."
rm -rf /var/lib/machines/$NAME
mkdir -p /var/lib/machines
mv root.x86_64/var/lib/machines/arch /var/lib/machines/$NAME
mv root.x86_64/var/lib/machines/aiosback /var/lib/machines/$BACKUP
mv root.x86_64/var/lib/machines/workspace /var/lib/machines/workspace
# Copy nspawn configuration
echo "3. Installing systemd-nspawn configuration..."
mkdir -p /etc/systemd/nspawn
# Create aios.nspawn
# Create aios.nspawn (only one container needed)
cat > /etc/systemd/nspawn/$NAME.nspawn <<'EOF'
[Exec]
Boot=yes
@@ -53,34 +51,6 @@ Bind=/root/.config/syui/ai:/root/.config/syui/ai
VirtualEthernet=no
EOF
# Create aiosback.nspawn
cat > /etc/systemd/nspawn/$BACKUP.nspawn <<'EOF'
[Exec]
Boot=yes
PrivateUsers=pick
ResolvConf=copy-host
[Files]
Bind=/root/.config/syui/ai:/root/.config/syui/ai
[Network]
VirtualEthernet=no
EOF
# Create workspace.nspawn
cat > /etc/systemd/nspawn/workspace.nspawn <<'EOF'
[Exec]
Boot=yes
PrivateUsers=pick
ResolvConf=copy-host
[Files]
Bind=/root/.config/syui/ai:/root/.config/syui/ai
[Network]
VirtualEthernet=no
EOF
# Create bind mount directory
mkdir -p /root/.config/syui/ai