Linux的權限的管理


Linux下用戶的創建,修改,刪除

(1) Linux下用戶創建

     useradd  jfedu  

  創建用戶的命令,會執行以下如下步驟:

   <1> /etc/passwd下保存用戶的信息

       cat /etc/passwd 查看用戶信息      jfedu:x:500:500::/home/jfedu:/bin/bash

         ①  用戶名

         ②  用戶的UID

         ③ 用戶主ID(GID)

         ④ 用戶的家目錄

         ⑤ 用戶的shell環境

   <2> 爲jfedu創建家目錄 home/jfedu

   <3>創建與用戶名相同的組jfedu,組的信息保存在/etc/group中

         cat /etc/group 查看組的信息  jfedu:x:500:

          ① 組名稱

          ② 組ID

          ③ 組成員 (這個組可以是用戶的主組,也可以是用戶的附屬組)

   <4>將/etc/skel/中以.bash開頭的文件複製到/home/jfedu的家目錄中

        drwxr-xr-x.  3 root root 4096 9月   4 18:58 .
        drwxr-xr-x. 75 root root 4096 9月   8 23:45 ..
       -rw-r--r--.  1 root root   18 5月  11 2016 .bash_logout
       -rw-r--r--.  1 root root  176 5月  11 2016 .bash_profile
       -rw-r--r--.  1 root root  124 5月  11 2016 .bashrc
       drwxr-xr-x.  2 root root 4096 11月 12 2010 .gnome2

  註釋:

               <1> 這些文件是隱藏文件,需要加參數a纔可以看見

               <2> 如果沒有這些文件,會導致用戶的環境變量異常


    <5> useradd 參數詳解


       ① -d  指定用戶的家目錄  useradd -d /tmp/user1 user1

        註釋:

            <1> 指定用戶家目錄後,並不會從/etc/skel/  這個文件夾下複製

              用戶的環境變量到用戶家目錄上,所以在指定的用戶家目錄中,

              並不會有用戶user1存在

           <2> cp -a /etc/skel/    /tmp/user1  複製用戶的環境變量


           <3>chown -R user1:user1 /tmp user1


       ② -g  把用戶添加到組中  useradd  jfedu4 -g  500   提示:這個組ID必須存在,否則無法添加


       ③  -G  新建賬戶的附屬組   useradd jfedu5 -G  jfedu4


        ④  -s  指定用戶登錄的shell   usradd  jfedu6 -s /bin/sh

        註釋: 如果將用戶的shell環境設置成 /bin/nologin   表示拒絕用戶登錄系統


 (2) Linux下修改用戶的屬性

       ①  -d  修改用戶的家目錄  usermod -d /tmp/jfedu  jfedu

         註釋: 修改用戶家目錄後,需要把mv命令把用戶的家目錄移動新指定的用戶家目錄中


       ②  -g   修改用戶的組  usermod -g  500 jfedu1


        ③ -G   修改賬戶的附屬組   usermod  -G  jfedu jfedu2    jfedu是jfedu2的附屬組


       ④  -s  表示修改用戶的shell環境    usermod  -s  /bin/nologin  jfedu


(3) Linux下刪除用戶

      ①  userdel  jfedu    刪除用戶,但保留用戶家目錄


      ② userdel  -r  jfedu   刪除用戶,同時刪除用戶的家目錄


Linux下的組的創建,修改,刪除


(1)  Linux下組的創建

     創建組的命令   groupadd  組名稱

      ① -g  指定組的主id

       groupadd -g   500 jfedu3


(2) Linux下修改組的屬性

    ① -n  修改組的名稱    groupmod  -n  jfedu4  jfedu3   將jfedu3修改爲jfedu4


   ②  -g  修改用戶的主id   groupmod  -g  500  jfedu2


(3) Linux下刪除組

     刪除組的命令:   groupdel    組名稱


Linux下用戶的切換和用戶密碼的修改


(1) Linux用戶的切換

   將root用戶切換到jfedu用戶下

    [localhost@root ~ #] su jfedu          [jfedu@localhost]$

  註釋: 切換用戶的命令: su 用戶名

    <1> 普通用戶只能看自己的文件

    <2> 查看管理員文件,會提示權限不夠

    <3> 查看其它用戶文件,需要輸入該用戶的密碼才能訪問

    <4> 普通用戶切回管理員需要提供管理員密碼


(2) Linux下新創建的用戶,創建密碼

   passwd 用戶名稱

  註釋:

            <1> 普通用戶無法創建密碼,只有根用戶,纔有權限創建密碼


Linux下文件或文件夾的權限


   <1> 在Linux中,每個文件有三種權限,讀(r),寫(w),執行(x)

 註釋:

            目錄必須要有執行(x)權限,否則無法查看內容

  

  <2>  查看一個文件的三種權限,用ls -l 進行查看


  <3> 用戶權限的組成方式

      drwx-rw-rx            -rwx-rw-rx

    ① 第一位是d表示是目錄 ,第一位是-表示普通文件

    ② 文件權限由用戶(u),組(g),其它人(o)構成,它們都有讀,寫,執行三種權限。-代表沒有權限


  <4> 修改權限的寫法

      ① chmod u=rw g=rw  o=x  123.txt   

      ② chmod u+rw  g+r  o+x  jfedu/

      ③ chmod - R  u=rw   jfedu/    授予目錄的讀和寫的權利  -R表示進行遞歸


  <5> chmod的二進制權限

   權限也可以用數字表示

    r=4    w=2   x=1     chmod=700  jfedu

  註釋:

             <1> 表示用戶有讀,寫,執行的權限

             <2> 組和其它人沒有權限


 <5> 改變文件所屬的用戶

   ①  chown  root    jfedu.txt   修改jfedu這個文件所屬用戶爲root

   ②  chown  :root  jfedu.txt    chgrp   root   jfedu.txt    修改jfedu這個文件所屬的組爲root

   ③  chown  root:root  jfedu.txt   jfedu這個文件所屬用戶和組都爲root

 

  <6> t權限

     說明:只有所屬該文件的用戶可以刪除,其它人刪除不了

  例: chmod o=rwt jfedu/ -R

         在tmp目錄下創建一個jfedu目錄,給這個目錄其它人加上rwt權限。我們在tmp目錄下創建2個用戶,分別是a1,b1。切換到a1,b1用戶下,a1用戶下創建123.txt ,b1用戶下創建456.txt文件。無論是a1用戶,還是b1用戶都只能刪除自己創建的文件,不能刪除其它人的文件


  <8> i權限

     說明: 文件不能寫,防止別人誤刪除

         添加i權限的方法    chattr +i  test.txt

         查看i權限的方法         lsattr test.txt


 <9> s權限

     說明: 任何人都看可以執行root權限

 例:

        在/bin/su 這個目錄下,用戶有一個s權限,可以保證普通用戶可以進行來回切換,如果去掉了s權限,普通用戶即使密碼輸入對了,也無法進行切換

   chmod u-s  /bin/su

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章