最新のハードウェア/OSアップデートにより、ドメイン全体にFQDNを実装しました。これで、リモートサイトにSSH経由でアクセスすると、ターミナルセッションで正しいプロンプトが表示されなくなります。複数のサイトに頻繁にSSHを介して接続し、どのサイトに接続してもすべてのプロンプトが同じでない限り、これは問題ではありません。 FQDNを実装する前に、以前に各サイトゲートウェイサーバーのホスト名をサイト名(site1、site2など)に設定していたため、ログインプロンプトを介して各リモートターミナルセッションで接続しているサイトを識別できました。
RHEL 7はホスト名FQDNを使用します。
user1@site1:/home/user1
# hostnamectl status
Static hostname: gwsrv.site1.system.division.company.com
Pretty hostname: site1
Icon name: computer-server
Chassis: server
Machine ID: 988c77c116d744fb8b26629aab7beace
Boot ID: b56bd8e144924560a9051dafbd2ac867
Operating System: Red Hat Enterprise Linux Server 7.3 (Maipo)
CPE OS Name: cpe:/o:redhat:enterprise_linux:7.3:GA:server
Kernel: Linux 3.10.0-514.el7.x86_64
Architecture: x86-64
/etc/profile.d/profile.sh を使用してプロンプトを変更し、期待どおりにプロンプトの形式を指定しました。
PS1=`/usr/bin/whoami`@`/usr/bin/hostnamectl --pretty`:'$PWD
# '
リターンプロンプト:
user1@site1:/home/user1
#
root権限で権限を上げると、同じメッセージが表示されます。
user1@site1:/home/user1
# su
Password:
root@site1:/home/user1
#
ただし、別のユーザーに変更すると、別のメッセージが表示されます。
user1@site1:/home/user1
# su user2
Password:
[user2@gwsrv user1]$
他のユーザーでSSHに接続しても構いません。すべてのユーザー(user1とrootを除く)のプロンプトは同じプロンプトを提供します。
[user#@gwsrv ~]$
この他のプロンプトをuser1やルートのプロンプトと同様に変更するには、どのファイルとどの行を変更する必要がありますか?
[user#@site1 ~]$
特に、gwsrvではなくこのサイトにログインしていることを示すために必要です。
助けてくれてありがとう。
答え1
の構成は、/etc/profile
ユーザーのホームディレクトリ(たとえば~/.bash_profile
)の設定によって上書きされ、しばしば上書きされます。ユーザーが自分の環境で設定するのを防ぐメカニズムを実装せずに、ユーザーPS1
に特定のプロンプトを表示するように強制する方法はありません。
あなたできる状況を変更できる候補者を特定するなどの作業を行いますが、grep 'PS1=' /home/*/.*
徹底する必要はありません。