Pag-monitor sa Kalihokan sa mga Gumagamit sa Linux gamit ang psacct o acct Tools


Ang psacct o acct pareho nga open source utilities alang sa pagmonitor sa mga kalihokan sa tiggamit sa Linux system. Kini nga mga utilities nagdagan sa background ug nagsubay sa kalihokan sa matag tiggamit sa imong sistema ingon man kung unsang mga kapanguhaan ang gigamit.

Personal nakong gigamit kini nga mga himan sa among kompaniya, kami adunay usa ka development team diin ang among mga developers padayon nga nagtrabaho sa mga server. Mao nga, kini ang labing kaayo nga mga gamit aron mabantayan sila.

Kini nga mga programa naghatag usa ka maayo kaayo nga paagi sa pag-monitor kung unsa ang gibuhat sa mga tiggamit, unsa nga mga mando ang ilang gipatuman, pila ka mga kapanguhaan ang gigamit nila, ug kung unsa kadugay ang mga tiggamit aktibo sa sistema. Ang laing mapuslanon nga bahin mao, nga kini naghatag sa kinatibuk-ang mga kapanguhaan nga gigamit sa mga serbisyo sama sa Apache, MySQL, FTP, SSH, ug uban pa.

[ Tingali ganahan ka usab: Giunsa Pag-monitor ang mga Sugo sa Linux nga Gipatuman sa mga Gumagamit sa System sa Tinuod nga Oras ]

Sa akong hunahuna kini usa sa labing maayo ug labing kinahanglan nga mga utilities alang sa matag Linux/Unix System Administrator, nga gusto nga magsubay sa mga kalihokan sa tiggamit sa ilang mga server/sistema.

Ang psacct o acct nga pakete naghatag og daghang mga bahin alang sa pagmonitor sa mga kalihokan sa proseso.

  • ac command nag-imprenta sa mga estadistika sa user logins/logouts (oras sa pagkonektar) sulod sa mga oras.
  • lastcomm nga sugo nag-imprenta sa impormasyon sa kanhing gipatuman nga mga sugo sa user.
  • Ang accton commands kay gigamit para i-on/off ang proseso para sa accounting.
  • sa command nagsummarize sa impormasyon sa nauna nang gipatuman nga mga command.
  • Last ug lastb commands nagpakita sa listahan sa mga last log-in users.

Pag-instalar sa psacct o acct Packages sa Linux

Ang psacct ug acct parehas nga mga pakete ug wala’y daghang kalainan tali kanila, apan ang psacct nga pakete magamit ra alang sa mga pag-apod-apod nga nakabase sa rpm sama sa RHEL, CentOS, ug Fedora, samtang ang pakete sa acct magamit alang sa mga pag-apod-apod sama sa Ubuntu, Debian, ug Linux Mint.

Aron ma-install ang psacct nga pakete sa ilawom sa rpm-based nga mga distribusyon, i-isyu ang mosunod nga yum command.

# yum install psacct

Aron ma-install ang acct package gamit ang apt command ubos sa Ubuntu/Debian/Linux Mint.

$ sudo apt install acct

Sa ubang mga distribusyon sa Linux, mahimo nimo kini i-install sama sa gipakita.

$ sudo apk add psacct          [On Alpine Linux]
$ sudo pacman -S acct          [On Arch Linux]
$ sudo zypper install acct     [On OpenSUSE]    

Sa kasagaran, ang serbisyo sa psacct anaa sa disabled mode ug kinahanglan nimo nga sugdan kini nga mano-mano ubos sa RHEL-based distributions. Gamita ang mosunod nga sugo aron masusi ang kahimtang sa serbisyo.

$ sudo systemctl status psacct

Nakita nimo ang status nga nagpakita nga disabled, busa sugdan nato kini sa mano-mano gamit ang mosunod nga mga sugo, nga maghimo og /var/account/pacct file.

$ sudo systemctl start psacct
$ sudo systemctl enable psacct
$ sudo systemctl status psacct

Ubos sa Ubuntu, Debian, ug Mint nga serbisyo awtomatiko nga gisugdan, dili nimo kinahanglan nga sugdan kini pag-usab.

Ipakita ang Estadistika sa Oras sa Pagkonektar sa mga Gumagamit

ac command nga walay pagtino sa bisan unsa nga argumento magpakita sa kinatibuk-ang estadistika sa oras sa pagkonektar sa mga oras base sa mga logins/logout sa user gikan sa kasamtangang wtmp file.

# ac

total     11299.15

Ipakita ang Estadistika sa Linux Users Day-wise

Ang paggamit sa command ac -d mag-print sa kinatibuk-ang oras sa pag-login sa mga oras sa adlaw-maalamon.

# ac -d

Jun 25	total        0.19
Oct 13	total       14.45
Oct 27	total      672.00
Oct 28	total       15.82
Nov  3	total        4.29
Nov  5	total       10.13
Dec  7	total       14.04
Dec 10	total       23.60
Dec 27	total      808.93
Jan  3	total       12.31
Mar  3	total     1438.67
Jul 22	total     6767.81
Today	total     1517.09

Ipakita ang Total nga Oras sa Pag-login sa Tanang Gumagamit sa Linux

Ang paggamit sa command ac -p mag-imprinta sa kinatibuk-ang oras sa pag-login sa matag user sa Linux sulod sa mga oras.

# ac -p

	rockylinux                         425.61
	tecmint                            702.29
	root                             10171.54
	total    11299.44

Ipakita ang Oras sa Pag-login sa Gumagamit sa Linux

Aron makuha ang kinatibuk-ang oras sa istatistika sa pag-login sa user nga tecmint sa mga oras, gamita ang command as.

# ac tecmint
 total      702.29

Ipakita ang Day-Wise nga Oras sa Pag-login sa Gumagamit

Ang mosunud nga mando mag-imprinta sa adlaw-maalamon nga total nga oras sa pag-login sa user nga tecmint sa mga oras.

# ac -d tecmint
Oct 11  total        8.01
Oct 12  total       24.00
Oct 15  total       70.50
Oct 16  total       23.57
Oct 17  total       24.00
Oct 18  total       18.70
Nov 20  total        0.18

I-print ang Tanang Linux Commands nga Gipatuman sa mga Gumagamit

Ang sa nga sugo gigamit sa pag-imprinta sa summary sa mga sugo nga gipatuman sa mga tiggamit.

# sa
       2       9.86re       0.00cp     2466k   sshd*
       8       1.05re       0.00cp     1064k   man
       2      10.08re       0.00cp     2562k   sshd
      12       0.00re       0.00cp     1298k   psacct
       2       0.00re       0.00cp     1575k   troff
      14       0.00re       0.00cp      503k   ac
      10       0.00re       0.00cp     1264k   psacct*
      10       0.00re       0.00cp      466k   consoletype
       9       0.00re       0.00cp      509k   sa
       8       0.02re       0.00cp      769k   udisks-helper-a
       6       0.00re       0.00cp     1057k   touch
       6       0.00re       0.00cp      592k   gzip
       6       0.00re       0.00cp      465k   accton
       4       1.05re       0.00cp     1264k   sh*
       4       0.00re       0.00cp     1264k   nroff*
       2       1.05re       0.00cp     1264k   sh
       2       1.05re       0.00cp     1120k   less
       2       0.00re       0.00cp     1346k   groff
       2       0.00re       0.00cp     1383k   grotty
       2       0.00re       0.00cp     1053k   mktemp
       2       0.00re       0.00cp     1030k   iconv
       2       0.00re       0.00cp     1023k   rm
       2       0.00re       0.00cp     1020k   cat
       2       0.00re       0.00cp     1018k   locale
       2       0.00re       0.00cp      802k   gtbl

Pagpatin-aw sa labaw sa command output:

  • 9.86re kay usa ka “real-time” sumala sa wall clock minutes
  • Ang
  • 0.01cp maoy sumada sa sistema/oras sa user sa cpu minutos
  • Ang 2466k usa ka cpu-time nga average nga core nga paggamit, ie 1k units
  • sshd command name

I-print ang Impormasyon sa Gumagamit sa Linux

Aron makuha ang kasayuran sa usa ka indibidwal nga tiggamit, gamita ang mga kapilian -u.

# sa -u
root       0.00 cpu      465k mem accton
root       0.00 cpu     1057k mem touch
root       0.00 cpu     1298k mem psacct
root       0.00 cpu      466k mem consoletype
root       0.00 cpu     1264k mem psacct           *
root       0.00 cpu     1298k mem psacct
root       0.00 cpu      466k mem consoletype
root       0.00 cpu     1264k mem psacct           *
root       0.00 cpu     1298k mem psacct
root       0.00 cpu      466k mem consoletype
root       0.00 cpu     1264k mem psacct           *
root       0.00 cpu      465k mem accton
root       0.00 cpu     1057k mem touch

I-print nga Gidaghanon sa mga Proseso sa Linux

Kini nga sugo nag-imprinta sa kinatibuk-ang gidaghanon sa mga proseso ug mga minuto sa CPU. Kung nakakita ka usa ka padayon nga pagtaas sa kini nga mga numero, nan panahon na aron tan-awon ang sistema kung unsa ang nanghitabo.

# sa -m
sshd                                    2       9.86re       0.00cp     2466k
root                                  127      14.29re       0.00cp      909k

Pag-imprinta ug Pagsunud sa Paggamit pinaagi sa Porsiyento

Ang command sa -c nagpakita sa pinakataas nga porsyento sa mga tiggamit.

# sa -c
 132  100.00%      24.16re  100.00%       0.01cp  100.00%      923k
       2    1.52%       9.86re   40.83%       0.00cp   53.33%     2466k   sshd*
       8    6.06%       1.05re    4.34%       0.00cp   20.00%     1064k   man
       2    1.52%      10.08re   41.73%       0.00cp   13.33%     2562k   sshd
      12    9.09%       0.00re    0.01%       0.00cp    6.67%     1298k   psacct
       2    1.52%       0.00re    0.00%       0.00cp    6.67%     1575k   troff
      18   13.64%       0.00re    0.00%       0.00cp    0.00%      509k   sa
      14   10.61%       0.00re    0.00%       0.00cp    0.00%      503k   ac
      10    7.58%       0.00re    0.00%       0.00cp    0.00%     1264k   psacct*
      10    7.58%       0.00re    0.00%       0.00cp    0.00%      466k   consoletype
       8    6.06%       0.02re    0.07%       0.00cp    0.00%      769k   udisks-helper-a
       6    4.55%       0.00re    0.00%       0.00cp    0.00%     1057k   touch
       6    4.55%       0.00re    0.00%       0.00cp    0.00%      592k   gzip
       6    4.55%       0.00re    0.00%       0.00cp    0.00%      465k   accton
       4    3.03%       1.05re    4.34%       0.00cp    0.00%     1264k   sh*
       4    3.03%       0.00re    0.00%       0.00cp    0.00%     1264k   nroff*
       2    1.52%       1.05re    4.34%       0.00cp    0.00%     1264k   sh
       2    1.52%       1.05re    4.34%       0.00cp    0.00%     1120k   less
       2    1.52%       0.00re    0.00%       0.00cp    0.00%     1346k   groff
       2    1.52%       0.00re    0.00%       0.00cp    0.00%     1383k   grotty
       2    1.52%       0.00re    0.00%       0.00cp    0.00%     1053k   mktemp

Ilista ang Katapusan nga Gipatuman nga mga Sugo sa Gumagamit

Ang 'latcomm' nga sugo gigamit sa pagpangita ug pagpakita kaniadto nga gipatuman nga impormasyon sa command sa user. Mahimo usab nimo pangitaon ang mga sugo sa indibidwal nga mga username. Pananglitan, atong makita ang mga sugo sa user (tecmint).

# lastcomm tecmint
su                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56
ls                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56
ls                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56
ls                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56
bash               F    tecmint  pts/0      0.00 secs Wed Feb 13 15:56
id                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56
grep                    tecmint  pts/0      0.00 secs Wed Feb 13 15:56
grep                    tecmint  pts/0      0.00 secs Wed Feb 13 15:56
bash               F    tecmint  pts/0      0.00 secs Wed Feb 13 15:56
dircolors               tecmint  pts/0      0.00 secs Wed Feb 13 15:56
bash               F    tecmint  pts/0      0.00 secs Wed Feb 13 15:56
tput                    tecmint  pts/0      0.00 secs Wed Feb 13 15:56
tty                     tecmint  pts/0      0.00 secs Wed Feb 13 15:56
bash               F    tecmint  pts/0      0.00 secs Wed Feb 13 15:56
id                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56
bash               F    tecmint  pts/0      0.00 secs Wed Feb 13 15:56
id                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56

Pangitaa ang mga Log alang sa mga Sugo

Uban sa tabang sa lastcomm command, mahimo nimong tan-awon ang indibidwal nga paggamit sa matag command.

# lastcomm ls
ls                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56
ls                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56
ls                      tecmint  pts/0      0.00 secs Wed Feb 13 15:56

Para sa dugang nga impormasyon ug paggamit, tan-awa ang manwal nga mga panid niini nga mga himan.