Ubuntu

如何從命令行快速將大量使用者添加到 Ubuntu 伺服器?

  • October 3, 2009

我剛剛熟悉了 adduser 的基本用法。我想消除互動/提示。因為我會經常重建這台機器,所以我想編寫這個過程的腳本,或者最壞的情況是複制並粘貼一個完整的語句,將使用者添加到正確的組並在一個命令中設置密碼。

類似:

sudo adduser username1 password primarygroup secondarygroup,ternarygroup “full name1”

sudo adduser username2 password primarygroup secondarygroup,ternarygroup “full name2”

sudo adduser username3 password primarygroup secondarygroup,ternarygroup “full name3”

sudo adduser username4 password primarygroup secondarygroup,ternarygroup “full name4 "

sudo adduser username999 密碼 primarygroup secondarygroup,ternarygroup “full name999”

man adduser在 shell 提示符下鍵入“ ”。它將為您提供有關如何使用adduser. 一般來說,man會給你任何 CLI 命令的文件。

但是你真的想用useradd而不用adduser

簡而言之:

useradd -c "Real Name" -m -g primarygroup -G secondarygroup1,secondarygroup2 username

哦,如果你想同時設置密碼,你必須預先加密它。我不斷地重寫這個小程序來進行 Unix 標準的鹽加密:

#include <stdio.h>
#include <unistd.h>

int main(int argc, char *argv[]) {

       char *salt;

       if (argc < 2 || argc > 3) {
               fprintf(stderr, "Usage: %s string [salt]\n", argv[0]);
               exit(1);
       } else {
               if ( argc == 2 ) {
                       salt = argv[1];
               } else {
                       salt = argv[2];
               }
               printf("%s\n", crypt(argv[1], salt));
               exit(0);
       }
}

將此編譯為crypt,然後您可以添加選項:

-p `crypt password`

理想情況下,您永遠不想將密碼放在命令行中,因為它可以顯示多個位置(ps 輸出、shell 歷史記錄等),但沒有一個特別安全。

引用自:https://serverfault.com/questions/70404