debian
私のオペレーティングシステムの一般的なアカウントです。
debian@debian:~$ cat /etc/passwd |grep debian
debian:x:1000:1000:debian,,,:/home/debian:/bin/bash
主なディレクトリpostgres
は次のとおりです/var/lib/postgresql
。
debian@debian:~$ cat /etc/passwd |grep postgres
postgres:x:117:129:PostgreSQL administrator,,,:/var/lib/postgresql:/bin/bash
.psqlrc
またはpsqlrc
ファイルがありません/var/lib/postgresql
。に設定ファイルを作成しました/home/debian/.psqlrc
。
アカウントでシェルに入るとpostgres
sudo -i -u postgres
/home/debian/.psqlrc
ユーザーが(postgresホームディレクトリではなく)設定を呼び出すことができるのはなぜですかpostgres
?
答え1
.psqlrc
psql
コマンドの場合、これはPostgresデータベースです。顧客。これらのクライアントは、システム(または他のシステム)のすべてのユーザーが使用できます。データベースは、他のホストおよびユーザーからの着信接続を受け入れるように構成または構成されない場合があります。
お客様のようなサービス アカウントの場合、postgres
ホーム ディレクトリは、一般的なユーザーのログインに使用されるユーザー アカウントよりも少ない場合があります。特にPostgreSQLの場合、ユーザーのホームディレクトリをデータベースpostgres
のデフォルトの場所として使用することも、競合が発生した場合にPostgreSQLデータベースエンジンのコアダンプがデフォルトの場所を持つように単純に存在することも、何らかの理由でcronが失敗する可能性があります。クローンジョブの結果をメールで送信すると、実行中のジョブにpostgres
ファイルを保存する場所があります。dead.letter
/home/debian/.psqlrc
ユーザーが読むことができ、次postgres
の行がある場合
PSQLRC=/home/debian/.psqlrc
~/.bashrc
userでは、コマンドはpostgres
またはuserとして呼び出されたときにpsql
同じ設定ファイルを使用します。このアカウントを使用して通常のデータベース管理を完了したい場合は便利ですが、主要なデータベースのメンテナンスまたはリカバリ操作を実行するには、ほとんどの場合、データベース管理者がログインする必要があります。debian
postgres
debian
postgres