4.1Linux文件权限

Linux权限:
   
    安全模型:mysql

        文件权限:
            r, w, x(提交给内核启动一个进程来运行)linux

        目录权限:
            r(ls), w(建立和删除文件), x(cd,ls -l)
rwx:
    r--:只读   每一位就有两种可能,就是   有  无  至关于一位二进制数
    r-x:读和执行
    ---:无权限
   
0 000 ---:无权限  三位二进制组成就是八进制
1 001 --x: 执行
2 010 -w-: 写
3 011 -wx: 写和执行
4 100 r--: 只读
5 101 r-x: 读和执行
6 110 rw-: 读写
7 111 rwx: 读写执行sql

    rwx: rw-, r--, r-x
        rwx: 111, 7
        rw-: 110, 6
        r-x: 101, 5
        r--: 100, 4
        -wx: 011, 3
        -w-: 010, 2
        --x: 001, 1
        ---: 000, 0shell

    750: rwxr-x---centos

    练习:
        一、600,640,660,775, 755, 750,700, 400
        二、rwxr-x---, r-xr-x---, rw-r-----, rw-rw-r--, rwxr-xr-x安全

    perm 权限
        mode: 各用户权限
        ownership: 属组和属主 bash

chmod
chown
chgrpui

    chmod:
        操做三类用户的权限:使用八进制来进行
NAME
       chmod - change file mode bits命令行

SYNOPSIS
       chmod [OPTION]... MODE[,MODE]... FILE...
       chmod [OPTION]... OCTAL-MODE FILE...
       chmod [OPTION]... --reference=RFILE FILE...递归

        操做指定类别使用者的权限:=
            u: 属主
            g: 属组
            o: 其它
            a: all  全部用户

            指定一个或多个类别=mode

            chmod u=rw
            chmod ug=rw
            chmod o=
[root@linux_basic tmp]# chmod u=rwx A
[root@linux_basic tmp]# ls -l A
-rwxr--r--. 1 root hello 0 Dec 20 18:04 A
[root@linux_basic tmp]# chmod o= A
[root@linux_basic tmp]# ls -l A
-rwxr-----. 1 root hello 0 Dec 20 18:04 A
[root@linux_basic tmp]# chmod a=rw A
[root@linux_basic tmp]# ls -l A
-rw-rw-rw-. 1 root hello 0 Dec 20 18:04 A
[root@linux_basic tmp]# chmod ug=x A
[root@linux_basic tmp]# ls -l A
---x--xrw-. 1 root hello 0 Dec 20 18:04 A

        操做指定类别的使用者指定权限位:+/-
            chmod u+x
            chmod +w

        --reference=FILE: 参考FILE的权限
        --reference=RFILE
              use RFILE’s mode instead of MODE values

        -R: 递归修改
    -R, --recursive
              change files and directories recursively
[root@linux_basic tmp]# ls -l
total 40
---x--xrwx.  1 root hello    0 Dec 20 18:04 A
drwxrwxrwx.  2 root root  4096 Dec 21 15:05 free
-rw-r--r--.  1 root root   863 Dec 22 09:10 fstab
drwxr-xr-x. 25 root root  4096 Dec 21 12:09 hello
drwxr-xr-x. 14 root root  4096 Dec 20 17:10 mylinux
drwxr-xr-x. 10 root root  4096 Dec 21 16:23 mylog
-rw-r--r--.  1 root root    27 Oct 23 19:41 system-release
-rw-r--r--.  1 root root     0 Dec 20 19:55 test
drwxr-xr-x.  2 root root  4096 Dec 21 15:02 test.txt
drwxr-xr-x.  2 root root  4096 Dec 21 17:57 user3
-rw-r--r--.  1 root root     0 Dec 20 18:04 yoH
drwxr-xr-x. 16 root root  4096 Dec 21 15:35 you
-rw-r--r--.  1 root root     0 Dec 20 18:02 yoU
-rw-r--r--.  1 root root    31 Dec 21 13:19 you.txt
[root@linux_basic tmp]# chmod --reference=fstab A
[root@linux_basic tmp]# ls -l A fstab
-rw-r--r--. 1 root hello   0 Dec 20 18:04 A
-rw-r--r--. 1 root root  863 Dec 22 09:10 fstab

    练习:复制/etc/skel及其内部的全部内容为/home/mageedu; 要求此目录及其内部的全部文件对其它用户和组没有任何访问权限;
        # cp -r /etc/skep /home/mageedu
        # chmod -R go= /home/mageedu

    chown
    chgrp

        chown [-R] [--reference=] USER FILE... 即改属主和属组
        -R, --recursive
              operate on files and directories recursively
        chgrp [-R] [--reference=] GROUP FILE...   只改属组不改属主
[root@linux_basic tmp]# ls -ld you
drwxr-xr-x. 16 root root 4096 Dec 21 15:35 you
[root@linux_basic tmp]# chgrp --reference=/home/user11 you
[root@linux_basic tmp]# ls -ld you
drwxr-xr-x. 16 root user11 4096 Dec 21 15:35 you
        chown [-R] [--reference=] USER:GROUP FILE...
        --reference=RFILE
              use RFILE’s owner and group rather than specifying OWNER:GROUP values
        chown [-R] [--reference=] USER.GROUP FILE...


练习:
一、手动编辑/etc/passwd文件新建一个用户openstack,并编辑/etc/group文件建立其所属的基本组;
   建立完成后使用su命令切换至此用户,查看其命令提示符及PATH和HOME两个环境变量的值;
二、复制/etc/skel目录为/home/openstack;
三、改变/home/openstack及其内部文件的属主属组均为openstack;
四、/home/openstack及其内部的文件,属组和其它用户没有任何访问权限;


练习:
完成如下任务:
  (1)新建系统组mysql;新建系统用户mysql,属于mysql组,要求其没有家目录且shell为/sbin/nologin;

  (2)新建GID为600的组magedu;新建用户gentoo,要求其家目录为/users/gentoo,密码同用户名;

  (3)新建用户centos,其家目录为/users/centos,密码同用户名;

  (4)新建用户www,其家目录为/users/www;删除www用户,但保留其家目录;

  (5)用户gentoo和centos均以magedu为其附加组;

思考?
umask:遮罩码
NAME
       umask - get or set the file mode creation mask

SYNOPSIS
       umask [-S][mask]
666-umask    设置后只在当前shell有效
777-umask
管理员 文件  644  目录755
普通用户  文件 664  目录775
# umask
# umask 022

文件默认不能具备执行权限,若是算得的结果中有执行权限,则将其权限加1;

umask: 023
文件:666-023=643 X
目录:777-023=754   
    umask
        文件:
            666-umask

        目录:
            777-umask

        022: 644, 755  管理员
        002: 664, 775  uid和gid相同用户的umask才是002

        注意:若文件使用666-umask的结果中存在执行权限,则对应的权限会被加1后做用生效的权限;

bash:快捷键
    Ctrl+a: 跳转至命令行首
    Ctrl+e:             尾
    Ctrl+u: 删除命令行首至当前光标所在处以前的全部内容
    Ctrl+k: 删除当前光标所在处至命令行尾的全部内容

    Ctrl+l: 清屏  clear
    Ctrl+c: 停止或取消

    Ctrl+z: 把当前命令送至后台

相关文章
相关标签/搜索