Saya membutuhkan perintah untuk menampilkan daftar semua pengguna di terminal. Dan bagaimana untuk menambah, menghapus, memodifikasi pengguna dari terminal.
Yang bisa membantu dalam mengadministrasikan rekening anda dengan mudah oleh terminal.
Untuk daftar semua lokal pengguna yang dapat anda gunakan:
cut -d: -f1 /etc/passwd
Untuk daftar semua pengguna mampu otentikasi (dalam beberapa cara), termasuk non-lokal, lihat jawaban ini.
Beberapa lebih berguna user-perintah manajemen (juga terbatas lokal pengguna):
Untuk menambahkan pengguna baru yang dapat anda gunakan:
sudo adduser new_username
atau:
sudo useradd new_username
Lihat juga: https://askubuntu.com/q/345974/147044
Untuk menghapus/menghapus pengguna, pertama anda dapat menggunakan:
sudo userdel username
Maka anda mungkin ingin menghapus direktori home untuk pengguna yang dihapus akun :
sudo rm -r /home/username
Silakan gunakan dengan hati-hati perintah di atas!
Untuk mengubah nama pengguna dari pengguna:
usermod -l new_username old_username
Untuk mengubah password untuk user:
sudo passwd username
Untuk mengubah shell untuk user:
sudo chsh username
Untuk mengubah rincian untuk pengguna (misalnya nama sebenarnya):
sudo chfn username
Untuk menambahkan pengguna ke sudo
kelompok:
adduser username sudo
atau
usermod -aG sudo username
Dan, tentu saja, lihat juga: man adduser
, man useradd
, man userdel
... dan seterusnya.
Hanya tekan Pilih+Alt+T pada keyboard anda untuk membuka Terminal. Ketika terbuka, jalankan perintah(s) di bawah ini:
cat /etc/passwd
ATAU
less /etc/passwd
more /etc/passwd
Anda juga dapat menggunakan awk:awk
awk -F':' '{ print $1}' /etc/passwd
Cara termudah untuk mendapatkan informasi seperti ini adalah getent
- lihat halaman manual untuk getent
perintah . Sedangkan perintah yang memberikan output yang sama sebagai cat /etc/passwd
hal ini berguna untuk diingat karena akan memberikan anda daftar dari beberapa elemen di OS.
Untuk mendapatkan daftar semua pengguna yang anda ketik (sebagai pengguna terdaftar di /etc/passwd
)
getent passwd
Untuk menambahkan pengguna newuser untuk sistem anda akan jenis
sudo adduser newuser
untuk membuat user yang memiliki semua pengaturan default diterapkan.
Bonus: Untuk menambahkan user (misalnya anyuser) untuk kelompok (misalnya cdrom) jenis
sudo adduser anyuser cdrom
Anda menghapus pengguna (misalnya usang) dengan
sudo deluser obsolete
Jika anda ingin menghapus direktori rumah/mail juga anda jenis
sudo deluser --remove-home obsolete
Dan
sudo deluser --remove-all-files obsolete
akan menghapus pengguna dan semua file yang dimiliki oleh user di seluruh sistem.
Anda dapat menggunakan compgen
GNU bash built-in terlalu:
compgen -u
Akan menampilkan daftar semua pengguna.
Ini harus mendapatkan, dalam kebanyakan situasi normal, semua normal (non-sistem, tidak aneh, dll) pengguna:
awk -F'[/:]' '{if ($3 >= 1000 && $3 != 65534) print $1}' /etc/passwd
Ini bekerja dengan:
/etc/passwd
:
sebagai pembatasHal ini karena pada banyak sistem linux, username di atas 1000 dicadangkan untuk unprivileged (anda bisa mengatakan normal) pengguna. Beberapa info ini di sini:
user ID (UID) adalah unik bilangan bulat positif yang diberikan oleh Unix-seperti sistem operasi untuk masing-masing pengguna. Setiap pengguna diidentifikasi untuk sistem dengan UID, dan nama-nama pengguna yang umumnya hanya digunakan sebagai interface untuk manusia.
Uid disimpan, bersama dengan mereka sesuai nama pengguna dan lainnya informasi pengguna tertentu, di /etc/passwd file...
bidang ketiga berisi UID, dan keempat lapangan berisi group ID (GID), yang secara default adalah sama dengan UID untuk semua biasa pengguna.
Di Linux kernel 2.4 ke atas, Uid unsigned 32-bit bilangan bulat yang dapat mewakili nilai-nilai dari nol untuk 4,294,967,296. Namun, hal ini dianjurkan untuk menggunakan nilai-nilai hanya sampai 65,534 dalam rangka mempertahankan kompatibilitas dengan sistem yang menggunakan kernel lama atau sistem berkas yang dapat hanya menampung 16-bit Uid.
UID 0 memiliki peran khusus: selalu akun root (yaitu, yang mahakuasa pengguna administratif). Meskipun nama pengguna dapat berubah pada akun ini dan akun tambahan dapat dibuat dengan UID yang sama, bukanlah tindakan yang bijaksana dari sudut pandang keamanan.
UID 65534 ini umumnya diperuntukkan bagi siapa pun, pengguna dengan sistem hak-hak istimewa, sebagai lawan biasa (yaitu, non-privileged) pengguna. Ini UID sering digunakan untuk individu-individu yang mengakses sistem jarak jauh melalui FTP (file transfer protocol) atau HTTP (hypertext transfer protocol).
Uid 1 sampai 99 secara tradisional diperuntukkan khusus untuk pengguna sistem (kadang-kadang disebut pseudo-user), seperti roda, daemon, lp, operator, berita, e-mail, dll. Pengguna ini adalah pengurus yang tidak perlu total akar kekuasaan, tapi yang melakukan beberapa tugas administratif dan dengan demikian perlu hak lebih dari orang-orang yang diberikan untuk pengguna biasa.
Beberapa distribusi Linux (yaitu, versi) mulai Uid untuk non-pengguna istimewa di 100. Lain-lain, seperti Red Hat, mulailah mereka di 500, dan masih orang lain, seperti Debian, mulai mereka di 1000. Karena perbedaan antara distro, intervensi manual dapat diperlukan jika beberapa distro linux yang digunakan dalam sebuah jaringan dalam sebuah organisasi.
selain itu, dapat nyaman untuk memesan satu blok Uid untuk pengguna lokal, seperti 1000 melalui 9999, dan blok lain untuk remote pengguna (yaitu, pengguna lain pada jaringan), seperti 10000 untuk 65534. Yang penting hal ini untuk memutuskan skema dan mematuhi itu.
di Antara keuntungan dari praktek ini adalah destinasi serbaguna blok nomor untuk jenis-jenis tertentu dari pengguna adalah bahwa hal itu membuatnya lebih nyaman untuk pencarian melalui sistem log untuk yang mencurigakan aktivitas pengguna.
Berlawanan dengan kepercayaan populer, hal ini tidak perlu bahwa setiap entri dalam UID lapangan menjadi unik. Namun, non-unik Uid dapat menyebabkan keamanan masalah, dan dengan demikian Uid harus disimpan unik di seluruh organisasi. Demikian juga, daur ulang Uid dari mantan pengguna harus dihindari selama mungkin.
daftar dari semua pengguna yang bisa login (tidak ada sistem pengguna seperti: bin,deamon,mail,sys, dll.)
awk -F':' '$2 ~ "\$" {print $1}' /etc/shadow
tambahkan **** pengguna baru
sudo adduser new_username
atau
sudo useradd new_username
hapus/menghapus username
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 rumah diretory)
sudo deluser --remove-all-files
Ok berikut ini adalah trik yang akan membantu anda semacam ini. Terminal memiliki penyelesaian otomatis jika anda tipe pengguna dan tekan tombol Tab dua kali itu akan menampilkan semua perintah yang ada dengan pengguna sebagai yang pertama 4 karakter.
user (tab tab)
memberi saya sebagai pilihan yang mungkin
useradd userdel usermod pengguna pengguna-admin
jika anda ingin tahu lebih banyak tentang perintah google atau jenis pria
untuk daftar pengguna yang anda harus pergi dengan apa Mitch mengatakan.
Harapan yang membantu aku cinta tab penyelesaian di bash menyelamatkan saya dari mengingat hal-hal.
Untuk mengetahui pengguna yang memiliki rumah-direktori di /home-folder pada mesin, jalankan perintah berikut
cd /home
ls
Anda kemudian dapat melihat pengguna yang memiliki otorisasi untuk masuk ke server. Jika kita ingin melihat ke dalam file-file dari setiap pengguna, anda harus menjadi user 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 -l
46
46 pengguna untuk komputer laptop yang banyak!. Jadi gunakan ini sebagai gantinya:
$ cat /etc/passwd | grep -vE '(/bin/false|/sbin/nologin|/bin/sync)' | cut -d: -f1
root
rick
guest-atkb2q
guest-u4sf2i
guest-rmlbtg
guest-mz53vp
Untuk menghapus akun tamu (yang don't memiliki file yang disimpan pula) menggunakan:
$ cat /etc/passwd | grep -vE '(/bin/false|/sbin/nologin|/bin/sync|guest-)' | cut -d: -f1
root
rick
Beberapa contoh pengguna dihapus dari daftar adalah:
systemd-timesync:x:100:102:systemd Time Synchronization,,,:/run/systemd:/bin/false
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
sync:x:4:65534:sync:/bin:/bin/sync
guest-atkb2q:x:999:999:Guest:/tmp/guest-atkb2q:/bin/bash
Ternyata sebagian besar pengguna pada satu pengguna sistem yang benar-benar program yang telah menetapkan diri mereka sebagai pengguna.