Pratite aktivnost korisnika Linuxa pomoću alata psacct ili acct
psacct ili acct oba su uslužni programi otvorenog koda za praćenje aktivnosti korisnika na sustavu Linux. Ovi uslužni programi rade u pozadini i prate aktivnost svakog korisnika na vašem sustavu kao i koji se resursi troše.
Osobno sam koristio ove alate u našoj tvrtki, imamo razvojni tim gdje naši programeri kontinuirano rade na serverima. Dakle, ovo su najbolji alati da ih držite na oku.
Ovi programi pružaju odličan način za praćenje onoga što korisnici rade, koje naredbe izvršavaju, koliko resursa troše i koliko dugo su korisnici aktivni na sustavu. Još jedna korisna značajka je da daje ukupne resurse koje troše usluge kao što su Apache, MySQL, FTP, SSH itd.
Mislim da je ovo jedan od sjajnih i najpotrebnijih uslužnih programa za svakog administratora Linux/Unix sustava, koji želi pratiti aktivnosti korisnika na svojim poslužiteljima/sustavima.
Paket psacct ili acct pruža nekoliko značajki za praćenje aktivnosti procesa.
- Naredba ac ispisuje statistiku prijava/odjava korisnika (vrijeme povezivanja) u satima.
- Naredba lastcomm ispisuje informacije o prethodno izvršenim naredbama korisnika.
- Naredba accton koristi se za uključivanje/isključivanje procesa za računovodstvo.
- Naredba sa sažima informacije o prethodno izvedenim naredbama.
- Naredbe last i lastb prikazuju popis zadnjih prijavljenih korisnika.
Instaliranje psacct ili acct paketa u Linuxu
psacct i acct slični su paketi i nema velike razlike između njih, ali paket psacct dostupan je samo za distribucije koje se temelje na rpm-u kao što su kao RHEL, CentOS, i Fedora, dok je paket acct dostupan za distribucije kao što je Ubuntu<, Debian, i Linux Mint.
Za instalaciju paketa psacct pod distribucijama koje se temelje na rpm izdajte sljedeću naredbu yum.
yum install psacct
Za instalaciju paketa acct pomoću naredbe apt pod Ubuntu/Debian/Linux Mint.
sudo apt install acct
Na drugim distribucijama Linuxa možete ga instalirati kao što je prikazano.
sudo apk add psacct [On Alpine Linux]
sudo pacman -S acct [On Arch Linux]
sudo zypper install acct [On OpenSUSE]
Pokretanje usluge psacct ili acct
Prema zadanim postavkama, usluga psacct je u onemogućenom načinu rada i morate je pokrenuti ručno u distribucijama temeljenim na RHEL-u. Koristite sljedeću naredbu za provjeru statusa usluge.
sudo systemctl status psacct
Vidite da se status prikazuje kao onemogućen, pa ga pokrenimo ručno pomoću sljedećih naredbi, koje će stvoriti datoteku /var/account/pacct.
sudo systemctl start psacct
sudo systemctl enable psacct
sudo systemctl status psacct
Pod Ubuntu, Debianom i Mint usluga se pokreće automatski, ne morate je ponovo pokretati.
Prikaz statistike vremena povezivanja korisnika
Naredba ac bez navođenja bilo kojeg argumenta prikazat će ukupnu statistiku vremena povezivanja u satima na temelju korisničkih prijava/odjava iz trenutne wtmp datoteke.
ac
total 11299.15
Prikaz statistike korisnika Linuxa po danu
Korištenje naredbe “ac -d” će ispisati ukupno vrijeme prijave u satima po danu.
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
Prikaz ukupnog vremena prijave svih korisnika Linuxa
Korištenje naredbe “ac -p” ispisat će ukupno vrijeme prijave svakog korisnika Linuxa u satima.
ac -p
rockylinux 425.61
tecmint 702.29
root 10171.54
total 11299.44
Prikaz vremena prijave korisnika Linuxa
Za dobivanje ukupne statistike vremena prijave korisnika “tecmint” u satima, koristite naredbu as.
ac tecmint
total 702.29
Prikaz vremena prijave korisnika po danu
Sljedeća naredba će ispisati ukupno vrijeme prijave korisnika “tecmint” u satima po danu.
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
Ispiši sve Linux naredbe koje su izvršili korisnici
Naredba “sa” koristi se za ispis sažetka naredbi koje su izvršili korisnici.
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
Objašnjenje izlaza gornje naredbe:
- 9.86re je “stvarno vrijeme” prema minutama zidnog sata
- 0.01cp je zbroj sistemskog/korisničkog vremena u CPU minutama
- 2466k je prosječna upotreba jezgre procesora, tj. 1k jedinica
- Naziv naredbe sshd
Ispis korisničkih informacija za Linux
Za dobivanje podataka o pojedinom korisniku koristite opcije -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
Ispiši broj Linux procesa
Ova naredba ispisuje ukupan broj procesa i CPU minuta. Ako vidite kontinuirano povećanje ovih brojeva, onda je vrijeme da provjerite što se događa u sustavu.
sa -m
sshd 2 9.86re 0.00cp 2466k
root 127 14.29re 0.00cp 909k
Ispis i sortiranje upotrebe prema postotku
Naredba “sa -c” prikazuje najveći postotak korisnika.
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
Popis zadnjih izvršenih naredbi korisnika
Naredba ‘latcomm’ koristi se za pretraživanje i prikaz informacija o prethodno izvršenim korisničkim naredbama. Također možete pretraživati naredbe pojedinačnih korisničkih imena. Na primjer, vidimo naredbe korisnika (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
Pretraži zapisnike za naredbe
Uz pomoć naredbe lastcomm moći ćete vidjeti pojedinačnu upotrebu svake naredbe.
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
Za više informacija i korištenje, provjerite stranice priručnika za ove alate.