文件和用户管理

文件管理

1.linux目录结构

在这里插入图片描述

目录功能

bin 普通用户使用的命令 /bin/ls, /bin/date
sbin 管理员使用的命令 /sbin/service
dev 设备文件 /dev/sda,/dev/sda1
root root用户的HOME
home 存储普通用户家目录

tmp 临时文件(全局可写:进程产生的临时文件)
var 存放的是一些变化文件,比如数据库,日志,邮件…

设备(主要指存储设备)挂载目录
media 移动设备默认的挂载点
mnt 手工挂载设备的挂载点

etc 配置文件(系统相关如网络/etc/sysconfig/network
proc 虚拟的文件系统,反映出来的是内核,进程信息或实时状态 ,硬件的状态

usr 系统文件,相当于C:\Windows
/usr/local 软件安装的目录,相当于C:\Program

boot 存放的系统启动相关的文件,例如kernel,grub(引导装载程序)

lib 库文件Glibc
lib64 库文件Glibc

lost+found fsck修复时,存储没有链接的文件或目录

2.文件管理
1.文件管理命令
1.1创建文件
	语法:touch    文件名字
	示例:touch file1
	查看:ls
1.2创建目录
	mkdir    路径和目录名
	mkdir -p  父系,当创建目录没有上一级时,自动创建
	示例:mkdir dir1
	查看:ll  #目录的类型是d   文件的类型是-
1.3复制
 	语法:cp 源文件路径  目标文件夹
 	选项:cp -r 源目录 目标目录
1.4移动
	语法:mv 源文件路径 目标文件路径
	示例:mv file1.txt /opt
	     mv file1.txt file2.txt //更改文件名字
	 1.5删除
	语法:rm -rf 文件或目标路径
	示例:rm -rf file1.txt
1.6查看文件内容
	语法:
		cat全部    		#cat /root/file1.txt
		more翻页 		#more /root/file1.txt
		head头部 		#head -5 /root/file1.txt  //显示头部前5行
		tail尾部			#tail -5 /root/file1.txt    //显示尾部后五行
		grep过滤关键字
			语法:grep 关键字  文件名

2.文件类型

	常见类型:
		-普通文件(文本文件,二进制文件,压缩文件,电影。。)
		d目录文件(蓝色)
	非常见类型:
		b设备文件(块设备)存储设备硬盘,u盘 /dev/sda,/dev/sda1
		c设备文件(字符设备)打印机,终端/dev/tty1
		l链接文件(淡蓝色)
		s套接字文件
		p管道文件
	注意:
		通过颜色判断文件的类型是不一定正确的!!!
		linux系统中文件是没有扩展名的!!!

用户管理

1.用户/组基本概念

概念:
Users and groups:
. Every process (running program) on the system runs as aparticular user.
. Every file is owned by a particular user.
. Access to files and directories are restricted by user.
. The user associated with a running process determines the files and directories accessible to that process.

1.1用户的作用
	查看当前登录的用户信息:id
	查看文件的owner:
		[root@ ~]# ll /home/ 
		drwx------. 4 alice alice 4096 Jun 2 15:59 alice
		drwx------. 2 root root 16384 Jun 1 23:09 lost+found
	查看运行进程的username:
		[root@ ~]# ps aux 

用户组信息存储的文件

1.用户基本信息文件
	/etc/passwd(冒号分割为7列字段)
	root:x:0:0:root:/root:/bin/bash
	用户名:x:uid:gid:描述:HOME:shell

root:用户名:登录系统的名字
x:密码占位符
0:UUID:用户的身份证号
0:GID:GROUP组号 //每创建一个用户,系统会自动创建同名的组
root描述:比如经理manager //默认是用户名
/root:家目录:登录系统时,所在目录
/bin/shell:登录shell:命令解释器
不能用vim的方式改这个文件,主要是来观察

2.用户的密码信息文件
[root@192 ~]# head -1 /etc/shadow
root:$6$gnsR8RzPKAacYrw6r8KtlvmjL.w4b1pdxzfVV.::0:99999:7:::

1)“登录名”是与/etc/passwd文件中的登录名相一致的用户账号
2)“口令”字段存放的是加密后的用户口令字,如果为空,则对用户没有口令,登录时不需要口令;星号代表帐号被锁定;双叹号表示这个密码已经过期了。
$6开头的,表明是用SHA-512加密的
$1 表明是用MD5加密的
$2 是用Blowfish加密的
$5 是用 SHA-256加密的。

3)“最后一次修改时间”表示的是从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如在SCOLinux中,这个时间起点是1970年1月1日。
4)“最小时间间隔”指的是两次修改口令之间所需的最小天数。
5)“最大时间间隔”指的是口令保持有效的最大天数。
6)“警告时间”字段表示的是从系统开始警告用户到用户密码正式失效之间的天数。
7)“不活动时间”表示的是用户没有登录活动但账号仍能保持有效的最大天数。(软限制。到期后多少天就不能用账号了。)
8)“失效时间”字段给出的是一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号,也就不能再用来登录了。(硬限制。)
9) 保留

3.组信息文件
[root@192 ~]# head -1 /etc/group
root:x:0:
组名:组密码:组ID:组成员		//组成员默认为空
2.用户/组管理
2.1用户
2.1.1创建用户
==创建用户  未指定选项==
[root@192 ~]# id user01
uid=1008(user01) gid=1010(user01) 组=1010(user01)

如果创建一个用户时,未指定任何选项,系统会创建一个和用户名相同的组作为用户的Primary Group.

==创建用户 指定选项==
 创建用户user02,指定UID
 [root@192 ~]# id user02
 uid=1511(user02) gid=1511(user02) 组=1511(user02)
 创建用户user03指定家目录
 [root@192 ~]# useradd user03 -d /user03
 [root@192 ~]# ls /
 bin   dev  home  lib64  mnt  opt   root  sbin  sys  user03  var
 boot  etc  lib   media  nizhan  proc  run   srv   tmp  usr
2.2.2删除用户
[root@192 ~]# userdel -r user03 
root@192 ~]# id user03
id: user03: no such user
2.2.3用户密码
  • 方法一:root修改其他用户的密码

      [root@192 ~]# passwd user01
    
  • 方法二:用户登陆,自己修改密码

      [user01@192 root]$ passwd
    
2.2.4 其他选项管理
[root@192 ~]# usermod -s /sbin/nologin user02 //修改登陆shell
[root@192 ~]# tail -1 /etc/passwd
user02:x:1511:1511::/home/user02:/sbin/nologin
2.2.5组成员管理
查看用户原先信息
[root@192 ~]# id user01
uid=1008(user01) gid=1010(user01) 组=1010(user01)
将用户追加到hr组
语法:usermod -aG 组名 用户名
[root@192 ~]# usermod -aG hr user01
再次查看
[root@192 ~]# id user01
uid=1008(user01) gid=1010(user01) 组=1010(user01),1005(hr)
将用户移除组
语法:gpasswd -d user01 hr
2.2用户组
创建一个hr组
groupadd hr
创建组net01,并指定gid 1007
[root@192 ~]# groupadd net01 -g 1007
查看
[root@192 ~]# grep 'net01' /etc/group  //查看/etc/group中组net01信息
net01:x:1007:
删除组
[root@192 ~]# groupdel net01

分类:

  • 基本组:随用户创建,自动创建的同名组
  • 附加组:用户加入的其他组
2.3提权
  • 永久提权Switching users with su

     [user01@192 root]$ useradd u1
     bash: /sbin/useradd: 权限不够
     [user01@192 root]$ su - root
     密码:
     [root@192 ~]# useradd u1
    
  • 临时提权Running commands as root with sudoRunning

    • sudo简介
      将当前用户切换到超级用户下,然后以超级用户的身份执行命令,执行完成后,直接退回到当前用户。
      具体工作过程如下:当用户执行sudo时,系统会主动寻找/etc/sudores文件,判断该用户是否有执行sudo的权限
      –>确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认
      –>若密码输入成功,则开始执行sudo后续的命令

    • sudo配置文件语法
      语法:user MACHINE=COMMANDS
      用户 登陆的主机 = (可以变换的身份)可以执行的命令
      示例1:

        观察授权信息,以root身份,授权普通用户user01
        [root@192 ~]# vim /etc/sudoers  //系统的授权文件
        		%wheel         ALL=(ALL)             ALL	
        	允许wheel用户组      不输入密码         使用所有命令
        将用户加入到组
        [root@192 ~]# usermod user01 -G wheel
        查看user01信息
        [root@192 ~]# id user01
        uid=1008(user01) gid=1010(user01) 组=1010(user01),10(wheel)
        切换用户登陆
        [root@192 ~]# su user01
        使用sudo提权
        [user01@192 root]$ useradd test01
        bash: /sbin/useradd: 权限不够
        [user01@192 root]$ sudo useradd test01
        user01@192 root]$ id test01
        uid=1513(test01) gid=1513(test01) 组=1513(test01)
      
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值