我在这里有一个运行Ubuntu 14.04.2 LTS(GNU / Linux 3.16.0-30-generic x86_64)的VM,我们通过用户对其进行访问,让我们对其进行调用,userx
因此每次通过以下方式登录到此VM时ssh
:
ssh -p 22 [email protected]
它会自动将用户更改为root,从而以以下方式输入计算机:
root@machinename:~#
如果我运行pwd
它,则表明我在userx
文件夹中/home/userx
。如果我运行su userx
它,请再次以root用户身份登录。
所以在登录时我如何改变这样userx
我实际上得到作为登录userx
样userx@machinename:~#
?
根据评论中的要求进行编辑:
root@machinename:~# grep userx /etc/passwd
userx:x:0:0:somename,,,:/home/userx:/bin/bash
我更改了somename
保留隐私的价值。我认为这是团体吗?
root@machinename:~# ls -l /home
total 4
drwxr-xr-x 10 1000 userx 4096 Nov 8 11:10 userx
问题是“ userx”是根用户。根由UID标识为0,如/ etc / passwd中所示
userx:x:0:0:somename,,,:/home/userx:/bin/bash
请参阅https://www.cyberciti.biz/faq/understanding-etcpasswd-file-format/了解输出。
因此,尽管它是中等侵入性的,但您可以做的是从根外壳执行所有这些操作!!!
在您的情况下,您将需要手动编辑etc/passwd
和/etc/groups
nano /etc/passwd
编辑userx行
userx:x:1000:1000:somename,,,:/home/userx:/bin/bash
然后/ etc / groups
至少
userx:x:1000:
当您在那里时,可以根据需要将userx添加到其他组。在行尾添加userx,如果需要,用逗号分隔(将此列表从桌面安装中发布)。您可以根据需要将自己添加到其他组(www-data吗?)
adm:x:4:syslog,userx
cdrom:x:24:userx
sudo:x:27:userx
dip:x:30:userx
plugdev:x:46:userx
lpadmin:x:118:userx
userx:x:1000:
sambashare:x:128:userx
然后设置ssh(如果需要)
cp -R /root/.ssh /home/userx
chown -R userx:userx /home/userx
在退出根目录之前,请先从客户端测试ssh和sudo
ssh [email protected] #you do not need to specify the port if it is the default
现在假设您可以通过ssh进行测试,请测试sudo
sudo -i
只要您可以通过ssh登录并获得root shell,您就可以使用。
如果您有问题,则需要回发,我们可能需要配置ssh和/或sudo
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句