日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Linuxnewgrp命令用法詳解:切換用戶的有效組
我們知道,每個(gè)用戶可以屬于一個(gè)初始組(用戶是這個(gè)組的初始用戶),也可以屬于多個(gè)附加組(用戶是這個(gè)組的附加用戶)。既然用戶可以屬于這么多用戶組,那么用戶在創(chuàng)建文件后,默認(rèn)生效的組身份是哪個(gè)呢?

創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),江州企業(yè)網(wǎng)站建設(shè),江州品牌網(wǎng)站建設(shè),網(wǎng)站定制,江州網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,江州網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

當(dāng)然是初始用戶組的組身份生效,因?yàn)槌跏冀M是用戶一旦登陸就獲得的組身份。也就是說(shuō),用戶的有效組默認(rèn)是初始組,因此所創(chuàng)建文件的屬組是用戶的初始組。那么,既然用戶屬于多個(gè)用戶組,能不能改變用戶的初始組呢?使用命令 newgrp 就可以。

newgrp 命令可以從用戶的附加組中選擇一個(gè)群組,作為用戶新的初始組。此命令的基本格式如下:

[root@localhost ~]# newgrp 組名

下面,我們通過(guò)一個(gè)實(shí)例,講解此命令的具體用法和功能:

  1. 首先,建立 3 個(gè)用戶組 group1、group2 和 group3,命令如下:

    [root@localhost ~]# groupadd group1
    [root@localhost ~]# groupadd group2
    [root@localhost ~]# groupadd group3

  2. 創(chuàng)建一個(gè)用戶 user1,同時(shí)指定 user1 的初始組為 group1,附加組為 group2 和 group3,執(zhí)行命令如下:

    [root@localhost ~]# useradd -g group1 -G group2,group3 user1
    #由于指定了初始組,因此不會(huì)在創(chuàng)建 user1 默認(rèn)群組
    [root@localhost ~]# more /etc/group | grep user1
    group2:x:501:user1
    group3:x:502:user1

  3. 對(duì)用戶 user1 設(shè)置密碼,執(zhí)行命令如下:

    [root@localhost ~]# passwd user1
    Changing password for user user1.
    New password:
    Retype new password:
    passwd: all authentication tokens updated successfully.

  4. 切換至 user1 用戶,通過(guò) newgrp 切換用戶組進(jìn)行下列操作,讀者可從中體會(huì)出 newgrp 命令的作用。

    #切換至 user1 用戶
    [root@localhost ~]# su - user1
    [root@localhost ~]# whoami
    user1
    #使用 newgrp 命令一邊切換 user1 的初始組,一邊創(chuàng)建文件
    [root@localhost ~]# mkdir user1_doc
    [root@localhost ~]# newgrp group2
    [root@localhost ~]# mkdir user2_doc
    [root@localhost ~]# newgrp group3
    [root@localhost ~]# mkdir user3_doc
    #查看各文件的詳細(xì)信息
    [root@localhost ~]# ll
    total 12
    drwxr-xr-x 2 user1 group1 4096 Oct 24 01:18 user1_doc
    drwxr-xr-x 2 user1 group2 4096 Oct 24 01:18 user2_doc
    drwxr-xr-x 2 user1 group3 4096 Oct 24 01:19 user3_doc

可以看到,通過(guò)使用 newgrp 命令切換用戶的初始組,所創(chuàng)建的文件各自屬于不同的群組,這就是 newgrp 所發(fā)揮的作用,即通過(guò)切換附加組成為新的初始組,從而讓用戶獲得使用各個(gè)附加組的權(quán)限。

newgrp命令的底層實(shí)現(xiàn)

其實(shí),newgrp 命令每一次切換用戶的初始組,該用戶都會(huì)以另外一個(gè) shell(新進(jìn)程,也可以說(shuō)是子進(jìn)程)登陸,只不過(guò)在新 shell 上登陸的該用戶,其初始組改變了而已。

以上實(shí)例中,通過(guò)添加 shell 內(nèi)置命令 "echo $$" 就可以發(fā)現(xiàn),每次使用 newgrp 命令,都會(huì)切換到一個(gè)新的進(jìn)程。

在本節(jié)實(shí)例中,使用 newgrp 命令切換用戶初始組的整個(gè)過(guò)程,如圖 1 所示:





圖 1 newgrp 切換初始組程序運(yùn)行過(guò)程圖

 
可以看到,每一次使用 newgrp 切換用戶的初始組,用戶都會(huì)切換到一個(gè)新的子 shell 中,如圖 1 中,user1 用戶的初始組從最初的 group1,切換成了 group2,再切換成 group3。

當(dāng)然,如果你想回到原本的環(huán)境,需要通過(guò) exit 命令不斷回退到當(dāng)前進(jìn)程的父進(jìn)程,最終才能回到初始組為 group1 時(shí)的 user1 運(yùn)行的 shell 中。


本文名稱(chēng):Linuxnewgrp命令用法詳解:切換用戶的有效組
網(wǎng)站地址:http://www.dlmjj.cn/article/djcpocd.html