由于最近服务器中莫名出现用户消失(即用户无法登录,通过passwd命令发现该用户不存在了),但用户文件夹还保留的情况。最后通过直接重新创建一个同名用户,并将目录指向原本用户的目录暂时解决了这个问题。其中涉及到部分Ubuntu使用相关的命令,在此进行记录。
用户的查询可以用以下命令查询服务器中所有的用户,这里可以看到每个用户的主目录和其他信息。
grep bash /etc/passwd用户目录内容权限的修改: ls -l /chmod
为了防止创建 *** 作对用户目录中的内容产生影响(虽然理论上应该不会),所以先通过WinSCP将目录中的重要内容备份出来。这里遇到的第一个问题是,虽然我有管理员权限,但WinSCP在进行复制的时候并没有sudo权限,导致我不能完整的备份其内容。最开始我尝试通过设置SFTP连接权限的方法解决,但一直出现报错:“连接被意外关闭了。服务器发动命令的退出状态1”(如果有大佬知道为什么请赐教)。
所以最后采用土办法:把所有要备份文件的权限都改为所有用户可读写。
首先用ls -l命令查看文件的权限,具体权限的描述可以参考这里。
之后通过chmod可以将文件夹的权限进行修改:
sudo chmod -R 777 [path]
其中-R表示递归 *** 作,即修改文件夹及其所有子目录;777表示修改权限为所有用户可读可写可执行
用户的创建:adduser这里直接使用ubuntu的命令adduser进行用户创建:
sudo adduser [username]
输入命令后除了按提示输入密码,基本只要一路回车就创建完成了。
相应的如果需要将权限改回来
用户主目录的修改:chown/ usermod创建完新用户后,登录发现其主目录默认被设置在/home/[username]中。需要将其调整回原来所在的/user/[username]中。
首先将原本主目录的所有权赋予新创建的用户:
sudo chown [username]:[username] /user/[username]
这里冒号前后其实应该是[username]: [groupname]但我们的服务器里都是一个用户一个用户组,所以两个名字是一样的。
之后更改用户的主目录:
sudo usermod -d /user/[username] [username]
其中 -d表示修改用户的主目录。
参考文献ubuntu查看所有用户
ubuntu服务器中新建用户及设置主目录
ubuntu下更改用户主目录
ubuntu 用户与用户组
Ubuntu用户权限管理(chown, chmod)
Linux usermod命令
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)