Saya memerlukan perintah untuk mencantumkan semua pengguna serta perintah untuk menambah, menghapus, dan memodifikasi pengguna dari terminal - perintah apa pun yang dapat membantu dalam mengelola akun pengguna dengan mudah oleh terminal.
Untuk daftar
Untuk daftar semua lokal pengguna yang dapat Anda gunakan:
cut -d: -f1 /etc/passwd
Untuk mencantumkan semua pengguna yang dapat mengautentikasi( dalam beberapa cara), termasuk non-lokal, lihat jawaban ini.
Beberapa perintah manajemen pengguna yang lebih berguna (juga terbatas pada lokal pengguna):
Untuk menambahkan
Untuk menambahkan pengguna baru, Anda dapat menggunakan:
sudo adduser nama pengguna baru
atau:
sudo useradd nama pengguna baru
Lihat juga: Apa perbedaan antara adduser dan useradd?
Untuk menghapus / menghapus
Untuk menghapus / menghapus pengguna, pertama Anda dapat menggunakan:
sudo userdel nama pengguna
Kemudian Anda mungkin ingin menghapus direktori home untuk akun pengguna yang dihapus :
Rumah Sakit Umum Santo Antonius/nama pengguna
Silakan gunakan dengan hati-hati perintah di atas!
Untuk memodifikasi
Untuk mengubah nama pengguna pengguna:
usermod -l nama pengguna baru old_username
Untuk mengubah kata sandi untuk pengguna:
sudo passwd nama pengguna
Untuk mengubah shell untuk pengguna:
sudo chsh nama pengguna
Untuk mengubah rincian untuk pengguna (misalnya nama asli):
sudo chfn nama pengguna
Untuk menambahkan pengguna ke sudo
grup:
adduser nama pengguna sudo
atau
usermod -aG sudo nama pengguna
Dan, tentu saja, lihat juga: man adduser
, man useradd
, man userdel
... dan sebagainya.
Cukup tekan Ctrl+Alt+T pada keyboard Anda untuk membuka Terminal. Ketika terbuka, Jalankan perintah(s) di bawah ini:
cat /etc/passwd
Atau
less /etc/passwdmore /etc/passwd
Anda juga dapat menggunakan awk:awk
awk -F':' '{ print $1}' /etc/passwd
Cara termudah untuk mendapatkan informasi semacam ini adalah getent
- lihat manpage untuk getent
perintah . Sedangkan perintah itu memberikan output yang sama dengan cat /etc/passwd
ini berguna untuk diingat karena akan memberi Anda daftar beberapa elemen di OS.
Untuk mendapatkan daftar semua pengguna yang anda ketik (sebagai pengguna terdaftar di /etc/passwd
)
getent passwd
Untuk menambahkan pengguna newuser ke sistem yang akan Anda ketik
sudo adduser newuser
untuk membuat pengguna yang memiliki semua pengaturan default diterapkan.
Bonus: untuk menambahkan pengguna (misalnya anyuser) ke grup (misalnya cdrom) jenis
sudo adduser anyuser cdrom
Anda menghapus pengguna (misalnya usang) dengan
sudo deluser obsolete
Jika Anda ingin menghapus direktori home nya / mail juga anda ketik
sudo deluser --remove-home obsolete
Dan
sudo deluser --remove-all-files obsolete
akan menghapus pengguna dan semua file yang dimiliki oleh pengguna ini di seluruh sistem.
Ini harus mendapatkan, dalam situasi yang paling normal, semua pengguna normal (non-sistem, tidak aneh, dll) :
awk -F'[/:]' '{if ($3 >= 1000 && $3 != 65534) print $1}' /etc/passwd
Ini bekerja dengan:
- membaca dari
/etc/passwd
- menggunakan
:
sebagai pembatas - jika bidang ketiga (nomor ID pengguna) lebih besar dari 1000 dan bukan 65534, bidang pertama (nama pengguna pengguna) dicetak.
Ini karena pada banyak sistem linux, nama pengguna di atas 1000 dicadangkan untuk pengguna yang tidak memiliki hak istimewa (bisa dikatakan normal). Beberapa info tentang ini di sini:
ID pengguna (UID) adalah bilangan bulat positif unik yang ditetapkan oleh sistem operasi mirip Unix untuk setiap pengguna. Setiap pengguna diidentifikasi ke sistem dengan UID - nya, dan nama pengguna umumnya hanya digunakan sebagai antarmuka untuk manusia.
UID disimpan, bersama dengan nama pengguna yang sesuai dan informasi spesifik pengguna lainnya, dalam file /etc/passwd...
Bidang ketiga berisi UID, dan bidang keempat berisi ID grup (GID), yang secara default sama dengan UID untuk semua pengguna biasa.
Di kernel Linux 2.4 ke atas, UID adalah bilangan bulat 32-bit yang tidak ditandatangani yang dapat mewakili nilai dari nol hingga 4.294.967.296. Namun, disarankan untuk menggunakan nilai hanya hingga 65.534 untuk menjaga kompatibilitas dengan sistem yang menggunakan kernel atau sistem file yang lebih lama yang hanya dapat menampung UID 16-bit.
UID 0 memiliki peran khusus: selalu akun root (yaitu, pengguna administratif Yang Mahakuasa). Meskipun nama pengguna dapat diubah pada akun ini dan akun tambahan dapat dibuat dengan UID yang sama, tidak ada tindakan yang bijaksana dari sudut pandang keamanan.
UID 65534 biasanya disediakan untuk siapa pun, Pengguna tanpa hak istimewa sistem, sebagai lawan dari pengguna biasa (yaitu, tidak memiliki hak istimewa). UID ini sering digunakan untuk individu yang mengakses sistem dari jarak jauh melalui FTP (file Transfer protocol) atau HTTP (hypertext Transfer protocol).
UID 1 hingga 99 secara tradisional disediakan untuk pengguna sistem khusus (kadang-kadang disebut pengguna semu), seperti roda, daemon, lp, operator, berita, surat, dll. Pengguna ini adalah administrator yang tidak membutuhkan kekuatan root total, tetapi yang melakukan beberapa tugas administratif dan karenanya membutuhkan lebih banyak hak istimewa daripada yang diberikan kepada pengguna biasa.
Beberapa distribusi Linux (yaitu, versi) memulai UID untuk pengguna yang tidak memiliki hak istimewa pada 100. Yang lainnya, seperti Red Hat, memulainya pada 500, dan yang lainnya, seperti Debian, memulainya pada 1000. Karena perbedaan antara distribusi, intervensi manual dapat diperlukan jika beberapa distribusi digunakan dalam jaringan dalam suatu organisasi.
Selain itu, akan lebih mudah untuk memesan blok UID untuk pengguna lokal, seperti 1000 hingga 9999, dan blok lain untuk pengguna jarak jauh (yaitu, pengguna di tempat lain di jaringan), seperti 10000 hingga 65534. Yang penting adalah memutuskan skema dan mematuhinya.
Di antara keuntungan dari praktik pemesanan blok angka untuk jenis pengguna tertentu adalah membuatnya lebih mudah untuk mencari melalui log sistem untuk aktivitas pengguna yang mencurigakan.
Berlawanan dengan kepercayaan populer, tidak perlu bahwa setiap entri di bidang UID menjadi unik. Namun, UID non-unik dapat menyebabkan masalah keamanan, dan dengan demikian UID harus tetap unik di seluruh organisasi. Demikian juga, daur ulang UID dari mantan pengguna harus dihindari selama mungkin.
daftar dari semua pengguna yang dapat login (tidak ada pengguna sistem seperti: bin,deamon,mail,sys, dll.)
awk -F':' '$2 ~ "\$" {print $1}' /etc/shadow
tambah pengguna baru
sudo adduser new_username
atau
sudo useradd new_username
Hapus/ hapus nama pengguna
sudo userdel username
Jika Anda ingin menghapus direktori home (default direktori / home / username)
sudo deluser --remove-home username
atau
sudo rm -r /path/to/user_home_dir
Jika Anda ingin menghapus semua file dari sistem dari pengguna ini (tidak hanya Home diretory)
sudo deluser --remove-all-files
Ok di sini adalah trik yang akan membantu Anda semacam ini. Terminal memiliki penyelesaian otomatis jika Anda mengetik pengguna dan menekan tombol Tab dua kali itu akan mencantumkan semua perintah yang ada dengan pengguna sebagai 4 karakter pertama.
user (tab tab)
memberi saya mungkin pilihan useradd userdel usermod pengguna pengguna-admin
jika Anda ingin tahu lebih banyak tentang perintah google atau ketik Man man useraddgives useradd - buat pengguna baru atau Perbarui informasi pengguna baru default ... ...
untuk daftar pengguna Anda harus pergi dengan apa yang dikatakan Mitch.
Harapan itu membantu saya menyukai penyelesaian tab di bash menyelamatkan saya dari mengingat sesuatu.
Untuk mengetahui pengguna yang memiliki home-Direktori di / home-folder pada mesin, jalankan perintah berikut
cd /homels
Anda kemudian dapat melihat pengguna yang memiliki otorisasi untuk masuk ke server. Jika kami ingin melihat file pengguna mana pun, Anda harus menjadi pengguna root.
Jawaban pertama merekomendasikan:
cut -d: -f1 /etc/passwd
Tetapi menggunakan ini dan menghitung jumlah pengguna yang anda dapatkan:
$ cut -d: -f1 /etc/passwd | wc -l46
46 pengguna untuk komputer laptop banyak!. Jadi gunakan ini sebagai gantinya:
$ cat /etc/passwd | grep -vE '(/bin/false|/sbin/nologin|/bin/sync)' | cut -d: -f1rootrickguest-atkb2qguest-u4sf2iguest-rmlbtgguest-mz53vp
Untuk menghapus akun tamu (yang tidak menyimpan file) gunakan:
$ cat /etc/passwd | grep -vE '(/bin/false|/sbin/nologin|/bin/sync|guest-)' | cut -d: -f1rootrick
Beberapa contoh pengguna yang dihapus dari daftar adalah:
systemd-timesync:x:100:102:systemd Time Synchronization,,,:/run/systemd:/bin/falsegnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologinsync:x:4:65534:sync:/bin:/bin/syncsync:x:4:65534:sync:/bin:/bin/syncguest-atkb2q:x:999:999:Guest:/tmp/guest-atkb2q:/bin/bash
Ternyata sebagian besar pengguna pada sistem pengguna tunggal sebenarnya adalah program yang telah mengatur diri mereka sebagai pengguna.
sed jawaban sed 's/:.* / /
/ etc / passwd’
daftar pengguna: ‘awk-F:’ { print $ 1} ’ / etc / passwd `