Ubuntu 创建用户

news/2024/7/9 20:46:35 标签: ubuntu, postgresql, 数据库, linux, bash, 服务器

ubuntu系统中创建用户,是最基本的操作。与centos7相比,有较大不同。

我们通过案例介绍,讨论用户的创建。

我们知道,在linux中,有三类用户:超级管理员 root 具有完全权限;系统用户 bin sys admin ip等,是不需要登录的服务;普通用户,通过adduser添加的用户,具有较少的权限,仅能操作用户家目录的文件等。

而在linuxubuntu版本中,又多出两类用户:安装ubuntu系统的源用户xxx,其与root具有相同权限,仅在执行命令时,前面加sudo。在centos7中没有这项设计,而在centos8中有这类设计;通过把普通用户添加到sudo组中,使普通用户具有root权限。

一、环境

主机操作系统Win7,在虚拟机VMware 15中使用guo账号,安装Linux系统,版本为ubuntu 22.04

查看系统发行版本:

        lsb_release -a

        uname -a

而用-r选项可以查看系统内核

        uname -r

二、设置root

在系统安装完成后,并不能用root账号登录。必须先由账号guo为root账号设置密码

sudo passwd root

即使设置了root密码,注销guo用户后,仍然不能使用root登录(通过远程登录同样如此)。

三、创建普通账号

在系统中,创建新的用户或称为账号,一般需要多步操作。因系统设置不同,多有差别。

1. 创建账号

使用adduser创建账号,命令如下:

        adduser username

username为要创建的账号名

我们以添加li1用户为例:

我们用guo用户添加普通账号(用户),命令前面要有sudo

执行命令后,需要验证guo身份,成功后才执行添加账号的命令

2.设置密码

期间需要输入两次密码。第一次用于设置密码,第二次用于确认密码。

注意,输入密码时,看不见输入的字符。输入后回车即可。

设置密码需要8位及以上,含有数字、特殊符号、大小写字母等,否则提示有问题。

设置密码后,需要设置账户信息,这里可以采用默认,全部回车,最后输入Y确认即可:

添加用户后,默认会在/home路径下创建一个与用户名相同的用户目录。

3.验证

a.家目录

因为在/home目录下有其他信息,可以搜索一下li1:

切换到li1目录,可以查看一下所有文件:

其中的.kshrc是本人在配置文件中作了其他设置后产生的,默认不存在。

b.id

正常情况下,新的用户其uid和gid都从1000开始,小于1000的为系统用户。

每增加一个新用户,系统将从现有uid和gid中,查看上一个用户账号的uid和gid,加1后再作为新用户的uid和gid。

c.其他信息

执行cat /etc/passwd,也可以查看最近添加的用户

uid小于1000的,是系统账号,位于文件的前方,后面才是普通用户。

        tail -5 /etc/passwd

四、创建普通管理员

我们创建一个普通管理员,可以添加sudo后具有root权限(可以执行root才有权执行的命令),以li2为例。先添加用户,再添加到sudo组中,最后验证一下。

1. 添加新用户

方法如前

2.添加到sudo组

让一个普通用户具有更多权限,可以把普通用户添加到sudo组中。

一般是执行visudo命令,为普通用户添加部分管理权限!!!

将新用户添加到sudo组:

        adduser username sudo

3.验证

我们利用li2添加一个新用户li3

普通用户确实具有普通管理员功能。

五、删除账号

当我们不需要某一账号时,可以执行删除命令

由普通账号切换到root账号:

        su - root

删除账号命令

        deluser 用户名

注意:删除普通用户时,家目录及其内容也同时删除

六、案例比较

为了执行命令方便,我们用root身份执行各个命令。

1.命令比较

在centos7中,添加用户的命令是useradd,删除用户的命令是userdel

我们在Ubuntu中能否用此命令呢?

可以使用,但有所不同

执行useradd命令后,并没有添加家目录。可以通过添加选项 -m添加同名家目录

2.shell比较

因为添加用户的命令不同,造成添加家目录的方式也不同,同时,也会造成用户的shell也不同:

useradd命令添加的用户shell

adduser命令添加的用户shell

一个是bash,另一个是sh。这也是提示我们,命令应用有问题。不能把centos7中学习的命令用在ubuntu中。

如在ubuntu中用useradd命令创建一个用户,与用adduser命令基本一致,可以这样:

        sudo useradd -m -s /bin/bash username

        userdel -r username

对于moduser命令,不能在ubuntu中使用,仍然可以使用usermod命令:

小结

1.ubuntu中,用命令adduser添加账号/用户,而与centos7中的useradd命令多有不同。

2. ubuntu中,用命令deluser username可以直接删除用户账号及家目录,而用centos7中的命令userdel -r username才能达到同样目的。

3. ubuntu中,没有moduser命令,centos7中的usermod修改用户信息的命令,同样可以用在ubuntu中。


http://www.niftyadmin.cn/n/5152819.html

相关文章

VBA将字典按照item的值大小排序key

方法:利用数组交换位置 sub 字典排序() s 0 Dim arr(dic1.keys)将字典key和value存入一个数组中 For Each ke In dic1.keysarr(s) Array(ke, dic1(ke))s s 1 Next进行排序 For i LBound(arr) To UBound(arr) - 1For j i 1 To UBound(arr)If arr(i)(1) >…

Technology Strategy Pattern 学习笔记2-Creating the Strategy-World Context

Creating the Strategy-World Context 1 PESTEL 1.1 从6个方案看外部 PoliticalEconomicSocialTechnologicalEnvironmentalLegal 1.2 参考URL https://zhuanlan.zhihu.com/p/192522082https://www.docin.com/p-449396129.htmlhttps://blog.csdn.net/xiaoyw71/article/deta…

Microsoft Dynamics 365 CE 扩展定制 - 5. 外部集成

本章内容包括: 使用.NET从其他系统连接到Dynamics 365使用OData(Java)从其他系统连接到Dynamics 365使用外部库从外部源检索数据使用web应用程序连接到Dynamics 365运行Azure计划任务设置Azure Service Bus终结点与Azure Service Bus构建近乎实时的集成使用来自Azure服务总线…

学习c++的第十一天

目录 继承和派生 基类 & 派生类 访问控制和继承 派生类的构造函数 派生类的析构函数 继承类型 多继承 重载运算符和重载函数 函数重载 运算符重载 可重载运算符/不可重载运算符 运算符重载实例 继承和派生 先来说继承,这与现实生活中的继承意思差不…

aardio使用任意版本Python的用法

aardio中调用python的方法有两种,py3 和 process.python模块 py3模块:如果经常要拿到python返回的值或从aardio中传数据给python去处理,aardio和python的交互比较多的话,可以考虑使用py3模块,缺点是:py3模块使用起来比较麻烦些,尤其是在异步多线程操作的话,中间需要学习…

java中:cmd界面输入javac后提示:找不到或无法加载主类,怎么解决

找不到或无法加载主类 检查环境变量待续、更新中 检查环境变量 CLASSPATH 少写.;安装jdk过程有两部,一步为安装jdk文件夹,全部一致; 另一步为安装jre文件夹与jdk文件夹不一致(或者文件夹安装位置, 一路全部默认)path中将java变量移到顶端关闭cmd界面,重新打开即可文件路径错误…

自定义类型联合体

目录 联合体联合体类型的声明联合体的特点相同成员的结构体和联合体对比联合体大小的计算联合体的应用联合的一个练习 感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接 🐒🐒🐒 个人主页 🥸🥸&#x1f…

全局变量和局部变量在for循环的使用

imageloc字典作为全局变量,然后添加到全局的列表中,每次for循环都会将最新的元素改变之前for循环添加的元素。而imageloc字典作为局部变量,则不会影响。 import numpy as np originaljson [{"joints_vis": [1,1,1,1,1,1,1,1,1,1,…