在克隆安装EBS应用时,使用了其他用户进行了安装操作(ebsapp),但是不符合规范要求,就需要更改整个应用服务的用户。
一、前提条件:
1、需要应用的全部服务停机;
2、需要使用 root 用户;
3、需要新用户的属组和原用户的属组保持一致;
4、变更之后,需要将原用户的环境变量添加到新用户的环境变量中;
二、操作步骤
- 使用shell工具,登录应用服务器的原应用用户
ebsapp/ebsapp
- 执行关停服务的脚本,将所有应用服务全部停止
sh $HOME/stopapp.sh
sh $ADMIN_SCRIPTS_HOME/adstpall.sh
- 检查进程,确认并发任务是否已经全部关闭
ps -fu ebsapp | grep FND
sh $ADMIN_SCRIPTS_HOME/adcmctl.sh stop apps/apps
- 登录 root 用户
su - root
- 确认原用户的用户组情况
[root@swsitap ~] id ebsapp
uid=1205(ebsapp) gid=1205(oinstall) groups=1205(ebsapp),1206(dba)
- 根据属组情况,建立新的目标用户
[root@swsitap ~] useradd -g oinstall -G nft -d /home/ap/applprod applprod
[root@swsitap ~] id applprod
[root@swsitap ~] passwd applprod
-
确认新旧用户数组信息:
确认两个用户的属组情况是否一致,若不一致,则删除新建的用户,重新建立,确保原有用户和新用户的属组保持一致。 -
更改目录用户属主
在root用户下,从根目录开始,直接将整个应用安装的目录,全部改变属主为新用户;
[root@swsitap ~] chown -R applprod:oinstall /u01
- 将相关脚本转移到新用户的主目录下
[root@swsitap ~] cd /home/ebsapp
[root@swsitap ~] cp startapp.sh stopapp.sh /home/ap/applprod/
[root@swsitap ~] cd /home/ap/applprod
[root@swsitap ~] chown applprod:oinstall startapp.sh stopapp.sh
- 更新用户环境变量
更改新用户的环境变量,使之与原有用户的环境变量保持一致,退出root用户登录,同时登录applprod用户和ebsapp用户,对环境变量进行编辑:
[ebsapp@swsitap ~] cat .bash_profile
[ebsapp@swsitap ~] su - applprod
[applprod@swsitap ~] pwd
/home/ap/applprod
[applprod@swsitap ~] vi .bash_profile
编辑完成之后保存,并使其生效
[applprod@swsitap ~]$ source .bash_profile
E-Business Suite Environment Information
----------------------------------------
RUN File System : /u01/UAT/ebsapp/fs1/EBSapps/appl
PATCH File System : /u01/UAT/ebsapp/fs2/EBSapps/appl
Non-Editioned File System : /u01/UAT/ebsapp/fs_ne
DB Host: uat.ebs.com Service/SID: UAT
Sourcing the RUN File System ...
- 重启应用
在新用户下,执行startapp.sh 脚本,启动应用服务,确认无报错,全部服务均成功启动之后,即为更改用户属主成功。
+++========================================================+++
以上内容仅为个人学习记录使用。
如有转载,请附有原文出处链接。