创建新用户,如何在 SSH 登录后运行命令?(Ubuntu Server Trusty)

创建新用户,如何在 SSH 登录后运行命令?(Ubuntu Server Trusty)

我已经根据自己的需求配置了 Ubuntu Server,基本上一切都按我的意愿运行。我是 Linux 新手,但通过使用和解释不同的指南学到了很多东西,然而,这个特殊问题让我很头疼。因为我不想弄乱权限等,所以我想寻求你的帮助。

我使用最新的 Webmin。我可以轻松创建新用户(我也使用命令行与我的默认用户一起创建)。我可以使用 ssh test@ip 登录 ssh,我有用户的主目录,但我无法执行任何命令,如 ls、ifconfig,什么都不能执行。我读到我应该使用相对路径等。但我想要的是实现新用户具有与安装 Ubuntu 时配置的用户相同的默认权限,并用作默认权限。我还读到 bash 需要配置一些 PATH 变量,但我不明白那部分。

我的默认用户是“server”,运行良好。假设我创建了一个新用户“test”。你能一步一步指导我下一步怎么做吗?

另外,如果我希望新用户“test”能够访问用户“server”创建的文件,并且“server”能够访问用户“test”创建的文件,我需要将用户“test”添加到用户“server”组中吗?

非常感谢!

答案1

创建新用户的正确方法是使用adduser二进制文件(它涵盖了从用户密码到组和主文件夹创建的所有内容,这要归功于@muru @Takkat为了指出这一点,命令手册页):

 ubuntu@ip:/$ sudo adduser testuser
 Adding user `testuser' ...
 Adding new group `testuser' (1003) ...
 Adding new user `testuser' (1002) with group `testuser' ...
 Creating home directory `/home/testuser' ...
 Copying files from `/etc/skel' ...
 Enter new UNIX password:
 Retype new UNIX password:
 passwd: password updated successfully
 Changing the user information for testuser
 Enter the new value, or press ENTER for the default
         Full Name []: 
         Room Number []:
         Work Phone []:
         Home Phone []:
         Other []:
 Is the information correct? [Y/n] Y

这将创建名为的用户testuser,并在 中为他们提供自己的主目录/home/testuser。新主目录中的文件是从/etc/skel包含默认主目录文件的文件夹复制而来的。如果您想要为用户设置默认值,可以通过修改或添加该目录中的文件来实现。如果您希望新用户拥有与server用户相同的环境,只需将这些文件从server主目录复制到testuser主目录(确保复制后每个文件的所有者均为 testuserchown testuser:testuser .bash_profile等):

.bash_profile .bashrc .inputrc .mkshrc .profile

是的,如果您希望两个用户都能访问他们的文件和文件夹,您必须将他们每个人都添加到其他用户组:

adduser server testuser
adduser testuser server

用户可以访问的内容由该组的文件夹/文件权限决定(例如,为了让用户 testuser 读取和写入服务器主文件夹中的文件 test.txt,它必须至少具有 760 的权限)。您可以通过执行

$ ls -al
drwxrwxr-x   3 server server    4096 Jun 14 10:11 test.txt

权限

相关内容