解决linux用户切换失败 su:execute /usr/bin 没有权限
2024-08-27 01:18:36
问题描述:
回宿舍前,在root用户中安装fish,并修改其shell为fish。回宿舍之后,在图形界面用root用户进行登陆,莫名其妙登陆失败。没有任何提示信息,直接回到登陆界面。用非root用户登陆后,执行su root命令切换到root用户,报错:su execute /usr/bin/ 权限不够。
经过了一番查询,网友们的操作是将/usr/bin目录权限修改为777,还有一些我看不懂的操作。这么做当然是无效的!
解决办法:
通过查看/etc/passwd,发现/usr/bin是root用户的shell。想到这里,很自然地产生了一个想法,将root用户的shell换成/usr/bin/bash。然后继续执行su root,成功!
成功的原因:
/usr/bin不是shell。root无法把它当做一个登陆shell。因此只需要将它换成一个当前计算机已经安装好的shell就行了。
导致这个错误的原因:
安装fish时,错误地将root的shell修改为/usr/bin。而它本身就不是一个shell,因此无法登陆、无法切换到该目录。
最新文章
- __run_timers() -- 处理全部超时定时器
- Centeros7 环境相关问题
- PHP单引号和双引号对待变量的不同
- grads 用arcgis分析站点的网格
- adb_亮屏
- Linux 系统时钟(date) 硬件时钟(hwclock)
- 《VTL语法参考指南》中文版[转]
- 轻量级的中文分词工具包 - IK Analyzer
- ACM Bone Collector
- django+appium实现UI自动化测试平台---构思版
- golang 通过exec Command启动的进程如何关闭的解决办法 以及隐藏黑色窗口
- 如何用ps简单快速扣头发丝
- response.redirect 与location.href 的区别
- K - Transformation HDU - 4578 线段树经典题(好题)
- 在java1.8下使用jetty报错java.lang.CharSequence cannot be resolved
- [POJ]代码托运站
- C++11并发——多线程std::mutex (二)
- linux文件目录管理命令
- fpm制做mysql-5.6.33 rpm包
- 第二篇:Hadoop 在Ubuntu Kylin系统上的搭建[图解]
热门文章
- update layer tree导致页面卡顿
- 用static声明外部变量与内、外部函数
- Nmap参考指南(Man Page)
- 《Linux服务器的监控》
- 在Linux上编译Hadoop-2.4.0实践与总结
- elasticSearch学习安装
- 【angularjs】使用angularjs模拟淘宝首页-淘宝头条滚动效果
- ssh原理图解
- java kafka单列模式生产者客户端
- Error: Cannot find module 'babel-runtime/regenerator'