Linux入门(用户操作及权限)
Linux入门之 用户操作及权限
在一个公司里,老板与员工有上下级之分,员工与员工间也有上下级或同级之分。每个级别在公司的职责不同,权限也不同。在Linux操作系统中也一样,不同的用户身份拥有着不同的功能与权限。
Linux用户的分类
超级管理员: UID为0 root用户拥有至高无上的命令,root用户不能改名
系统用户:UID小于1000,用于管理服务,一般不允许登陆
普通用户:UID大于或等于1000,权限较小,允许登陆,只能使用bin下命令
1.用户创建,删除,修改
useradd命令
useradd - create a new user or update default new user information
-c, --comment 描述
-d, --home HOME_DIR 家目录
-e, --expiredate EXPIRE_DATE 过期时间
-f, --inactive INACTIVE 是否启用过期机制
-g, --gid GROUP 指定组ID号
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]] 附加组
-m, --create-home 建立家目录
-M, 不建立家目录
Do not create the user′s home directory, even if the system wide
setting from /etc/login.defs (CREATE_HOME) is set to yes.
-N, --no-user-group 不指定用户同名组
-r, --system 指定该帐号是系统帐号
-s, --shell SHELL 指定登录shell
-u, --uid UID 指定用户ID号
-U, --user-group 指定用户创建用户同名组
-o, --创建用户是可以uid重复
usermod命令
usermod - modify a user account
-a, --append
-L, --lock
-U, --unlock
-m, --move-home with -d
userdel命令
userdel - delete a user account and related files
-f, --force
-r, --remove 删除主目录及邮箱
change命令
chage
-h, --help display this help message and exit
-m, 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M, 密码保持有效的最大天数。
-W, 用户密码到期前,提前收到警告信息的天数。
-E, 帐号到期的日期。过了这天,此帐号将不可用。
-d, 上一次更改的日期 如果设置为0 用户下次登录必须改密码
-i, 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用
-l, 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
who命令
who命令将列出所有正在使用系统的用户、所用终端名和注册到系统的时间。而who am i 命令将列出使用该命令的当前用户的相关信息。例如:
[root@localhost ~]# who
root :0 2019-10-10 07:59 (:0)
root pts/0 2019-10-10 07:59 (:0)
root pts/1 2019-10-10 07:59 (:0)
[root@localhost ~]# who am i
root pts/1 2019-10-10 07:59 (:0)
2.密码设置及密码文件
passwd命令
passwd - set user password
-l, lock
-u, unlock
-d, delete a passwd for an account
-S, This will output a short information about the status of the password for a given account.
--stdin,
echo linux |passwd --stdin vfast 1 > 0
密码文件
/etc/passwd
User account information.
[用户名]:[密码]:[UID]:[GID]:[身份描述]:[主目录]:[登录shell]
/etc/shadow
Secure user account information.
用户名:这是用户登录系统时使用的用户名,它在系统中是惟一的
口令:此字段存放加密的口令
最后一次修改的时间:标识从某一时刻起到用户最后一次修改口令的天数
最小时间间隔:两次修改口令之间的最小天数
最大时间间隔:口令保持有效的最多天数,即多少天后必须修改口令
警告时间:从系统开始警告到口令正式失效的天数
不活动时间:口令过期多少天后,该账号被禁用
失效时间:指示口令失效的绝对天数(从1970年1月1日开始计算)
标志:未使用
shadow文件
目前,大多数UNIX/Linux系统中,利用/etc/shadow文件存放用户账户的加密密码信息和密码的有效期信息。
user01:!!:18173:0:99999:7:::
Linux系统的shadow文件中,为每个用户提供一条记录,各个字段用“:”隔开,这9个字段按先后顺序分别是
注册名:密文密码:上次更改密码时间距1970年1月1日的天数:密码更改后不可以更改的天数:密码更改后必须再次更改的天数(即密码的有效期):密码失效前警告用户的天数:密码失效后距离账户被查封的天数:账户被查封时间距1970年1月的天数;保留字段
3.组的管理
groupadd
groupadd - create a new group
命令语法
groupadd [选项] 组名
命令选项
-g, --gid GID 指定GID
-r, --system 创建一个系统组
-o, --non-unique 此选项允许添加一个使用非唯一 GID 的组
注意:组名最长为 32 个字符
groupmod命令
groupmod - modify a group definition on the system
命令语法
groupmod [选项] 组名
命令选项
-g, --gid GID
-n, --new-name NEW_GROUP 给组改名
-o, --non-unique
例子
1、将组名为test3的名字改为baism
groupmod test3 -n baism
groupdel命令
groupdel - delete a group
4.组密码及组配置文件
gpasswd命令
gpasswd - administer /etc/group and /etc/gshadow
-a, --add USER add USER to GROUP
-d, --delete USER remove USER from GROUP
-r, --remove-password remove the GROUP's password
-R, --restrict restrict access to GROUP to its members 限制用户登录该组,除了组成员。
-M, --members USER,... set the list of members of GROUP
-A, --administrators ADMIN,...
set the list of administrators for GROUP
案例:
设置组root密码 #gpasswd root
用户组身份切换为root $newgrp root
组管理员设置 #gpasswd test -A user3
限制陌生用户切换到组 #gpasswd -R test
指定组的成员列表 # gpasswd test -M user3,user2
配置文件
/etc/group
Group account information.
[组名]:[密码域]:[GID]:[组员列表]
/etc/gshadow
Secure group account information.
5.相关文件
/etc/passwd
用户账户信息。
/etc/shadow
安全用户账户信息。
/etc/group
组账户信息。
/etc/gshadow
安全组账户信息。
/etc/default/useradd
账户创建的默认值。
/etc/skel/
包含默认文件的目录。
/etc/login.defs
Shadow 密码套件配置。
6.身份切换
su 命令--用户身份的切换
su [options...] [-] [user [args...]]
如:
su - root
su user01
在大多的linux的版本中,都可以使用"su"或者"su -",但是"su"和"su -"有何差别:
"su"只是切换了root身份,但Shell环境仍然是普通用户的Shell;而"su -"连用户和Shell环境一起切换成root身份了。只有切换了Shell环境才不会出现PATH环境变量错误。"su"切换成root用户以后,"pwd"一下,发现工作目录仍然是普通用户的工作目录;而用"su -"命令切换以后,工作目录变成root的工作目录了。用"echo $PATH"命令看一下"su"和"su -"以后的环境变量有何不同。以此类推,要从当前用户切换到其它用户也一样,应该使用"su -"命令。
当一个用户同时属于多个组,如何切换组身份 ?
newgrp 命令
newgrp指令类似login指令,它是以相同的帐号,另一个群组名称,再次登入系统。欲使用newgrp指令切换群组,您必须是该群组的用户,若不指定群组名称,则newgrp指令会登入该用户名称的预设群组。
附加知识:文件与文件夹权限
Linux 基本权限
linux基本权限
使用ls -l filename 命令查看文件或文件夹详细权限
ls -l
-rw-r--rw- 1 root root 22 Jan 6 15:42 abc
- --- --- ---
第1个 - 文件类型
第2-4个 - 文件所有者的权限 root rw- r 读 w 写 x 执行
第5-7个 - 文件所属的组中的成员对其权限 root r--
第8-10个 - 其他人 rw-
22 文件或文件夹的大小
Jan 6 15:42 创建日期
abc 文件名
chmod命令
chmod - 改变文件的访问权限
命令语法
chmod [options] mode file...
命令选项
-R 递归设置权限,针对目录有效
mode 谁给什么权限
u(所有者) g(所属组) o(其他人) a(所有人)
+ - =
权限 r 读 w 写 x 执行
数字权限
r 读 4
w 写 2
x 执行 1
chmod 760 abc
chown命令
chown 修改文件或文件夹所有者命令
命令语法
chown [options] user [:group] file...
命令选项
-R, 递归设置,针对文件夹
chown 新所有者 文件名
chown 新的所有者.新的所属组 文件名
-R, 递归修改
chgrp命令
chgrp 改变所属的组
命令语法
chgrp [选项] 组文件...
命令选项
-R, 递归设置权限,针对目录有效
chgrp 新所有组 文件名
chown .新的所属组 文件名
Linux特殊权限
linux特殊权限 7 777
suid 4 当一个二进制文件拥有SUID权限后,当其他用户执行该二进制文件的时候,该二进制文件就会以他所有者的权限去执行
sgid 2
要求文件夹下的新建的子文件夹或者子文件继承父文件夹的属组
sticky bit 1
如果给文件夹 赋予粘连位 则该文件夹下的文件或文件夹只能由所有者及ROOT删除
Linux隐藏权限
chattr命令
chattr [+-=][ASacdistu] 文件或文件名
命令选项:
+ : 增加某个特殊参数,其他原本存在的参数不动。
- : 删除某个特殊参数,其他原本存在的参数不动。
= : 设置一定,且仅有后面接的参数
A : 当设置了A属性时,这个文件(或目录)的存取时间atime(access)将不可被修改,可避免例如手提电脑有磁盘I/O错误的情况发生。
S : 这个功能有点类似sync。就是将数据同步写入磁盘中。可以有效地避免数据流失。
a : 设置a之后,这个文件将只能增加数据,而不能删除,只有root才能设置这个属性。
c : 这个属性设置之后,将会自动将此文件“压缩”,在读取的时候将会自动解压缩,但在存储的时候,将会先进行压缩后再存储(对于大文件有用)。
d : 当执行dump(备份)程序的时候,设置d属性将可使该文件(或目录)具有转储功效。
i : i的作用很大。它可以让一个文件“不能被删除、改名、设置连接,也无法写入或新增数据”。对于系统安全性有相当大的帮助。
j : 当使用ext3文件系统格式时,设置j属性将会使文件在写入时先记录在journal中。但是,当文件系统设置参数为data=journalled时,由于已经设置日志了,所以这个属性无效。
s : 当文件设置了s参数时,它将会从这个硬盘空间完全删除。
u : 与s相反,当使用u来设置文件时,则数据内容其实还存在磁盘中,可以用来还原删除.
注意:这个属性设置上,比较常见的是a与i的设置值,而且很多设置值必须要root才能设置。
lsattr命令
lsattr 文件或文件名
查看文件或文件夹的隐藏权限
Linux file ACL 权限
setfacl命令
setfacl - set file access control lists
命令语法
setfacl [选项] file...
命令选项
-m, 修改acl
-x, 删除acl
-b, 删除所有acl
-k, 删除默认的acl
-R, 递归
getfacl命令
getfacl 查看文件权限
命令语法
getfacl file...
Linux入门(用户操作及权限)的更多相关文章
- (大数据工程师学习路径)第一步 Linux 基础入门----用户及文件权限管理
用户及文件权限管理 实验介绍 1.Linux 中创建.删除用户,及用户组等操作. 2.Linux 中的文件权限设置. 一.Linux 用户管理 Linux 是一个可以实现多用户登陆的操作系统,比如“李 ...
- Linux基础入门-用户及文件权限管理
一.Linux用户管理: 不同的用户的文件都是放在同一个物理磁盘上的甚至同一个逻辑分区或者目录里,但是由于Linux的用户管理和权限机制,不同用户不能轻易查看.修改彼此的文件. 1. 查看用户: wh ...
- Linux之acl库的安装与使用(限制Linux某用户的访问权限)
acl库 作用:限制Linux某用户的访问权限 acl库的安装 首先github中下载acl代码: git clone https://github.com/acl-dev/acl 进入acl, 执行 ...
- Linux给用户添加sudo权限
一.linux给用户添加sudo权限: 有时候,linux下面运行sudo命令,会提示类似: xxxis not in the sudoers file. This incident will be ...
- MySQL数据库(6)_用户操作与权限管理、视图、存储过程、触发器、基本函数
用户操作与权限管理 MySQL用户操作 创建用户 方法一: CREATE USER语句创建 CREATE USER "用户名"@"IP地址" IDENTIFIE ...
- linux增加用户并赋予权限/用户和用户组操作命令
===============ubuntu================================================== 在Ubuntu13.10下创建一个新的用户:Step1: ...
- linux下用户操作
在linux中添加ftp用,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test. 2.建用户:在root用户下: useradd ...
- linux 学习-用户&群组&权限
Linux用户&群组&权限 ⦁ Linux安全性模型 1)Linux使用User和Group控制使用者对文件的存取权限 2)用户使用账号和口令登录Linux 3) ...
- 3,linux入门到上手-文件权限管理与配置
linux入门-文件权限管理与配置 一.关于linux的操作命令一般格式如下: 1,一行指令中第一个输入的部分绝对是"指令(command)"或"可可执行文件案(例如批次 ...
随机推荐
- [USACO07OCT]障碍路线 & yzoj P1130 拐弯 题解
题意 给出n* n 的图,A为起点,B为终点,* 为障碍,.可以行走,问最少需要拐90度的弯多少次,无法到达输出-1. 解析 思路:构造N * M * 4个点,即将原图的每个点分裂成4个点.其中点(i ...
- IDC数据中心应具备如下基本条件:
IDC数据中心应具备如下基本条件: 电力:有充足的直流电力保证,同时还应具备UPS不间断电源及充足的电池组以备用.高端数据中心通常配备柴油发电机等. 环境:符合电信标准的建筑设施,防尘防静电,相对适合 ...
- 运维核心基础知识之——MD5sum校验文件
如何使用MD5sum工具校验你的文件. 演示过程截图: 先给文件创建一个md5值 md5sum oldboy.txt 然后将md5sum生成的md5值写入到一个文件police.log md5sum ...
- Linux基础_网站权限规划
Linux系统默认的权限: 对于文件来说, 默认的权限: rw-r--r-- 644 对于目录来说:rwxr-xr-x 755 网站比较安全的权限: 网址程序存放在/app/blog 目录下面. 1 ...
- SpringCloud学习笔记(3):使用Feign实现声明式服务调用
简介 Feign是一个声明式的Web Service客户端,它简化了Web服务客户端的编写操作,相对于Ribbon+RestTemplate的方式,开发者只需通过简单的接口和注解来调用HTTP API ...
- 4.cache每个参数的意义和作用以及工作原理?
在程序开发过程中,适当使用 Cache 缓存能有效提高程序执行效率.比如一些常常调用的系统公共变量,把它们缓存到 Cache 中,当需要使用它们时,直接从 Cache 中读取,不必每次都从数据库或文件 ...
- Python中使用pip安装库时指定镜像源为豆瓣镜像源
场景 在使用pip进行安装库时,使用默认的库会很慢,甚至有时会出现远程主机中断了一个现有连接. 怎样在使用pip install 时指定镜像源为豆瓣镜像源. 实现 pip install moviep ...
- charles 高亮Hosts
本文参考:charles 高亮Hosts Focus Host是焦点域名的:这里配置好的可以在结构视图中,单独拎出来显示: 如下图,在把zhubangbang.com设为焦点域名,在视图中是下图这么展 ...
- Day 7 vim 文件编辑与vim的使用
1.什么是vim? vi 和 vim 是Linux下的一个文本编辑工具,(可以理解为windows的记事本或word文档) 2.为什么要使用vim? 因为linux 系统一切皆为文件,而我们工作最多的 ...
- 【带着canvas去流浪(14)】Three.js中凹浮雕模型的生成方式
目录 一. 方案1:ThreeBSP.js或ThreeCSG.js扩展库 二. 方案2:平面镂空模型拉伸 三. 方案3:Cinema 4D建模后输出模型文件 示例代码托管在:http://www.gi ...