さまざまなプライマリ/セカンダリグループに複数のユーザーアカウントを追加する

さまざまなプライマリ/セカンダリグループに複数のユーザーアカウントを追加する

imx6ボードで異なるグループで複数のユーザーアカウントを作成しようとしています。まだデバイスに作成されたユーザーはいません。したがって、私は1000:1000をデフォルトのユーザー:グループIDと見なします。

実装する必要があるシナリオは次のとおりです。

2つのグループを作成する:grp1、grp2

3人のユーザー作成:A、B、C

ユーザーA:プライマリグループ-grp1、ユーザーB:プライマリグループ-grp1、セカンダリグループ-grp2ユーザーC:プライマリグループ-grp2

さらに、これらのユーザーはメッセージキューを介して通信できる必要があります。ユーザー(A&B)と(B&C)はメッセージキューを介して通信できる必要があります。ユーザー(AとC)は通信できません。サーバー/クライアント・プログラムでは、同じグループのユーザーのみが通信できるように、mq_openファイル権限を(S_IRWXU | S_IRWXG)に設定しました。

他のユーザーを作成するために実行した手順は次のとおりです。

adduser  abc 

これにより、/etc/passwd に uid:guid 1000:1000 を持つユーザーが作成されます。

abc:$1$SqakfDG7$cPlfYQT8YmkcvgzazVKvZ/:1000:1000:Linux User,,,:/home/abc:/bin/sh

addgroup grp1
addgroup grp2

上記の手順では、次のように/ etc / groupに2つのグループを作成します。

grp1:x:1001:
grp2:x:1002:

ユーザーAとBを作成するにはgrp1を使用し、ユーザーCを生成するにはgrp2を使用します。

adduser -G grp1 A
adduser -G grp1 B
adduser -G grp2 C

これにより、/etc/passwdにユーザーAが作成されます。

A:$1$E8MDq2ND$/qU4011IYRaisq7EfJh00/:1001:1001:Linux User,,,:/home/A:/bin/sh
B:$1$l2iSdPAh$ggD5NQAC1nJzbVfNVO/Kk.:1002:1001:Linux User,,,:/home/B:/bin/sh
C:$1$2Y6v67Wz$TYNxHBltTNeCDhAnnAFd3.:1003:1002:Linux User,,,:/home/C:/bin/sh

そして/ etc / group

A:x:1003:
B:x:1004:
C:x:1005:

ご覧のとおり、ユーザーAとBは同じグループID(grp1)(1001など)を持ち、サーバー/クライアントプログラムが正常に実行されます。

問題は、セカンダリグループ「grp2」にグループBを追加することです。

「id A」、「id B」、「id C」を入力してください。

uid=1001(A) gid=1001(grp1) groups=1001(grp1)
uid=1002(B) gid=1001(grp1) groups=1001(grp1)
uid=1003(C) gid=1002(grp2) groups=1002(grp2)

次の説明に従って、usermod コマンドを使用して、ユーザー "B" を "grp2" に追加します。小学生グループと中学生グループ

usermod -a -G grp2 B

しかし、「id B」は変わりませんでした

uid=1002(B) gid=1001(grp1) groups=1001(grp1)

最初に作成したときに、グループgrp1とgrp2にユーザー「B」を追加しようとしました。

adduser -G grp1,grp2 B

ただし、次のエラーが発生します。

adduser: unknown group grp1,grp2

私が間違っていることを知っていますか?

ありがとうございます! !

ベストアンサー1

グループgrp2にBを追加しても、デフォルトグループはまだgrp1なので、hist IDは変更されません。

これにより:

cat /etc/group | grep grp1

何が見えますか?または、グループBコマンドを実行して表示される内容を確認してください。申し訳ありません。まだコメントできません。

おすすめ記事