普通用户登录问题:

root用户登录OK,但普通用户登录时提示:

-bash:/etc/profile Permission Denied

解决办法:

在root的用户下查看etc目录权限,为744;这个权限是有问题的,其他用户没有列出etc目录下文件的权限,所以其他用户登录会报错!

chmod +x /etc  或者   chmod 755 /etc

给/etc/目录加上x权限即可解决问题。

如果root用户也出现该问题,可能的原因是/目录权限问题,

stat /     查看根目录权限,保持为755即可!

另,贴上用户登录过程:

用户登录后加载profile和bashrc的流程如下:

1)/etc/profile-------->/etc/profile.d/*.sh
2)$HOME/.bash_profile-------->$HOME/.bashrc---------->/etc/bashrc

说明:
bash首先执行/etc/profile脚本,/etc/profile脚本先依次执行/etc/profile.d/*.sh
随后bash会执行用户主目录下的.bash_profile脚本,.bash_profile脚本会执行用户主目录下的.bashrc脚本,
而.bashrc脚本会执行/etc/bashrc脚本

至此,所有的环境变量和初始化设定都已经加载完成.
bash随后调用terminfo和inputrc,完成终端属性和键盘映射的设定.

其中PATH这个变量特殊说明一下:
如果是超级用户登录,在没有执行/etc/profile之前,PATH已经设定了下面的路径:
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
如果是普通用户,PATH在/etc/profile执行之前设定了以下的路径:
/usr/local/bin:/bin:/usr/bin

这里要注意的是:在用户切换并加载变量,例如su -,这时,如果用户自己切换自己,比如root用户再用su - root切换的话,加载的PATH和上面的不一样.
准确的说,是不总是一样.所以,在/etc/profile脚本中,做了如下的配置:
if [ `id -u` = 0 ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
fi

如果是超级用户登录,在/etc/profile.d/krb5.sh脚本中,在PATH变量搜索路径的最前面增加/usr/kerberos/sbin:/usr/kerberos/bin
如果是普通用户登录,在/etc/profile.d/krb5.sh脚本中,在PATH变量搜索路径的最前面增加/usr/kerberos/bin

在/etc/profile脚本中,会在PATH变量的最后增加/usr/X11R6/bin目录
在$HOME/.bash_profile中,会在PATH变量的最后增加$HOME/bin目录

以root用户为例,最终的PATH会是这样(没有其它自定义的基础上)
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin

以alice用户(普通用户)为例
/usr/kerberos/bin:/usr/bin:/bin:/usr/X11R6/bin:/home/alice/bin

-bash:/etc/profile Permission Denied相关推荐

  1. 疑难杂症——bash: /dev/null: Permission denied

    描述 在使用 Devstack 的时候需要时常切换用户su stack,此时会触发错误: root@mickeyfan-dev:~# su stack bash: /dev/null: Permiss ...

  2. denied mysql permission_启动Mysql数据库报错误:-bash: ./start.sh: Permission denied

    linux下安装好Mysql数据库后,输入启动命令: cd /home/homework/mysql && ./start.sh 回车后报如下错误: 原因是:该文件未有相关执行权限 解 ...

  3. 解决sodu echo写入文件是权限不足-bash: test.txt: Permission denied

    解决方法 把写入时权限不足的代码: sudo echo 内容 >> 文件.txt 改为: sudo sh -c "echo 内容 >> 文件.txt" 问题 ...

  4. 解决linux的-bash: ./xx: Permission denied/tensorflow 运行cpu还是gpu的方法

    在linux下执行sh文件时提示下面信息: -bash: ./xx.sh: Permission denied 解决: chmod 777 xx.sh 今天在公司的服务器上用tensorflow训练, ...

  5. 解决报错:Can't read private key和./build-aux/cksum-schema-check: Permission denied

    下午在编译和安装openvswitch-2.10.1的Linux内核模块时报错: cd datapath/linux && make modules_install make[1]: ...

  6. Ubuntu16.04 使用sudo cat EOF 编辑文件,提示Permission denied错误的解决办法

    一.执行命令报错 在Ubuntu16.04下,使用如下命令,修改hosts主机文件,居然提示权限错误: catty@node186:~$ sudo cat <<EOF > /etc/ ...

  7. nfs:client mount成功,但是进入目录时出现Permission denied

    刚在CentOS上试用了下NFS,具体的步骤如下: Server端: ①.先确认是否已经安装了相应的服务 [root@localhost /]# rpm -qa |egrep -i "nfs ...

  8. sudo echo x **.** 时 base: : Permission denied

    $ sudo echo print "hello world\!" > hello.py bash: hello.py: Permission denied bash 拒绝这 ...

  9. linux执行.sh文件时,报错:XXX.sh: Permission denied(没有权限)

    linux执行.sh文件时,报错:XXX.sh: Permission denied(没有权限) 解决方法:修改对该文件的权限 例如报错: bash: ./zkServer.sh: Permissio ...

最新文章

  1. 支付方式(2)——支付宝集成及使用
  2. linux下常用FTP命令 1 连接ftp服务器
  3. H. Texas hold'em Poker(2019ICPC区域网络赛沈阳站)
  4. 常见概率分布的Matplotlib实现
  5. mysql物理备份工具Xtrabackup安装配置
  6. test of duplicate control id
  7. android 酷炫倒计时,android 好用的倒计时
  8. -m commit git_Git 天天用,但是 Git 原理你了解吗?不进来了解一下?
  9. (第七天)DOM练习一
  10. 五大步完成JBOSS 5 多数据库的多数据源配置
  11. erp沙盘采购总监的心得_经验分享 让ERP系统操作少走冤枉路
  12. 全面分析游戏限制多开原理
  13. 5种Alexa世界排名作弊方式(转)
  14. Python爬虫爬取LOL所有英雄皮肤
  15. html文件用excel打开乱码,如何解决IE打开Word、Excel乱码问题
  16. 大数据分析R语言RStudio使用教程
  17. 每日算法_4月11日_02
  18. Swift MD5加密
  19. 加拿大卫生部依据NNHPD核准Graminex L.L.C.的PollenBerry(R)
  20. Camera_Engine_Rkisp_User_Manual

热门文章

  1. HASH暴力破解工具-Hashcat
  2. NSURLSession
  3. [Ubuntu]使用dict/dictd英文字典
  4. U-Mail邮件服务器树状通讯录实现智能化应用
  5. 印度HCL揭秘云计算五大盈利模式
  6. 连续 4 年成为“开发者最喜欢的语言”,这门编程语言你了解过吗?
  7. linux日志使用方法,Linux 日志终极指南
  8. matlab绘图z=sin(x,用matlab编写函数文件,实现绘制函数 z= sin(x+y)/(x+y)在【-2:2,-2:2]的图像...
  9. vue指令-循环指令
  10. MapReduce-流量统计求和-FlowBean和Mapper代码编写