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

末蓝、 2021-06-11 15:13 621阅读 0赞

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

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

2、组管理

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

3、用户管理

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

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

20190109223312343.png

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

20190109223345353.png

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

20190109223418963.png

发表评论

表情:
评论列表 (有 0 条评论,621人围观)

还没有评论,来说两句吧...

相关阅读

    相关 linux基础命令学习-chmod权限

    用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。 需要系