我正在 UBUNTU 16.04 服务器上设置 POSTGRESQL:
我按照这里给出的解释,我做了:安装:
sudo apt-get install postgresql postgresql-contrib`
Run Code Online (Sandbox Code Playgroud)
postgres 用户名和密码的设置:
sudo -u postgres psql postgres
\password [postgres password]
Run Code Online (Sandbox Code Playgroud)
那时命令postgres起作用了。
然后在创建任何 SCHEMA 之前,我遵循了一些指导方针,为 POSTGRES 下的 POSTGRES 设置了一个新的数据目录/srv/datadisk01/database,datadisk01 是一个用于存储和使用数据库的硬盘驱动器。
我将 的所有者更改/srv/datadisk01/database为postgres用户chmod。
我启动了:/usr/lib/postgresql/9.5/bin/initdb -D /srv/datadisk01/database,这奏效了。
然后我跑了sudo service postgresql stop。我更新了文件/etc/postgresql/9.5/main/postgresql.conf,改变了
data_directory = ‘/var/lib/postgresql/9.5/main’
Run Code Online (Sandbox Code Playgroud)
到
data_directory = ‘/srv/datadisk01/database’
Run Code Online (Sandbox Code Playgroud)
并且sudo service postgresql start。
我停在那里并切换到与 POSTGRES 无关的其他主题设置。
稍后(并重新启动机器),命令postgres失败并返回:
postgres: command …Run Code Online (Sandbox Code Playgroud) 我正在阅读这个 Digital Ocean 教程。在第 1 步中,它说:
在安装应用程序时,我们需要 [...] acl 来设置正确的目录权限
我想检查是否acl已经安装:
$ dpkg -s acl
dpkg-query: package 'acl' is not installed and no information is
available Use dpkg --info (= dpkg-deb --info) to examine archive
files, and dpkg --contents (= dpkg-deb --contents) to list their
contents.
Run Code Online (Sandbox Code Playgroud)
然后我的逻辑告诉我用 寻找它apt-cache search,然后我运行apt-cache search acl; 它返回一个包列表,但我没有看到一个严格命名的包acl。
我试试:apt-cache policy acl。它返回:
acl:
Installed: (none)
Candidate: 2.2.52-3
Version …Run Code Online (Sandbox Code Playgroud) 阅读该问题后,我意识到我需要安装supervisor.
sudo apt-get install supervisor 告诉我:
E: Unable to locate package supervisor
Run Code Online (Sandbox Code Playgroud)
sudo apt-cache search supervisor 什么都不给。
此外,当我查看其他问题时,它似乎默认安装在 Ubuntu 16.04 中。
我正在使用 Ubuntu 16.04 LTS。
为什么我找不到这个包?我该如何安装?