IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Linux中用户、组管理及环境变量 -> 正文阅读

[系统运维]Linux中用户、组管理及环境变量

摘要

Linux操作系统是多用户、多任务系统——允许多个用户同时登陆Linux系统并同时启动多个任务。用户账号和用户组是进行身份鉴别和权限控制的关键。

多用户系统

动态的Linux系统(多用户运行级别)允许多个已经注册的用户同时登录并使用计算机
登陆方式:图形界面方式和字符界面方式,每种方式都有两种模式。见下图:在这里插入图片描述
相较而言,字符界面可以完成全部功能且效率高,它的默认虚拟终端数有6个。图形界面可完成部分功能,默认虚拟终端数1个。Linux系统默认提供6个登陆屏幕(Ctrl+Shift+Fn进行切换),F1为图形界面,F2~F6为黑白字符界面。

用户

用户:可以理解为账号。使用Linux的用户,信息必须实现在Linux中登记。
用户分为三类:

  1. root用户的权力没有限制,UID和GID都是0 。超级用户的作用是管理系统,例如创建用户、给硬盘分区、配置网络。
  2. 系统用户的权限受到限制,系统用户在安装Linux或系统软件时自动创建,UID小于1000,系统用户不能登录。
  3. 普通用户由root用户创建并分配给Linux系统的使用者,权限有限制,UID一般大于等于1000.

登记信息如下所示:
在这里插入图片描述
登陆Shell:常用的登录Shell程序有Bash、tcsh、dash等,默认Bash,最为流行。还有一些特殊的Shell,如nologin、false,两个都执行立即退出系统。另外,用户编写的应用程序也可以作为登陆shell。
用户信息主要保存于文件 /etc/passwd 中,加密后的密码保存在 /etc/shadow
/etc/passwd每一行对应一个用户,格式如下:

用户名:密码:UID:GID:备注:家目录:登陆Shell
liu:$6$87wjhhWS$j3fhTh_sQW:1000:500::/home/liu:/bin/bash
#GID 用户主要组群组号

#密码的位置表示的为加密后的密文。此种加密算法不可逆推。
在这里插入图片描述
/etc/shadow每一行也对应一个用户,格式如下:

> 账号:密码:最后一次修改密码的日期:密码有效期最少天数:密码有效期最多天数:密码修改警告期:密码禁用期:账号过期日期:保留字段

#上一次更改密码的日期:具体表示为从1970年1月1日以来的天数
#密码有效期最少天数、最多天数,为0或为空都是没有限制。如果后者小于前者,那么用户不能修改密码。
#在密码禁用期用户上线时会被要求强行修改密码,过了禁用期未修改密码,账户将被冻结,解冻后才能正常使用。

这些参数的关系表示为下图:
在这里插入图片描述
例子如图所示:
在这里插入图片描述

组群概念如图所示:
在这里插入图片描述
登记一个组群需要三个信息:组群名、组群ID和改组群的成员用户。这些信息都保存在/etc/group中,每一行对应一个组群(组群名必须唯一,组号允许不唯一),格式如下:

组群名:密码:组号:组群用户成员

密码位置是一个x,加密后的密码放在/etc/gshadow文件中,对于组群的密码,实际意义不大。

用户与组管理

用户和组的管理包括创建、删除、修改属性、修改密码等。所有操作都需要root权限。采用命令方式时,Linux的命令用法格式:

<命令> <选项> <目标>

文件/etc/login.defs定义了组群和用户的默认参数,在创建时,若没有给出相应参数,就取默认值。利用 cat或tail或more /etc/login.defs 查看属性默认值吧。
图形界面上,可以采用文本编辑器浏览此文件内容。

用户管理

创建用户(useradd),以下一些示例:

useradd -m zsan  #Ubantu中需加上参数-m才会创建用户家目录
useradd -u 1005 -d /home/lisihome -g sales1 -s /bin/bash lisi
#创建用户lisi,UID为 1005,家目录为/home/lisi 主要组群sales,登陆Shell为bash
<参数> <设置对应值>
-u UID 
-d 家目录  
-g 主要组群  
-G 附加组群  
-s 登陆Shell 
-e 用户有效日期(写年月日格式)  
useradd -r -s /bin/false ldap  #创建用户ldap,Shell为false,这里不会创建系统用户的家目录

删除用户(userdel):只能删除已经存在的用户

userdel zsan1    #删除用户zsan1
userdel -r zsan   #用户zsan及其家目录一起删除
userdel -f -r zsan  #强制删除zsan,即使zsan已经登陆

修改用户属性(usermod)

usermod -l zsan2 zsan1 #修改zsan的用户名为zsan2
usermod -d /opt/zsan -s /bin/tcsh -g grade1 -G class2 -a -u 1020 -m zsan

用户密码管理(passwd)

passwd -l zsan #锁住zsan。被锁后用户不能登陆
passwd -u zsan #解锁
passwd zsan #修改zsan的密码,由本人或root才能执行
passwd -d zsan #删除zsan的密码,zsan可以无密码登陆
passwd -n 10 -x 20 -w 3 -i 5 zsan  
#修改zsan密码老化时间,密码有效期最少10天,最大20天,过期三天警告,禁用期5天

注意:root用户修改口令前不验证旧的口令,它不仅能修改自己的口令,还能强迫设置其他用户的口令。但是,超级用户无法读取得知其他用户的口令,这说明,普通用户忘记口令是,无法找回但可以请求root用户强设新口令。root用户的密码请小心修改。

#查看用户信息
id zsan  #查看zsan的UID、主要主群以及附加组群的GID

组管理

#创建组
groupadd [-g GID] class1 #创建class1,可以指定GID
groupadd -g 0 -o administrators  #创建root组群的别名组群administrators

#删除组群
groupdel class1 
#只能删除已经存在的空组群,组里是没有用户成员的

#修改组群属性
groupmod -g 1650 -n class2 class1  #修改class1的名字为class2,同时GID改为1650

#查看组群信息,利用cat、more(翻页查看)、tail(查看末尾10行)命令查看
cat /etc/group

用户登录过程

  1. 用户登陆成功后,自动执行Shell程序,此时Shell进程显示命令提示符:
    “#”(超级用户命令符)
    “$” (普通用户)
    注意操作权限,以免造成损失不可恢复。
  2. 用户输入exit才是彻底退出系统,不再占用系统内存。
  3. 若将代码写入一个以.sh为扩展名的文件并放于/etc/profile. d 目录下,可以使所有用户登陆时都会执行这段代码。若指定用户执行,则需放入该用户家目录的~/.bash_profile中。

用户变量设置

用户工作环境:登陆系统时,自动配置好。由一系列环境变量定义。
用户环境变量:命名同样是由大小写字母、下划线、数字组成,以字母开头。不建议用小写字母。若要含空格,则需要用引号括起来。

查看环境变量用命令env或者echo $<指定环境变量名>;
(注意不带尖括号,$XXX表示引用变量XXX的值)
修改环境变量:export <变量名> = <值>
删除环境变量:unset <环境变量名>

另:
Shell变量:每个Shell程序都拥有自己的一套Shell变量,使用命令set定义变量,unset删除变量。
注意:export和set命令定义的变量都是临时性的,用户注销和重启后都会消失。若要保持永久性,需要将命令加入到~/bash_profile文件的末尾(特定用户),或者/etc/profile. d/alls.sh文件中(全部用户)

用户切换

用户登陆后可以切换到另一个用户,普通用户需要知道被切换用户的密码,root用户不需要密码。

  1. sudo 命令
sudo -s #切换到root用户,exit退出root
sudo poweroff #以root身份执行关机
sudo -u moodisk ls /home/moodisk #以moodisk身份执行/home/moodisk目录下的文件

注: 只有sudo组群(Ubantu) 和 wheel组群 (RedHat) 的成员才能使用该命令
2. su 命令

su -root #彻底切换到root用户
su moodick #修改少量变量环境,不彻底切换到moodisk用户

记忆检查

  1. 写出命令序列:
    创建用户wang,家目录为/var/home/wang,登陆shell是/bin/bash,归属组群为mail,同时附加组群users和fuse的成员,初始密码为1234567,并在用户首次登陆时提示修改密码,要求密码每隔90天修改一次密码。
  2. 解释:lisa:x:402:1001:BlackPink:/home/lisanome:bin/bash
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-10-29 13:27:02  更:2021-10-29 13:28:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 23:01:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码