Amri ya kuorodhesha watumiaji wote? Na jinsi ya kuongeza, kufuta, kurekebisha watumiaji?


Nenda kwa jibu lililokubaliwa


Nahitaji amri kuorodhesha watumiaji wote kwenye terminal. Na jinsi ya kuongeza, kufuta, kurekebisha watumiaji kutoka kwa wastaafu.

Hiyo inaweza kusaidia kudhibiti akaunti yako kwa urahisi na terminal.


873









Idadi ya majibu: 9


Kuorodhesha

Kuorodhesha watumiaji wote wa ndani ambao unaweza kutumia:

 cut -d: -f1 /etc/passwd
 

Ili kuorodhesha watumiaji wote wenye uwezo wa kudhibitisha (kwa njia fulani), pamoja na isiyo ya kawaida, angalia jibu hili .

Amri zingine muhimu zaidi za usimamizi wa watumiaji (pia zinahusu watumiaji wa mahali hapo ):

Kuongeza

Kuongeza mtumiaji mpya unaweza kutumia:

 sudo adduser new_username 

au:

 sudo useradd new_username 

Tazama pia: Kuna tofauti gani kati ya nyongeza na mtumiaji?

Kuondoa / kufuta

Kuondoa / kufuta mtumiaji, kwanza unaweza kutumia:

 sudo userdel username 

Halafu unaweza kutaka kufuta saraka ya nyumbani kwa akaunti ya mtumiaji iliyofutwa:

sudo rm -r / nyumbani / jina la mtumiaji

Tafadhali tumia kwa tahadhari amri ya hapo juu!

Kurekebisha

Ili kurekebisha jina la mtumiaji la mtumiaji:

 usermod -l new_username old_username 

Kubadilisha nywila kwa mtumiaji:

 sudo passwd username 

Kubadilisha ganda kwa mtumiaji:

 sudo chsh username 

Kubadilisha maelezo kwa mtumiaji (kwa mfano jina halisi):

 sudo chfn username 

Kuongeza mtumiaji kwenye sudo kikundi:

 adduser username sudo 

au

 usermod -aG sudo username 

Na, kwa hakika, tazama pia: man adduser , man useradd , man userdel ... na kadhalika.


1167


2014-01-24

Tu vyombo vya habari Ctrl+ Alt+ Tkwenye keyboard yako ya wazi Terminal. Wakati inafungua, endesha amri / maagizo hapa chini:

 cat /etc/passwd
 

AU

 less /etc/passwd
more /etc/passwd
 

Unaweza pia kutumia awk: awk

 awk -F':' '{ print $1}' /etc/passwd
 

87


2014-01-24

Njia rahisi zaidi ya kupata aina hii ya habari ni getent - angalia manpage kwa getent amri
Picha ya manpage

. Wakati amri hiyo inatoa matokeo sawa na cat /etc/passwd ni muhimu kukumbuka kwa sababu itakupa orodha ya vitu kadhaa kwenye OS.

Kupata orodha ya watumiaji wote unaowabandika (kama watumiaji waliotajwa katika /etc/passwd )

 getent passwd
 

Kuongeza mtumiaji mpya kwenye mfumo unayoweza kuandika

 sudo adduser newuser
 

kuunda mtumiaji ambaye ana mipangilio yote chaguo-msingi iliyotumika.

Bonus: Kuongeza mtumiaji yeyote (kwa mfano anyuser ) kwa kikundi (kwa mfano cdrom ) aina

 sudo adduser anyuser cdrom
 

Unafuta mtumiaji (kwa mfano amekamilika ) na

 sudo deluser obsolete
 

Ikiwa unataka kufuta saraka yake ya nyumbani / barua vile vile unavyoandika

 sudo deluser --remove-home obsolete
 

Na

 sudo deluser --remove-all-files obsolete
 

itaondoa mtumiaji na faili zote zinazomilikiwa na mtumiaji huyu kwenye mfumo mzima.


66



Unaweza kutumia compgen GNU bash iliyojengwa ndani pia:

 compgen -u
 

Itaorodhesha watumiaji wote.


44



Hii inapaswa kupata, chini ya hali ya kawaida , watumiaji wote wa kawaida (wasio wa mfumo, sio wema, nk):

 awk -F'[/:]' '{if ($3 >= 1000 && $3 != 65534) print $1}' /etc/passwd
 

Hii inafanya kazi na:

  • kusoma kutoka /etc/passwd
  • kutumia : kama delimiter
  • ikiwa uwanja wa tatu (nambari ya Kitambulisho cha Mtumiaji) ni kubwa kuliko 1000 na sio 65534, shamba la kwanza (jina la mtumiaji) limechapishwa.

Hii ni kwa sababu kwenye mifumo mingi ya linux, majina ya watumiaji juu ya 1000 yamehifadhiwa kwa wasio na usalama (unaweza kusema kawaida) watumiaji. Maelezo fulani juu ya hii hapa :

Kitambulisho cha mtumiaji (UID) ni nambari ya kipekee chanya iliyopewa na mfumo wa kufanya kazi wa Unix kwa kila mtumiaji. Kila mtumiaji hutambuliwa kwa mfumo na UID yake, na majina ya watumiaji kwa ujumla hutumiwa tu kama kiunganishi kwa wanadamu.

UID zinahifadhiwa, pamoja na majina yao yanayolingana ya watumiaji na habari nyingine maalum ya mtumiaji, katika faili la / nk / la kupitishwa ...

Sehemu ya tatu ina UID, na uwanja wa nne una kitambulisho cha kikundi (GID), ambacho kwa default ni sawa na UID kwa watumiaji wote wa kawaida.

Kwenye kinu za Linux 2.4 na hapo juu, huduma za UID hazina idadi 32-bit ambayo inaweza kuwakilisha maadili kutoka sifuri hadi 4,294,967,296. Walakini, inashauriwa kutumia maadili hadi 65,534 ili kudumisha utangamano na mifumo inayotumia kerneli za zamani au mfumo wa faili ambao unaweza kubeba UIDs za 16-bit tu.

UID ya 0 ina jukumu maalum: ni akaunti ya mizizi kila wakati (yaani, mtumiaji wa nguvu yote ya kiutawala). Ingawa jina la mtumiaji linaweza kubadilishwa kwenye akaunti hii na akaunti zingine zinaweza kuunda na UID sawa, hakuna hatua ambayo ni ya busara kutoka kwa maoni ya usalama.

UID 65534 kawaida huhifadhiwa kwa mtu yeyote, mtumiaji ambaye hana marupurupu ya mfumo, tofauti na mtumiaji wa kawaida (yaani, asiye na bahati). UID hii mara nyingi hutumiwa kwa watu wanaofikia mfumo kwa mbali kupitia FTP (itifaki ya uhamishaji wa faili) au HTTP (itifaki ya uhamishaji wa hyper).

UID 1 hadi 99 ni jadi zimehifadhiwa kwa watumiaji wa mfumo maalum (wakati mwingine huitwa watumiaji wa pseudo), kama gurudumu, demon, lp, mwendeshaji, habari, barua, nk Watumiaji hawa ni wasimamizi ambao hawahitaji nguvu ya mizizi kamili, lakini ambao hufanya kazi zingine za kiutawala na kwa hivyo zinahitaji marupurupu zaidi kuliko ile iliyopewa watumiaji wa kawaida.

Ugawanyaji fulani wa Linux (yaani, matoleo) huanza UID kwa watumiaji wasio na bahati ya 100. Wengine, kama vile Hat Hatamu, huanza kwa 500, na bado wengine, Debian kama hiyo, huanza saa 1000. Kwa sababu ya tofauti kati ya usambazaji, mwongozo Uingiliaji unaweza kuwa muhimu ikiwa ugawaji kadhaa unatumiwa kwenye mtandao kwenye shirika.

Pia, inaweza kuwa rahisi kuhifadhi kizuizi cha UID kwa watumiaji wa ndani, kama vile 1000 hadi 9999, na kizuizi kingine kwa watumiaji wa mbali (yaani watumiaji wengine kwenye mtandao), kama vile 10000 hadi 65534. Jambo muhimu ni kuamua kwenye mpango na kuifuata.

Miongoni mwa faida za zoezi hili la kuhifadhi vizuizi vya nambari kwa aina fulani ya watumiaji ni kwamba inafanya iwe rahisi zaidi kutafuta kupitia magogo ya mfumo kwa shughuli za watumiaji zinazoshukiwa.

Kinyume na imani maarufu, sio lazima kila kiingilio katika uwanja wa UID kiwe cha kipekee. Walakini, UID zisizo za kipekee zinaweza kusababisha shida za usalama, na kwa hivyo UID inapaswa kuwekwa ya kipekee kwa shirika lote. Vivyo hivyo, kuchakata tena UID kutoka kwa watumiaji wa zamani inapaswa kuepukwa kwa muda mrefu iwezekanavyo.


27



orodha ya watumiaji wote ambao wanaweza kuingia (hakuna watumiaji wa mfumo kama: bin, deamon, mail, sys, nk)

 awk -F':' '$2 ~ "\$" {print $1}' /etc/shadow
 

ongeza mtumiaji mpya

 sudo adduser new_username
 

au

 sudo useradd new_username
 

Futa / ondoa jina la mtumiaji

 sudo userdel username
 

Ikiwa unataka kufuta saraka ya nyumbani (saraka saraka / nyumba / jina la mtumiaji)

 sudo deluser --remove-home username
 

au

 sudo rm -r /path/to/user_home_dir
 

Ikiwa unataka kufuta faili zote kutoka kwa mfumo kutoka kwa mtumiaji huyu (sio tu mwongozo wa nyumbani)

 sudo deluser --remove-all-files
 

17



Hapa kuna ujanja ambao utakusaidia kurekebisha hii. Matayarisho yana kukamilika kiotomatiki iwapo utaboresha mtumiaji na ukigonga kichupo cha Tab mara mbili kutaorodhesha amri zote ambazo zipo na mtumiaji kama chata 4 za kwanza.

 user (tab tab)
 

inanipa chaguzi iwezekanavyo ya watumiaji wa watumiaji wa watumiaji wa usermod
ikiwa unataka kujua zaidi juu ya amri google yake au chapa man manadadd anatoa useradd - unda mtumiaji mpya au sasisha habari mpya ya mtumiaji ...

kuorodhesha watumiaji unapaswa kwenda na yale ambayo Mitch alisema.

Matumaini ambayo husaidia napenda kukamilisha kichupo katika bash kunaniokoa kutoka kwa kukumbuka vitu.


8


2014-01-24

Ili kugundua watumiaji ambao wana saraka za nyumba kwenye / folda ya nyumbani kwenye mashine, endesha amri zifuatazo

 cd /home
ls 
 

Kisha unaweza kuona watumiaji ambao wana idhini ya kuingia kwenye seva. Ikiwa tunataka kuangalia faili za watumiaji wowote, lazima uwe mtumiaji wa mizizi.


6



Jibu la kwanza linapendekeza:

 cut -d: -f1 /etc/passwd
 

Lakini kutumia hii na kuhesabu idadi ya watumiaji unaopata:

 $ cut -d: -f1 /etc/passwd | wc -l
46
 

Watumiaji 46 kwa kompyuta ya mbali ni nyingi !. Kwa hivyo tumia hii badala:

 $ cat /etc/passwd | grep -vE '(/bin/false|/sbin/nologin|/bin/sync)' | cut -d: -f1
root
rick
guest-atkb2q
guest-u4sf2i
guest-rmlbtg
guest-mz53vp
 

Kuondoa akaunti za wageni (ambao hawajahifadhi faili hata hivyo) tumia:

 $ cat /etc/passwd | grep -vE '(/bin/false|/sbin/nologin|/bin/sync|guest-)' | cut -d: -f1
root
rick
 

Watumiaji wengine wa mfano walioondolewa kwenye orodha ni:

 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
 

Inabadilika kuwa watumiaji wengi kwenye mfumo mmoja wa watumiaji ni mipango ambayo wamejiweka wenyewe kama watumiaji.


0