系统无法执行su操作案例以及解决问题过程| 学习笔记

简介: 快速学习系统无法执行su操作案例以及解决问题过程。

开发者学堂课程【线上Linux服务器优化经验系统无法执行su操作案例以及解决问题过程】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/382/detail/4808


系统无法执行su操作案例以及解决问题过程

 

一、几个故障处理和优化案例

1.系统无法执行 su 操作

问题现象表示为:

su: warning:cannot change directory to /home/iiveylinux:Permission denied

su: /bin/bash:Permission denied

通过现象可以看出是权限方面策略问题,可以对其进行如下操作:

[root@pmp-rtb1 /]# cd /home/

[root@pmp- rtb1 home ]# 1s

Iiveylinux

[root@pmp-rtb1 home]# su一iiveylinux

su: warning:cannot change directory to /home/iiveylinux: Permission denied

su:  /bin/bash: Permission denied

[root@pmp- rtb1 home] #

解决思路:

从上面错误提示首先想到是权限出现了问题,那么可以从权限入手进行排查,

基本思路如下:


(1)用户目录/home/oracle权限问题;

[root@pmp-rtb1 home ] # cd /home/

[root@pmp-rtb1 home]# ls

Iivey linux

[root@pmp-rtb1 home]# 11

total 4

Drwx-----2 iiveylinux iivey 1inux 4096 Feb 28 15: 11 iiveylinux

[root@pmp-rtb1 home ] #

[root@pmp-rtbl iiveylinux]# 11

Total 0

[ root@pmp-rtb1 iivey 1inux ]# 1s  -al

total 24

(通过实际操作发现,用户目录权限没有问题)

 

(2) su程序执行权限问题;(su本身是一个命令,su权限没有问题,su本身没有缺少库文件)

 

[root@pmp-rtb1 iiveylinux]# 11 /sbin/su

1s: cannot access /sbin/ su:No such file or directory

[root@pmp-rtb1 iivey1inux]# 11/bin/su

-rwsr-xr-x. 1 root root 34904 Jun 25  2014 /bin/su

[root@pmp-rtb1 iivey1inux] #

 

排除su权限的命令问题

[root@pmp-rtb1 iiveylinux]# 1dd /bin/su

linux-vdso.so.1 => (0x000O7fff99bff000)

1ibpam. so.0 =>/ 1ib64/ libpam. so. O (0x000O7 f1fc7605000)

1ibpam_misc.so.O => /lib64/libpam_mis.so.0 (Ox00007 f1fc7401000)

libc.so.6 => /lib64/libc.so.6(0x000Of1fc706c000)

libaudit.so.1=>/lib64/lbaudit.so.1(0x00007 f1fc6e50000)

Libd1.so.2=> /lib64/libdl.so.2(0x00007flfc6c4c000)

Libcrypt.so.1=> /lib64/libcrypt.so.1(0x00007flfc6a14000)

/lib64/ld-linux-x86-64.so.2(0x0000003642000000)

Libfreeb13.so=> /lib64/libfreeb13.so(0x00007flfc679d000)

[root@pmp-rtb1 iivey1inux]#

su命令本身也没有问题


(3)程序依赖的共享库权限问题;(程序依赖的共享库没有问题)

selinux 问题导致;

[root@pmp-rtb1 iivey1inux]# more /etc/se1inux/config

# This file contro1s the state of SELinux on the system .

SELINUX= can take one of these three values :

 

# enforcing-SELinux security policy is enforced

# permissive-SELinux  prints warnings instead of enforcing.

SELING=disabled

#   SEL INUXTYPE= type of policy in use. POSSible values are:

#    targeted -only targeted network daemons are protected

#strict- Full SELinux protection.

SEL INUXTYPE=targeted

[ root@pmp-rtb1 iiveylinux]# setenforce  0

setenforce: SELinux is disabled

[ root@pmp-rtbl iivey1inux]#

[ root@pmp-rtb1 i ivey1 inux]# su - iivey1 inux

su: warning:. cannot change directory to/home/iiveylinux: Permission denied

su:/bin/bash: Permiss ion deni ed

[ root@pmp-rtb1 iiveyLinux]#

Vipw: /etc/passwd is unchanged

[root@pmp-rtbl iiveylinux]# cd /home /

[root@pmp-rtb1home]# ls

iivey1inux

[root@pmp-rtb1 home ]# 1s-al

 

total 12

drwxr-xr-x 3root root 4096 Feb 28 15: 11

drw- rW- rw-23 root root 4096 Feb 26 16:31

drwx------ 2 iiveylinux. iiveylinux 4096 Feb 28 16:11 iiveylinux

[root@pmp-rtb1 home ]# cd iivey 1inux/

[root@pmp-rtb1 iiveylinux]# 1s -al

 

Total 24

drwx ----- 2 iiveylinux iiveylinux 4096 Feb 28 15: 11

drwxr-xr-x. 3 root   root  4096 Feb 15:11

-rw-------1 iiveylinux iiveylinux 5 Feb 28 15:11 bash_ history

-rw-r--r--1 iiveylinux iiveylinux 18 Oct 16 2014 bash_logout

-rw-r--r--1 iiveylinux iiveylinux 176 Oct 16 2014 bash_profile

-rw-r--r--1 iiveylinux iiveylinux 124 Oct 16 2014 bashrc

[ root@pmp-rtb1 iiveyLinux]#

 

(通过系统操作发现selinux没有关闭,所以selinux不存在问题)

 

(4)系统根空间问题;

(通过系统执行发现,根空间较大,故不存在问题)

[ root@pmp-rtb1 , ]# stat /

File:

size:4096  Blocks: 8   IO Block:4096  directory

Device: fco1h/64513d  Inode: 2  Links:23

Access :(0666/ drw- rw-rw-)  uid:(  0/ root )Gid: ( 0/ root )

Access :2016-02-28 15:15 03.808745379 +0800

Modify:2016-02-26  16:31:47.525999939 +0800

Change :2016-02-28 15:12:50.894753170 +0800

[ root@pmp-rtb1 /]#

 

2. 如上所示,进行一一排查之后,可以考虑登陆设备权限是否被限制,登陆设备权限不存在问题,那么接下来的操作,应该始终把现象和我们的思路紧密联系在一起.

 

3. 最后再回到 /home/iiveylinux: Permission denied 上来,再执行 ls-al 命令,执行完之后,

通过查看发现 iiveylinux 目录权限没有问题。

继续drw-rw-rw. 23 root root 4096 Feb 26 16:31..可以看到出现了drw-rw-rw-.

对应两个点(在目录里面一个点代表当前目录,即/home目录;两个点表示上一级目录)

 

4.在系统操作里面两个点对应的是drw-rw-rw-.执行操作发现是根目录的权限存在问题。

在实际操作中,可以通过ls-al查看根目录是否存在问题,如果想对根目录是否存在问题查看的更为详细,

可以执行stat命令,具体操作输入stat/,执行之后,重点关注Access:(0666/drw-rw-rw-),发现根目录没有执行权限,显然错误。

 

通过查看 Access: 2016-02-28 15:15:03. 808745379 +0800  ;Modify: 2016-02-26 16:31:47.525999939 +0800;Change: 2016-02-28 15:12:50.894753170 +0800 可以看到 Access(访问目录的时间),Modify (修改目录的时间),Change(改变目录的时间)。

 

通过查看 Access、Modify、Change 可以追溯是什么原因导致的,比如是否是人为因素。

 

发现问题之后,接下来考虑如何解决问题。

 

(5)根目录必须有执行权限所以可以通过赋予根目录权限来解决问题。

相关文章
|
11天前
|
机器学习/深度学习 数据挖掘 测试技术
自学Python的系统策略与步骤
通过遵循这些步骤和策略,你可以系统地自学Python,并有效地构建和深化你的编程知识和技能。
17 6
|
2月前
|
Shell
Shell基础知识(三)——流程判断
Shell基础知识(三)——流程判断
34 3
|
5月前
|
存储 开发工具 数据库
认识HIS系统 HIS系统的主要功能解释说明
HIS系统即医院信息系统(全称为Hospital information System) ,是指利用计算机软硬件技术和网络通信技术等现代化手段,对医院及其所属各部门的人流、物流、财流进行综合管理,对在医疗活动各阶段产生的数据进行采集、存储、处理、提取、传输、汇总,加工形成各种信息,从而为医院的整体运行提供全面的自动化管理及各种服务的信息系统。
376 5
|
5月前
|
测试技术
如何做好测试执行工作?
如何做好测试执行工作?
28个案例问题分析---08---让软件的使用者成为软件的设计者--思想
28个案例问题分析---08---让软件的使用者成为软件的设计者--思想
63 0
|
运维 安全 Oracle
系统无法执行su操作案例以及解决问题过程| 学习笔记
快速学习系统无法执行su操作案例以及解决问题过程。
401 0
|
测试技术
软件测试面试题:lr中,如果你想停止执行出错的脚本,怎么做?
软件测试面试题:lr中,如果你想停止执行出错的脚本,怎么做?
83 0
|
编解码 Shell 测试技术
测试人员一定要懂的ADB操作,赶紧来看一看~
测试人员一定要懂的ADB操作,赶紧来看一看~
358 0
|
运维 安全 Oracle
系统无法执行su操作案例以及解决问题过程
系统无法执行su操作案例以及解决问题过程