Linux中关于用户权限浅谈

1、权限存在的意义

文件

  -          rw-r--r--     1       root      root      216      May 12 2017       /mnt/rht

【1】  【2】      【3】 【4】   【5】   【6】        【7】                【8】

【1】    ##文件类型

-  :普通文件

d  :目录

l   :软链接

s  :socket

c:字符设备

【2】    ##文件权限

rw- | r-- | r--

u      g     o

u   ##user

g   ##group

o   ##other

【3】    ##文件硬链接个数

【4】    ##文件拥有者

【5】    ##文件拥有组

【6】    ##文件大小

【7】    ##文件最后一次被修改的时间

【8】    ##文件名称

目录

d    rwxr-xr-x.   2     root     root    4096    Jul 30 09:00    /mnt/
[1]       [2]        [3]      [4]        [5]       [6]              [7]             [8]

【1】    ##类型

【2】    ##权限

【3】    ##目录中子目录的个数

【4】    ##用户

【5】    ##组

【6】    ##子文件或者子目录元数据的大小(元数据:描述数据的数据)

【7】    ##最后一次被更改的时间

【8】    ##名称

2、修改用户和用户组

此命令必须用root用户执行

chown  username  file|dir                     更改文件拥有者

chown  -R  username dir                      更改目录本身及里面所有内容的拥有者

chown  username.group  file|dir           同时修改拥有者和拥有组

chgrp  -R  group  dir                               改变目录的组并改变里面的内容(注:R表示递归,即逐个修改完成

监控命令:watch -n 1 ls  -lR  /mnt

3、文件权限

      1>权限

            r:可读       对文件:是否可以查看文件中的字符

                                对目录:是否可以查看目录中有多少文件

            w:可写     对文件:是否可以改变文件中记录的字符

                                对目录:是否可以在目录中管理文件,是否可以更改目录中文件的元数据

            x:可执行  对文件:是否可以通过问价名称调用文件内记录的程序

                                对目录:是否可以进入此目录

      2>权限的管理

            ##字符形式

                 chmod  <u/g/o>  <+/-/=>  <r/w/x>  file/dir

            ##数字方式

                 r  w  x

                2  1  0

                x = 2^0*1/0 = 1/0

                w = 2^1*1/0 = 2/0

                x = 2^2*1/0 = 4/0

                rwx=7

                rw-=6

                r-x=5

                r--=4

                -wx=3

                -w-=2

                --x=1

               eg:chmod 755 /mnt/file

                        rwx r-x r-x

4、权限列表(access control:acl)

    特定用户对特定文件有指定权限

           -rw-r--r--+ 1 root root 216 May 12  2017 rht

           “+”为权限列表开启

               getfacl file              ##查看文件权限

               ##file:file             ##文件名

               ##owner:root      ##文件所有人

               ##group:root       ##文件所有组

               user::rw-            ##用户权限

               user:koisk:rwx   ##特殊指定用户权限

               group::r--            ##组权限

               mask::rwx           ##权限最大值

               other::r--              ##其他人权限

               setfacl -m u:student:rwx file     ##设定列表用户权限

               setfacl -x u:student file           ##删除列表中指定用户

               setfacl -b file                              ##关闭权限列表

5、进程及服务的控制

      1>什么是进程

           系统中正在运行的程序叫做进程

      2>图形的进程查看方式

            gnome-system-moniter

      3>查看进程的命令

            ps  a          当前环境的相关进程

                  -A|-e    系统所有进程

                  -a         在当前终端中运行的进程但不包含当前环境进程信息

                  x           查看含有输出终端的进程

                  f            查看进程的从属关系

                  u           进程的所有人

                  ps ax -o comm,nice,%cpu,%men,pid,user,group,stat|head  所有相关进程

                  ps ax --sort=%cpu       顺序

                  ps ax --sort=-%cpu     倒序

                  ps ax --sort=-%men

                  ps ax --sort=%men 

                  eg:查询占用cpu占有率最高的五个pid

                          (ps ax --sort=-%cpu -o pid | sed -n 2,6p
                           ps ax --sort=-%cpu -o pid |awk 'NF<=6&&>=2{PRi})

      4>进程优先级

                   进程状态

                           S    ##进程状态

                           s     ##此进程为顶级进程

                           T     ##进程暂停

                           <     ##进程优先级高

                           N     ##进程优先级低

                           l       ##进程在内存中有锁定空间

                           ps -o nice,comm,pid  显示进程的优先级,命令,pid

                           renice -n -5 pid     修改进程的优先级 

                           nice -n -5 命令 &   指定优先级开启进程

     5>进程前后台的调用

                  ctrl+z                             ##将占用终端的进程打入后台停止

                  jobs                               ##查看被打入后台的进程

                  bg  jobsnum                 ##将指定进程在后台运行

                  fg  jobsnum                  ##将指定进程调回前台

                  ctrl+c                             ##将占用当前终端的进程结束

     6>信号

                   1        ##进程不停止情况下重新加载
                   2        ##清除进程在内存中的数据
                   3        ##清除鼠标子阿内存中的数据
                   9        ##强行结束进程,不能被阻塞
                   15        ##正常关闭进程
                   18        ##运行停止的进程
                   19        ##暂停进程,不能被阻塞
                   20        ##暂停进程,可以被阻塞

                   kill  信号  pid

                   killall  信号  进程名称(这两天命令是给内核发送信号,由内核结束进程)

     7>服务的控管

                   systemctl  start          开启

                   systemctl  stop          关闭

                   systemctl  status       显示状态

                   systemctl  restart      重启

                   systemctl  enable     开机时自启动

                   systemctl  list-units   列出所有系统中运行的服务

                   systemctl  list-unit-files   列出系统中服务开机状态

                   systemctl  list-dependence    列出服务的依赖性

                   systemctl  mask/unmask  sshd.service   冻结/开启服务(这里比如sshd)

                   systemctl  set-default  multi-user.target    开机时不启动图形界面

                   systemctl  set-default  graphical.target    开机时启动图形化页面

(init 5:init 5是启动 runlevel 5所对应的服务,并运行图形登录管理器,由用户选择以何种身份登录。只有root有权执行。)

猜你喜欢

转载自blog.csdn.net/dyy0920/article/details/81737768