用户和用户组

211 阅读7分钟

一、文件目录或内容查找

1.find命令:

find  路径  -选项  参数      基本语法结构
(1)按名字方式查找文件
find 路径 -name  完整名字         精准查找    
find /  -name  whichfind 路径 -name  "*名字*"         
模糊查找    find /etc -name "ifcfg*"          
find / -name "*.log"    find /etc -name "*cfg*"

练习:找出根目录下所有包含conf字母的文件和目录

(2)按类型查找
find  路径  -type  参数     
参数  -d   查找目录      -f   查找文件      -l   查找链接   
find  /etc -type d    
find  /etc -type l    
find  /etc/sysconfig -type f

练习:在/etc目录下找到名字包含pass的文件

3)按用户查找
find  路径 -user 用户名    
find  /tmp  -user zhf预备知识:    
用户添加   useradd 用户    
切换用户   su  用户名

练习: 在根目录下,找到 s25的文件,且所有者是自己名字

(5)按文件的大小查找
find 路径 -size 参数参数:     
数字     查找刚好与给定数字相同大小的文件或目录    
+数字    查找比给定数字大的文件或目录    
-数字    查找比给定数字小的文件或目录    
find /etc -size +5k
(6) 按权限查找
find  路径  -perm  权限数字权限数字: w=4          r=2          x=1          rwx     rwx     rwx          user   group   other          user=所有者          group=所属组          other=其他用户     find /etc -perm  644

2.内容查找

grep 类似于 windowsz中 findstr 在给定的文件中,按关键字查找,返回满足要求的行

grep 关键字  文件名  选项选项:  -n   显示返回内容的行号       -i    忽略大小写       -o    只显示关键字。     grep  default sudo.conf  -i -n

3.命令查找

which 用于返回命令所在目录

which  命令名字

4.查找应用文件

whereis

whereis  应用名称

二、归档和压缩

1.压缩:

(1)gzip : 一种压缩方式,生成.gz的压缩文件

问题: 没有归档功能,对多个文件只能分开压缩

gzip  文件名        删除原文件,保留压缩文件gzip -d  压缩文件名     解压,还原文件gzip -c  文件名 > 压缩文件名     压缩文件并保留原文件
(2)zip/unzip 该压缩方式是第三方库实现的压缩和解压缩

下载第三方库:

yum install -y zip

yum install -y unzip

zip 用于压缩: 可以生成适用于windows和linux的压缩文件。

zip 压缩包名字  文件zip  secure25.zip  secure25

unzip 用于解压:

unzip  zip的压缩包

(3)tar 基于gzip 压缩实现的文件归档和压缩 ,产生的文件以tar或者tar.gz结尾

归档:

tar  -cvf   归档文件名  文件1  文件2  ...

取出:

tar -xvf  归档名

压缩: 产生一个后缀名 .tar.gz文件

tar -zcvf  归档文件名  文件1  文件2...tar -zcvf s.tar.gz  s25 s26 s27 s28

解压:

tar -zxvf  tar包名

三、文件传输

1.安装xshell工具 lrzsz:

​ yum install -y lrzsz

上传:通过拖拽进入界面方式,实现

下载:

sz 文件名

2.scp命令:windows向linux发送文件

scp windows文件的完整路径 用户名@主机名:linux路径scp  gettime.html root@192.168.32.137:/opt     将gettime.html文件上传到linux中的/opt目录下

三、用户和用户组

1.用户:

1 超级用户(管理员) ,安装linux时候系统自带

2.普通用户:通过管理员创建的用户

3.程序用户:系统安装时,自动生成,还有用户安装应用时,自动生成

所有的用户都存放于/etc/passwd文件中:

  1. root:x:0:0:root:/root:/bin/bash
  2. bin:x:1:1:bin:/bin:/sbin/nologin
  3. daemon:x:2:2:daemon:/sbin:/sbin/nologin
  4. adm:x:3:4:adm:/var/adm:/sbin/nologin
  5. lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
  6. sync:x:5:0:sync:/sbin:/bin/sync
  7. shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
  8. halt:x:7:0:halt:/sbin:/sbin/halt
  9. mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
  10. operator:x:11:0:operator:/root:/sbin/nologin
  11. games:x:12:100:games:/usr/games:/sbin/nologin
  12. ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
  13. nobody:x:99:99:Nobody:/:/sbin/nologin
  14. systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
  15. dbus:x:81:81:System message bus:/:/sbin/nologin
  16. polkitd:x:999:998:User for polkitd:/:/sbin/nologin
  17. sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
  18. postfix:x:89:89::/var/spool/postfix:/sbin/nologin
  19. chrony:x:998:996::/var/lib/chrony:/sbin/nologin
  20. zhf:x:1000:1000::/home/zhf:/bin/bash

每段用冒号隔开
第一段:用户名
第二段:密码位
第三段:uid (用户id)
第四段:gid (组id)
第五段:用户说明
第六段:用户文件存放位置
第七段:用户使用的shell程序

(1)创建用户 :

命令: useradd或者adduser

  1. useradd -选项 用户名
  2. 选项:
  3. -u 数字 创建用户是指定uid
  4. -g 数字 创建用户时指定gid
  5. -G 组名 创建用户时将该用户添加到指定组中(添加附加组)
  6. -c 说明 创建用户时,添加用户说明
  7. -e 时间 创建用户时设定过期时间
  8. -o 数字 创建相同uid的用户(重复uid)
  9. useradd zhangsan -u 1009 -G test -c zs
  10. 如果只创建用户,可以使用
  11. useradd 用户名
(2) 删除用户

命令:userdel

  1. userdel -选项 用户名
  2. 选项 -r 删除用户的同时删除用户相关目录及文件
  3. -f 强制删除用户
(3)修改用户

命令: usermod

  1. usermod 选项 用户名
  2. 选项:
  3. -d 修改passwd中的用户文件路径
  4. -u 修改uid
  5. -g 修改gid
  6. -c 修改用户备注
  7. -G 添加附加组

(4)设置密码:

命令: passwd 用户名

  1. passwd 选项 用户名
  2. 选项: -d 清除指定用户的密码

2.组:将特定联系角色组合在一起,形成的组

每个用户都有主组(gid),也可能存在附加组

在/etc/group中可以查看

  1. root:x:0:
  2. bin:x:1:
  3. daemon:x:2:
  4. sys:x:3:
  5. adm:x:4:
  6. tty:x:5:
  7. disk:x:6:
  8. lp:x:7:
  9. mem:x:8:
  10. kmem:x:9:
  11. wheel:x:10:
  12. cdrom:x:11:
  13. mail:x:12:postfix
  14. man:x:15:
  15. dialout:x:18:
  16. floppy:x:19:
  17. games:x:20:
  18. tape:x:33:
  19. video:x:39:
  20. ftp:x:50:
  21. lock:x:54:
  22. audio:x:63:
  23. nobody:x:99:
  24. users:x:100:
  25. utmp:x:22:
  26. utempter:x:35:
  27. input:x:999:
  28. systemd-journal:x:190:
  29. systemd-network:x:192:
  30. dbus:x:81:
  31. polkitd:x:998:
  32. ssh_keys:x:997:
  33. sshd:x:74:
  34. postdrop:x:90:
  35. postfix:x:89:
  36. chrony:x:996:
  37. zhf:x:1000:

group 按冒号分割

第一段:组名

第二段:密码

第三段:gid

第四段:附加组成员

(1)组创建:

命令: groupadd

  1. groupadd 选项 组名
  2. 选项 -g 指定gid
  3. -o 允许重复gid
  4. groupadd -g 1001 dev
  5. groupadd -o -g 1001 manage (2) 删除组

命令: groupdel

  1. groupdel 组名
  2. groupdel manage

(2)修改组:

命令 : groupmod

  1. groupmod 选项 组名
  2. 选项:
  3. -g 修改gid
  4. -n 修改组名
  5. ``
  6. groupmod -g 1002 dev
  7. groupmod -n develop dev 问题:有一个角色zhangsan ,将zhangsan的附加组同时添加到test和dev中。

3.gpasswd命令:

用于添加、删除组中的用户

  1. gpasswd 选项 用户名 组名
  2. 选项: -a 追加用户到组中
  3. -d 从组中删除用户
  4. ``
  5. gpasswd -d zhangsan dev
  6. gpasswd -a zhangsan dev
  7. gpasswd -a zhangsan teat

四、权限

1.修改权限:

命令:chmod

  1. chmod 权限 选项 文件或目录 权限: r 读 w 写 x 执行

两种表述方式:

第一种:数字: r=4 w=2 x=1

​ rwx 7 rw 6 rx 5 wx 3

第二种:角色 (+,-,=) (r,w,x)

​ 角色: 所有者 u (user)

​ 所属组 g (group)

​ 其他用户 o (other)

​ u+x u-w u=rwx

练习:在/opt下创建一个test1文件,对该文件授予所有人可读可写权限;

​ 对test1文件,添加所有者执行权限,收回其他用户写权限,为所属组添加执行权限同时收回写权限

​ chmod u+x,o-w,g+x,g-w test1 chmod 754 test1

2.修改文件所有者

命令: chown

  1. chown 角色名 文件

3.修改文件所属组

命令: chgrp

  1. chgrp 组名 文件名 问题:权限修改遇到目录时,会出现什么问题?

所有跟权限相关的命令,如果需要对目录及目录中的文件授予相同权限,必须使用选项-R