今天宝塔安装了Redis,编辑了一下监听IP,突然就无法启动了
查看日志-应用日志-redis后发现报错是
4181681:C 12 Aug 2025 16:12:30.227 * Redis version=7.4.5, bits=64, commit=00000000, modified=1, pid=4181681, just started 4181681:C 12 Aug 2025 16:12:30.227 * Configuration loaded 4181681:M 12 Aug 2025 16:12:30.227 # Failed to configure LOCALE for invalid locale name.
以下是Debian系统的解决方案
sudo apt update && sudo apt install -y locales
2.2 生成 en_US.UTF-8
区域
编辑区域配置文件 /etc/locale.gen
,取消注释 en_US.UTF-8
行(用 nano
或 vim
):
sudo nano /etc/locale.gen
找到以下行(可能被注释,以 #
开头):
# en_US.UTF-8 UTF-8
删除行首的 #
以启用
en_US.UTF-8 UTF-8
保存并退出(nano
按 Ctrl+O
保存,Ctrl+X
退出)。
2.3 执行区域生成命令
sudo locale-gen
这会根据 /etc/locale.gen
生成所有启用的区域,包括 en_US.UTF-8
。
步骤 3:设置系统默认区域
通过 update-locale
命令设置全局默认区域(影响所有用户):
sudo update-locale LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8
此命令会自动更新 /etc/default/locale
文件,确保环境变量持久化。
步骤 4:验证区域设置生效
重新加载环境变量(或重启终端),再次运行 locale
检查:
source /etc/default/locale # 立即生效 locale
输出应显示 LC_ALL=en_US.UTF-8
且无警告,类似:
LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" ... LC_ALL=en_US.UTF-8