0

ノードがルートとして実行されていると仮定すると、どうすればよいですか:

  • 新しいローカル (OS) ユーザー アカウントを追加し、その uid を取得しますか?
  • 名前でアカウントを削除しますか?

アカウントはデーモン プロセスに使用されるため、本格的なユーザー アカウントである必要はありません。

これを Linux で行うことは最優先事項であり、OS X で行うことは素晴らしいことであり、Windows をサポートすることには大きなメリットがあります。

Linux では、単に spawn を実行できると思いますがuseradd、新しいユーザーの uid をどのように決定しますか? /etc/passwd友達を直接変更する方が良い (または悪い)でしょうか?

Windows では、これがNetUserAdd適切な場所のように見えます。誰かがそれを呼び出すためのアドオンをすでに書いていますか?

4

2 に答える 2

1

Linux の場合、 を使用してアカウントを作成しuseraddたら、 を呼び出しgetent passwd <username>て、3 番目のフィールドの uid を含む、主要な関連アカウントの詳細をすべて表示できます。

例:

# useradd -c "Jamie Carter" jamiec

# getent passwd jamiec

収量:

jamiec:x:2722:500:Jamie Carter:/home/jamiec:/bin/false

1 つのライナーで uid を取得するには、cut コマンドを組み合わせて:、区切り文字として扱いながら 3 番目のフィールドを取得できます。

$ getent passwd jamiec | cut -d: -f 3

2722

一般に、/etc/passwd やその仲間を直接操作しない方が安全で簡単です。あなたがしなければならないことのほとんどは、すでにシステムコマンドのどこかにある可能性があります。たとえば、userdel <username>/etc/passwd から名前でアカウントを削除しますが、孤立した情報がそこに残らないように、/etc/groups からもユーザーを削除します。(独自の user-deleter を作成した場合は、これを自分で処理する必要があります。)

于 2013-04-29T14:46:39.517 に答える
0

これは大きくて幅広い質問です (MacOS、Windows、Linux をすべて一緒に) が、Macintosh のコマンド ラインから新しいユーザーを作成するのは簡単ではなく、 root / admin として認証される必要があります

于 2013-04-25T03:59:46.710 に答える