Linux基础学习 (三)用户权限相关命令

1、用户和权限的基本概念

1.1 对文件/目录的权限包括
	权限	缩写	数字代号
	读	r	4
	写	w	2
	执行	x	1
1.2 为了方便用户管理,提出了组的概念,相同权限的用户添加到组中,给组分配权限(简化对用户权限的设置)
1.3 ls -l 扩展(以列表的方式查看文件详细信息)
	总用量 2096
	ab  c  d   e f	      g		h	i            j  
	-rw-rw-r-- 1 xiahuale xiahuale    1089 1月   1 00:37 333.txt
	-rw-rw-r-- 1 xiahuale xiahuale 2126295 1月   6 15:30 dir.txt
	drwxrwxr-x 4 xiahuale xiahuale    4096 1月   1 00:02 eee
	-rw-rw-r-- 1 xiahuale xiahuale      12 1月   1 00:38 hw.txt
	a.如果是文件,第一列显示-,如果是目录,第一列显示d
	  后面每三个字符一组,r表示可读,w表示可写,x表示可执行,权限被分为三组,
	b.第一组权限,文件或目录的拥有者的权限,对应第一个xiahuale
	c.第二组权限,用户组的权限(这里用户组与用户名相同),对应第二个xiahuale
	d.第三组权限,其他用户的权限
	e.一列数字,叫硬连接数,就是有多少种方式,可以访问到当前目录/文件(可理解为用tree查看有多少条路到达)。
	  例如	某个目录是2,绝对路径可以到达,在该目录下 cd .可以到达当前目录
		某个目录是3,该目录下还有一个目录,在该子目录下用cd ..可以到达
		某个目录是4,则目录下有2个子目录,一次类推
	f.拥有者名称
	g.组名称
	h.大小			
	i.时间
	j.名称
1.4 chmod 可以修改用户/组 对 文件/目录 的权限
    命令格式 chmod +/-rwx 文件名/目录名  (+增加权限,-减少权限,rwx可以任意组合)
    文件 chmod -rw 111.txt  减去读写权限,某些文件加上可执行权限,是可以执行的(例如01.py文件)
    目录 aaa 去掉可执行权限,cd aaa  不能进入该目录
	     去掉可读权限,可以进入该目录,不能查看目录下内容
	     去掉可写权限,不能修改目录下的内容
1.5 超级用户
	Linux系统中root帐号通常用于系统的维护和管理,对系统所有资源具有所有访问权限,不推荐直接用root,防止误删重要资源
	系统安装过程会自动创建一个用户帐号,称为标准用户,当标准用户想要执行一些系统维护管理相关命令的时候
    sudo
	su是substitute user的缩写,表示 使用另一个用户的身份
	sudo命令用来以其他身份执行命令,预设的身份为root
	使用sudo时,必须先输入密码,之后有5分钟的有效期限,过期还得输入密码
	若未经授权的用户企图使用sudo,会发警告邮件给管理员

2、组管理

创建组/删除组的终端命令都需要通过sudo执行
groupadd 组名			添加组
groupdel 组名			删除组
cat /etc/group			确认组信息
chgrp [-R] 组名 文件/目录名	修改文件/目录的所属组 
(大写R可以递归修改目录下所有文件/目录的所属组)

3、用户管理

提示:创建/删除/修改其他用户密码的命令都需要通过sudo执行
3.1 创建用户/设置密码/删除用户
	useradd -m -g 组 用户名		新建用户,-m自动建立家目录 -g指定用户主组,默认建立与用户名同名的组	
	passwd 用户名			设置密码,普通用户直接用passwd可以修改自己的密码
	userdel -r 用户名		删除用户,-r选项会自动删除用户家目录
	cat /etc/passwd|grep 用户名	新建用户后,用户信息会保存在/etc/passwd文件中
3.2 查看用户信息
    1)	id 用户名	查看用户UID和GID信息(只输入id,查看当前用户的信息)
	who		查看当前所有登录的用户列表
	whoami		显示当前登录用户的账户名
    2)  passwd文件解读	存放的是用户信息,由6个分号组长的7个信息,分别是
	lisi:x:1001:1001::/home/lisi:
	1.用户名
	2.密码(x表示加密的密码)
	3.UID(用户标识)	
	4.GID(主组标识)
	5.用户全名或本地帐号
	6.家目录
	7.登录使用的Shell 登录之后使用的终端命令,ubuntu默认是dash(一款软件名)
    3)  cat -n /etc/group|grep xiahuale	查看当前用户的组信息(用户名在后面的是附加组)	
	    5	adm:x:4:syslog,xiahuale		有管理员权限
	    18	cdrom:x:24:xiahuale		可以访问光驱
	    21	sudo:x:27:xiahuale		可以使用sudo身份
	    23	dip:x:30:xiahuale
	    35	plugdev:x:46:xiahuale
	    52	lpadmin:x:113:xiahuale
	    67	xiahuale:x:1000:
	    68	sambashare:x:128:xiahuale	
    4)	usermod 可以用来设置用户的 主组/附加组 和登录Shell命令
	主组:通常在新建用户时指定,在etc/group中第4列GID对应的组
	附加组:在etc/group 中最后一列表示该组的用户列表,用于指定用户的附加权限
	提示:设置用户附加组后,需要重新登录才能生效!
	        usermod -G sudu 用户名   给用户添加sudo权限,新建用户是没有sudo权限的
		usermod -g 组 用户名	修改用户的主组
		usermod -G 组 用户名	修改用户的附加组
		usermod -s /bin/bash	修改用户登录Shell,bash是Shell名称
	说明:所谓Shell,就是可以输入终端命令的窗口,是一个软件,
	      windows连接ubutun使用dash有bug,很多按键是乱码,可以将其默认登录Shell修改为bash
    5)	which (重要)
		/etc/passwd		保存用户信息的文本文件
		/usr/bin/passwd		用户修改用户密码的可执行程序
		which命令可以查看执行命令保存在系统中所在的位置,例如:
		which ls	#输出	/bin/ls
		which useradd	#输出	/usr/sbin/useradd
	bin和sbin的区别:
		在Linux中,大多数可执行文件都保存在/bin ,/sbin ,/usr/bin ,/usr/sbin
		/bin(binary)		是二进制执行文件目录,主要用于具体应用
		/sbin(system binary)	是系统管理员专用的二进制代码存放目录,主要用于系统管理
		/usr/bin		后期安装的一些软件 user commands for applications
		/usr/sbin		超级用户的一些管理程序 super user commands for application
3.3 切换用户
	使用场景:工作中使用某些命令,当前用户权限不够,用该命令切换有权限的用户,然后exit可以返回上一个登录用户
		su - 用户名	切换用户到用户家目录,-可以切换到用户家目录,否则保持位置不变
		su		切换到root用户(不推荐),需要给root用户设置个初始密码
                exit		退出当前登录账户
4、修改文件权限
		对应ls -l时显示的文件列表
		-rw-rw-r-- 1 xiahuale xiahuale    1089 1月   1 00:37 333.txt
		-rw-rw-r-- 1 xiahuale xiahuale 2126295 1月   6 15:30 dir.txt
		chown 用户名 文件名|目录名		修改拥有者,第3列
		chgrp -R 组名 文件名|目录名		递归修改组,第4列
		chmod +/-rwx 文件名|目录名		直接修改 文件|目录的 读|写|执行权限,但是不能精确到 拥有者/组/其他
	        chmod -R 755 文件名|目录名		chmod在设置权限时,可以简单地使用三个数字分别对应 拥有者/组/其他用户 的权限
		读、写、执行权限的数字表示
			r	4	可读权限
			w	2	可写权限
			x	1	可执行权限
		组合结果为
			4 2 1	7	rwx
			4 2 0	6	rw-
			4 0 1	5	r-w
			4 0 0	4	r--
			0 2 1	3	-wx
			0 2 0	2	-w-
			0 0 1	1	--x
			0 0 0  	0	---
		常见数字组合 (u表示拥有者 g表示组 o表示其他)
			777 ===> u=rwx, g=rwx, o=rwx	放开全部权限
			755 ===> u=rwx, g=r-x, o=r-x	放开可读、可执行(可执行文件)
			644 ===> u=rw-, g=r--, o=r--	放开只读权限(文本文件)

补充:用su命令直接切换到root用户时,需要输入root密码

            如果没设置过,需要给root设置一个密码

           输入新设置的密码,切换root用户成功

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值