Ubuntu远程服务器创建新用户并赋予权限

本文介绍了如何在Ubuntu远程服务器上创建新用户,并详细阐述了赋予新用户sudo权限的过程。通过修改文件权限和将新用户加入特定组,成功解决文件夹写权限问题。

远程登陆服务器

首先要有一个已获取sudo权限的用户,利用ssh命令来登陆服务器:

ssh xxx@ip

xxx为用户名,ip为服务器ip地址

创建新用户

sudo adduser username  # username是你设置的用户名

输入这个命令后会提示输入密码、确认密码,然后是设置个人信息,可以全部按enter设置为空。

添加权限

上面的步骤让我们可以通过新用户来登陆服务器,但在运行sudo时会出现以下提示:
xxx is not in the sudoers file. This incident will be reported.
因此需要切换到已有sudo权限的用户登陆服务器,并通过修改/etc/sudoers文件来添加权限。

  1. sudo chmod +w /etc/sudoers/etc/sudoers文件添加写权限
  2. sudo vim /etc/sudoers利用vim来添加一行:username ALL=(ALL) ALL
    在这里插入图片描述
  3. sudo chmod -w /etc/sudoers撤销文件的写命令

使用自己的用户登陆之后,我发现我对存放数据的data盘没有写权限,连创建文件夹都需要加上sudo才能成功,虽然也能用,但是很烦,捣鼓了一阵之后终于解决了。
首先使用ls -ld查看/data文件夹的权限:
在这里插入图片描述
左边那10个字母就代表了权限:d表示这是个文件夹,紧接的9个字母每3个表示拥有者、组、其他用户对/data的读、写、操作权限。因此第一个rwx表示拥有者对/data有读、写、操作权限,后面两个r-x都说明组内用户和其他用户都没有写权限。
奇怪的是我修改/data的权限,给组内用户和其他用户都加上了写权限之后也还是不能对/data进行修改,目前还不清楚原因是什么。
另一个解决方法相对安全和正确,就是把自己新建的用户加入到这个文件夹拥有者所在的组,然后仅给组内用户增加写权限。

  1. 使用groups user来查看user所在的组,一般有多个
  2. 使用gpasswd -a user groupuser加入到group组中
  3. 使用chmod g+w /data给组用户增加权限
  4. 再次查看文件夹权限:
    在这里插入图片描述
    问题解决。

另外,之前使用sudo来创建的文件夹的拥有者是root用户,因此还是会没有写权限;而在这之后创建的文件夹的拥有者就是我自己的用户了,默认拥有全部权限。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值