Saya pada dasarnya bertanya tentang manajemen pengguna dari baris perintah (misalnya pada sistem di mana tidak ada alat grafis yang tersedia). Di masa lalu saya telah menggunakan beberapa program yang berbeda untuk menambahkan atau pengguna menghapus dan kelompok atau memodifikasi atribut mereka: adduser
, useradd
, usermod
, gpasswd
, dan mungkin orang lain aku sudah lupa. Saya juga pernah mendengar beberapa kali bahwa beberapa dari program ini adalah level rendah dan harus dihindari untuk penggunaan umum, tetapi saya tidak pernah ingat yang mana. Jadi saya ingin mendapatkan jawaban yang pasti untuk program mana yang direkomendasikan untuk setidaknya tugas-tugas berikut:
- Buat pengguna baru
- Tambahkan pengguna ke grup
- Hapus pengguna dari grup
- Ubah grup utama pengguna
- Ubah shell login pengguna atau direktori home
- Hapus pengguna
Saya mencari alat standar yang dapat saya harapkan tersedia di hampir semua sistem Linux (distribusi apa pun).
groupmod
. Saya tidak akan membuat ini sebagai jawaban .... tetapi cara paling standar mungkin menggunakan editor teks Anda ... ingat file yang terpengaruh hanya teks yang dibatasi./etc/passwd
itu hanya satu bagian dari sistem yang kompleks)Jawaban:
Sayangnya, tidak satu pun dari operasi itu yang distandarisasi.
Beberapa sistem operasi menawarkan fungsi ini sebagai bagian dari OS, seperti Linux, tetapi bahkan jika sistem Linux Anda menyertakannya, seiring waktu dan lintas distribusi Linux, alat dan namanya diubah sehingga Anda tidak dapat benar-benar bergantung pada seperangkat alat standar yang harus dilakukan. tugas-tugas itu.
Anda perlu memiliki seperangkat alat sistem operasi per.
sumber
Pada sistem Debian (dan diturunkan),
adduser
dandeluser
merupakan pembungkus tingkat tinggi di sekitaruseradd
dan fungsionalitas terkait. Mencakup pembuatan pengguna, penambahan dan pengurangan keanggotaan grup, dan penghapusan pengguna. Perintah yang sesuai dari membuat / menghapus grup adalah, cukup masuk akal,addgroup
dandelgroup
.usermod
muncul untuk menutupi sisa kasus penggunaan yang Anda sebutkan.sumber
Anda menyebutkan Linux pada bagian terakhir dari pertanyaan Anda, tetapi karena judulnya generik, saya akan menjawab untuk FreeBSD.
FreeBSD memiliki perintah yang mirip dengan Linux tetapi perintah yang diberikan ke
pw
utilitas:dan seterusnya. Namun, seseorang dapat mengurai perintah menjadi dua bagian:
user
danmod
; kata benda dan kata kerja. Selain itu, seseorang juga dapat menggunakangroup
dandel
:misalnya, untuk menghapus grup. Jadi, inilah yang menurut saya sangat keren: urutannya tidak penting, jaraknya juga tidak! Artinya, Anda dapat mengingat apa yang harus dihubungi dengan memikirkan apa yang ingin Anda lakukan (dalam bahasa Inggris):
dan lebih banyak lagi! The
pw
utilitas juga memungkinkan Anda mengunci dan rekening membuka:Opsi dan parameter apa pun yang Anda lewati semuanya distandarisasi (meskipun tidak selalu berlaku untuk perintah panggilan) sehingga menghafal diminimalkan. Semua dalam semua cara yang bagus untuk melakukan sesuatu.
Catatan: elips dalam contoh di atas menunjukkan opsi dan parameter yang diteruskan ke
pw
bukan pengguna atau grup tambahan.sumber
Hanya untuk kelengkapan, pada ujung level rendah dari spektrum saya akan menyebutkan vipw (8) dan vigr (8), tepat di atas "vi / etc / passwd" dan "cat> / etc / passwd" tetapi tepat di bawah "useradd ". Oh, dan mereka ada di sebagian besar varian Unix.
sumber
Semua alat ini pada akhirnya dibuat untuk mengedit file teks untuk Anda. Jika Anda ingin tahu cara mengelola pengguna dan grup melalui sistem, Anda harus terbiasa dengan file teks yang mendasarinya. Beruntung bagi Anda, hanya ada dua dari mereka,
/etc/passwd
dan/etc/group
. Ada juga pelengkap/etc/shadow
dan/etc/gshadow
file untuk membayangi passwd dan grup masing-masing.sumber
Dalam banyak situasi, mengetahui cara mengedit "/ etc / passwd" masih berguna.
sumber
Jika Anda menggunakan backend selain backend mesin lokal default - OpenLDAP menjadi yang paling umum - maka cpu (ubah utilitas kata sandi) mungkin merupakan perintah yang Anda cari. Itu dapat dijalankan pada mesin selain dari master LDAP jika dikonfigurasi dengan benar, dan sebagian besar sintaksnya sama seperti
useradd
dll dengan awalancpu
. Jadi untuk menambah diri saya bisa lakukanLihat halaman manual cpu untuk lebih jelasnya.
sumber
Jika pertanyaan Anda terbatas
tetapi semua sistem memiliki akses jaringan ke satu server. Anda bisa menggunakan sesuatu seperti NIS atau YP. Jadi jawaban ini terbatas pada admin dalam satu organisasi.
Anda masih memiliki masalah di mana hampir setiap distribusi memiliki cara yang sedikit berbeda untuk mengonfigurasi YP, tetapi konfigurasi hanya terjadi sekali. Juga, jenis jaringan ini tidak sepele.
Dalam satu situs / jaringan Anda akan mendapatkan banyak hal untuk melakukan ini. Dalam kombinasi dengan automount, favorit saya adalah dapat SSH ke mesin * nix dan memiliki semua file dan alat-alat rumah saya yang tersedia untuk saya.
Intinya, distribusi yang Anda pilih untuk master adalah sistem yang Anda gunakan untuk mengelola pengguna. Anda kemudian akan memiliki satu set alat / dokumentasi untuk mengelola pengguna dan grup.
Bahkan dimungkinkan untuk menggunakan sesuatu seperti LDAP dan alat samba pada master. Menggunakan samba juga memungkinkan saya untuk memiliki file rumah saya tersedia untuk saya di mesin windows.
sumber
Hal yang paling dekat dengan standar yang Anda akan dapatkan adalah
vi /etc/passwd
,vi /etc/shadow
, danvi /etc/groups
. (Bidat mungkin menggantikanemacs
.) Semuanya sejak saat itu yang saya temukan hanya akan bekerja pada beberapa sistem.Serius, cari tahu alat apa yang dimiliki OS Anda, dan gunakanlah. Hanya saja, jangan berharap mereka bekerja sama di semua sistem. Akan menyenangkan jika standar, tetapi tidak.
sumber
/etc/passwd
,/etc/shadow
,/etc/group
, dan/etc/gshadow
. Ini adalah alat untuk apa. Manusia rentan terhadap kesalahan, sedangkan alat telah diuji dan (mudah-mudahan) bebas bug./etc/passwd
dan teman secara langsung. Gunakanvipw
danvigr
, yang: mengunci file terhadap edisi bersamaan; jalankan editor favorit Anda ($VISUAL
); jangan ubah file jika Anda membuat kesalahan sintaksis; pada beberapa sistem (mis. FreeBSD) juga membuat ulang file lain yang harus tetap sinkron.