Linux:添加用户—su: warning: cannot change directory to /xxx/xxx: Permission denied
文章目录一、添加用户二、问题描述三、错误原因四、解决办法一、添加用户添加新的用户账号使用useradd命令,其语法如下:useradd 选项 用户名参数说明:选项:-c comment 指定一段注释性描述。-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。-g 用户组 指定用户所属的用户组。-G 用户组,用户组 指定用户所属的附加组。-s Shell文件 指定用户的
一、添加用户
添加新的用户账号使用useradd命令,其语法如下:
useradd 选项 用户名
参数说明:
-
选项:
- -c comment 指定一段注释性描述。
- -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
- -g 用户组 指定用户所属的用户组。
- -G 用户组,用户组 指定用户所属的附加组。
- -s Shell文件 指定用户的登录Shell。
- -u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
-
用户名:
- 指定新账号的登录名。
实例1
useradd –d /home/oppo -m oppo
此命令创建了一个用户 oppo,其中 -d 和 -m 选项用来为登录名 oppo 产生一个主目录 /home/oppo(/home为默认的用户主目录所在的父目录)。
二、问题描述
在创建用户时,-d自定义用户主目录为/root目录,创建成功之后,切换用户时,不能切换到用户主目录,结果报错如下
useradd -d /root/phone/vivo -m -c 781990434@qq.com -g phone -G mobile vivo
三、错误原因
提示目录权限不够
su: warning: cannot change directory to /root/phone/vivo: Permission denied
四、解决办法
主要就是修改目录权限,将目录权限修改为 755,及 drwxr-xr-x 即可,当然777大于755肯定也可以,对文件权限不清楚的查看如下博客
https://www.cnblogs.com/sxdcgaq8080/p/7498906.html.
chmod 755 /root
修改你自己权限不够的目录,如果你指定的用户主目录有多层,要保证每一层权限至少为755.
只为解决问题的到这就结束了,下面是我遇到这个问题的解决思路
当我在用户默认主目录 /home 创建并不会遇到此问题
查看 /home 目录的权限,切换到根目录 cd / ,ls -l 查看文件详细属性
查看 /root 目录的权限,如下可看到 root 权限为 550
将 root 目录权限修改为 755
chmod 755 /root
注意一定要 切换到 root 管理员,或者使用 ctrl + d 退出当前登录,再去修改权限,否则提示权限不够
如下可以在创建用户时自定义主目录
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)