由于 Ubuntu 无法设置语言环境,我无法安装应用程序?

由于 Ubuntu 无法设置语言环境,我无法安装应用程序?

我以 root 身份登录。

每当我想在本地或远程安装新应用程序时,我都会得到以下信息:

locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up postgresql-9.3 (9.3.14-0ubuntu0.14.04) ...
 * Starting PostgreSQL 9.3 database server                                                              * The PostgreSQL server failed to start. Please check the log output:
2016-09-06 15:47:37 CEST FATAL:  could not create lock file "/var/run/postgresql/.s.PGSQL.5433.lock": Permission denied
                                                                                                [fail]
invoke-rc.d: initscript postgresql, action "start" failed."

为什么 Ubuntu 会启动 Postgre 服务器?
这是怎么回事?
请给出简单的答案...我是菜鸟。

输出locale

locale: Cannot set LC_CTYPE to default locale: No such file or directory 
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=en_US:en 
LC_CTYPE=UTF-8 
LC_NUMERIC="en_US.UTF-8" 
LC_TIME="en_US.UTF-8" 
LC_COLLATE="en_US.UTF-8" 
LC_MONETARY="en_US.UTF-8" 
LC_MESSAGES="en_US.UTF-8" 
LC_PAPER="en_US.UTF-8" 
LC_NAME="en_US.UTF-8" 
LC_ADDRESS="en_US.UTF-8" 
LC_TELEPHONE="en_US.UTF-8" 
LC_MEASUREMENT="en_US.UTF-8" 
LC_IDENTIFICATION="en_US.UTF-8" 
LC_ALL=

答案1

看来这里有 3 个不同的问题。

  1. 系统上似乎有一个半安装的 postgresql-9.3,因此当您尝试apt-get install任何新包时,它会首先尝试完成 postgresql 安装。这是正常的 APT 行为。

  2. /var/run/postgresql 的权限不正确,因此出现错误 could not create lock file "/var/run/postgresql/.s.PGSQL.5433.lock": Permission denied,即使其余部分都没有问题,也可能会发生这种情况。

  3. 您的locale设置en_US.UTF-8已损坏,好像有人删除了底层文件,因此@Zanna 建议使用以下方法重新生成它们sudo locale-gen en_US.utf8

如果你主要想修复 #1,我认为你需要卸载半安装的 postgresql-9.3

对于你的情况,我会从这样的命令开始:

dpkg-query -W -f='${db:Status-Abbrev}\t${binary:Package}\n' 'postgres*'

获取 postgres 软件包列表及其状态。然后卸载并清除有错误或半安装的软件包。

相关内容