Add setup-locale-lxcs.sh
This commit is contained in:
@@ -0,0 +1,60 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -u
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "========================================"
|
||||||
|
echo " Debian Locale Configuration Script"
|
||||||
|
echo "========================================"
|
||||||
|
echo
|
||||||
|
|
||||||
|
for CTID in $(pct list | awk 'NR>1 {print $1}'); do
|
||||||
|
|
||||||
|
STATUS=$(pct status "$CTID" 2>/dev/null | awk '{print $2}')
|
||||||
|
|
||||||
|
echo "----------------------------------------"
|
||||||
|
echo "Container: $CTID"
|
||||||
|
echo "Status: $STATUS"
|
||||||
|
|
||||||
|
if [[ "$STATUS" != "running" ]]; then
|
||||||
|
echo "SKIP: Container is not running."
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
OS_ID=$(pct exec "$CTID" -- sh -c \
|
||||||
|
'. /etc/os-release 2>/dev/null && echo "$ID"' \
|
||||||
|
2>/dev/null || true)
|
||||||
|
|
||||||
|
OS_NAME=$(pct exec "$CTID" -- sh -c \
|
||||||
|
'. /etc/os-release 2>/dev/null && echo "$PRETTY_NAME"' \
|
||||||
|
2>/dev/null || true)
|
||||||
|
|
||||||
|
echo "OS: ${OS_NAME:-Unknown}"
|
||||||
|
|
||||||
|
if [[ "$OS_ID" != "debian" ]]; then
|
||||||
|
echo "SKIP: Not Debian."
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Configuring en_US.UTF-8..."
|
||||||
|
|
||||||
|
if ! pct exec "$CTID" -- sh -c "
|
||||||
|
sed -i 's/^# *en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen &&
|
||||||
|
locale-gen &&
|
||||||
|
update-locale LANG=en_US.UTF-8
|
||||||
|
"; then
|
||||||
|
echo "ERROR: Locale configuration failed in container $CTID."
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "OK: Locale configured."
|
||||||
|
|
||||||
|
echo "Current locale:"
|
||||||
|
pct exec "$CTID" -- sh -c 'locale | grep -E "^LANG=" || true'
|
||||||
|
|
||||||
|
echo
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "========================================"
|
||||||
|
echo " Finished"
|
||||||
|
echo "========================================"
|
||||||
Reference in New Issue
Block a user