psacct അല്ലെങ്കിൽ acct ടൂളുകൾ ഉപയോഗിച്ച് ഉപയോക്തൃ പ്രവർത്തനം എങ്ങനെ നിരീക്ഷിക്കാം
psacct അല്ലെങ്കിൽ acct രണ്ടും സിസ്റ്റത്തിലെ ഉപയോക്താക്കളുടെ പ്രവർത്തനങ്ങൾ നിരീക്ഷിക്കുന്നതിനുള്ള ഓപ്പൺ സോഴ്uസ് ആപ്ലിക്കേഷനാണ്. ഈ ആപ്ലിക്കേഷനുകൾ പശ്ചാത്തലത്തിൽ പ്രവർത്തിക്കുകയും നിങ്ങളുടെ സിസ്റ്റത്തിലെ ഓരോ ഉപയോക്തൃ പ്രവർത്തനത്തിന്റെയും ട്രാക്ക് സൂക്ഷിക്കുകയും ഏത് ഉറവിടങ്ങളാണ് ഉപയോഗിക്കുന്നത്.
ഞങ്ങളുടെ കമ്പനിയിൽ ഞാൻ വ്യക്തിപരമായി ഈ പ്രോഗ്രാം ഉപയോഗിച്ചു, ഞങ്ങളുടെ ഡെവലപ്പർമാർ സെർവറുകളിൽ തുടർച്ചയായി പ്രവർത്തിക്കുന്ന ഡെവലപ്uമെന്റ് ടീം ഞങ്ങൾക്കുണ്ട്. അതിനാൽ, അവരെ നിരീക്ഷിക്കുന്നതിനുള്ള മികച്ച പ്രോഗ്രാമുകളിൽ ഒന്നാണിത്. ഉപയോക്താക്കൾ എന്താണ് ചെയ്യുന്നതെന്ന് നിരീക്ഷിക്കുന്നതിനുള്ള മികച്ച മാർഗം ഈ പ്രോഗ്രാം നൽകുന്നു, അവർ എന്ത് കമാൻഡുകളാണ് വെടിവയ്ക്കുന്നത്, അവർ എത്ര വിഭവങ്ങൾ ഉപയോഗിക്കുന്നു, എത്രത്തോളം ഉപയോക്താക്കൾ സിസ്റ്റത്തിൽ സജീവമാണ്. Apache, MySQL, FTP, SSH മുതലായ സേവനങ്ങൾ ഉപയോഗിക്കുന്ന മൊത്തം ഉറവിടങ്ങൾ ഈ പ്രോഗ്രാമിന്റെ മറ്റൊരു മികച്ച സവിശേഷതയാണ്.
എല്ലാ Linux/Unix സിസ്റ്റം അഡ്uമിനിസ്uട്രേറ്റർമാർക്കും അവരുടെ സെർവറുകൾ/സിസ്റ്റമുകളിലെ ഉപയോക്തൃ പ്രവർത്തനങ്ങളുടെ ഒരു ട്രാക്ക് സൂക്ഷിക്കാൻ ആഗ്രഹിക്കുന്ന മികച്ചതും ആവശ്യമായതുമായ ആപ്ലിക്കേഷനുകളിൽ ഒന്നാണിതെന്ന് ഞാൻ കരുതുന്നു.
psacct അല്ലെങ്കിൽ acct പാക്കേജ് പ്രക്രിയ പ്രവർത്തനങ്ങൾ നിരീക്ഷിക്കുന്നതിന് നിരവധി സവിശേഷതകൾ നൽകുന്നു.
- ac കമാൻഡ് മണിക്കൂറുകൾക്കുള്ളിൽ ഉപയോക്തൃ ലോഗിൻ/ലോഗൗട്ടുകളുടെ (കണക്uറ്റ് സമയം) സ്ഥിതിവിവരക്കണക്കുകൾ പ്രിന്റ് ചെയ്യുന്നു.
- lastcomm കമാൻഡ് ഉപയോക്താവിന്റെ മുമ്പ് നടപ്പിലാക്കിയ കമാൻഡുകളുടെ വിവരങ്ങൾ പ്രിന്റ് ചെയ്യുന്നു.
- അക്കൌണ്ടിംഗിനായുള്ള പ്രോസസ്സ് ഓൺ/ഓഫ് ചെയ്യാൻ ആക്റ്റോൺ കമാൻഡുകൾ ഉപയോഗിക്കുന്നു.
- sa കമാൻഡ് മുമ്പ് എക്സിക്യൂട്ട് ചെയ്ത കമാൻഡുകളുടെ വിവരങ്ങൾ സംഗ്രഹിക്കുന്നു.
- അവസാനവും അവസാനവുമായ കമാൻഡുകൾ അവസാനം ലോഗിൻ ചെയ്uത ഉപയോക്താക്കളുടെ ലിസ്uറ്റിംഗ് കാണിക്കുന്നു.
psacct അല്ലെങ്കിൽ acct പാക്കേജുകൾ ഇൻസ്റ്റാൾ ചെയ്യുന്നു
psacct അല്ലെങ്കിൽ acct രണ്ടും സമാന പാക്കേജുകളാണ്, അവ തമ്മിൽ വലിയ വ്യത്യാസമില്ല, എന്നാൽ RHEL, CentOS, Fedora തുടങ്ങിയ rpm അടിസ്ഥാനമാക്കിയുള്ള വിതരണങ്ങൾക്ക് മാത്രമേ psacct പാക്കേജ് ലഭ്യമാകൂ, അതേസമയം ഉബുണ്ടു, ഡെബിയൻ, ലിനക്സ് മിന്റ് തുടങ്ങിയ വിതരണങ്ങൾക്ക് acct പാക്കേജ് ലഭ്യമാണ്.
rpm അടിസ്ഥാനമാക്കിയുള്ള വിതരണങ്ങൾക്ക് കീഴിൽ psacct പാക്കേജ് ഇൻസ്റ്റോൾ ചെയ്യുന്നതിന് താഴെ പറയുന്ന yum കമാൻഡ് നൽകുക.
# yum install psacct
ഉബുണ്ടു/ഡെബിയൻ/ലിനക്സ് മിന്റിനു കീഴിലുള്ള apt-get കമാൻഡ് ഉപയോഗിച്ച് acct പാക്കേജ് ഇൻസ്റ്റാൾ ചെയ്യാൻ.
$ sudo apt-get install acct OR # apt-get install acct
ഡിഫോൾട്ടായി psacct സേവനം പ്രവർത്തനരഹിതമാക്കിയ മോഡിലാണ്, നിങ്ങൾ ഇത് RHEL/CentOS/Fedora സിസ്റ്റങ്ങൾക്ക് കീഴിൽ സ്വമേധയാ ആരംഭിക്കേണ്ടതുണ്ട്. സേവനത്തിന്റെ നില പരിശോധിക്കാൻ ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിക്കുക.
# /etc/init.d/psacct status Process accounting is disabled.
പ്രവർത്തനരഹിതമായി കാണിക്കുന്ന സ്റ്റാറ്റസ് നിങ്ങൾ കാണുന്നു, അതിനാൽ ഇനിപ്പറയുന്ന രണ്ട് കമാൻഡുകളും ഉപയോഗിച്ച് നമുക്ക് ഇത് സ്വമേധയാ ആരംഭിക്കാം. ഈ രണ്ട് കമാൻഡുകളും ഒരു /var/account/pact ഫയൽ സൃഷ്ടിക്കുകയും സേവനങ്ങൾ ആരംഭിക്കുകയും ചെയ്യും.
# chkconfig psacct on # /etc/init.d/psacct start Starting process accounting: [ OK ]
സേവനം ആരംഭിച്ചതിന് ശേഷം, സ്റ്റാറ്റസ് വീണ്ടും പരിശോധിക്കുക, ചുവടെ കാണിച്ചിരിക്കുന്നതുപോലെ നിങ്ങൾക്ക് സ്റ്റാറ്റസ് ലഭിക്കും.
# /etc/init.d/psacct status Process accounting is enabled.
ഉബുണ്ടുവിന് കീഴിൽ, ഡെബിയൻ, മിന്റ് സേവനം സ്വയമേവ ആരംഭിക്കുന്നു, നിങ്ങൾ അത് വീണ്ടും ആരംഭിക്കേണ്ടതില്ല.
ഒരു ആർഗ്യുമെന്റും വ്യക്തമാക്കാതെ ac കമാൻഡ് നിലവിലെ wtmp ഫയലിൽ നിന്നുള്ള ഉപയോക്തൃ ലോഗിനുകൾ/ലോഗൗട്ടുകൾ അടിസ്ഥാനമാക്കി മണിക്കൂറുകൾക്കുള്ളിൽ കണക്ട് സമയത്തിന്റെ മൊത്തം സ്ഥിതിവിവരക്കണക്കുകൾ പ്രദർശിപ്പിക്കും.
# ac
total 1814.03
“ac -d” എന്ന കമാൻഡ് ഉപയോഗിക്കുന്നത് ദിവസം തിരിച്ച് മണിക്കൂറുകൾക്കുള്ളിൽ മൊത്തം ലോഗിൻ സമയം പ്രിന്റ് ചെയ്യും.
# ac -d
Sep 17 total 5.23 Sep 18 total 15.20 Sep 24 total 3.21 Sep 25 total 2.27 Sep 26 total 2.64 Sep 27 total 6.19 Oct 1 total 6.41 Oct 3 total 2.42 Oct 4 total 2.52 Oct 5 total 6.11 Oct 8 total 12.98 Oct 9 total 22.65 Oct 11 total 16.18
“ac -p” എന്ന കമാൻഡ് ഉപയോഗിക്കുന്നത് ഓരോ ഉപയോക്താവിന്റെയും മൊത്തം ലോഗിൻ സമയം മണിക്കൂറുകൾക്കുള്ളിൽ പ്രിന്റ് ചെയ്യും.
# ac -p
root 1645.18 tecmint 168.96 total 1814.14
tecmint എന്ന ഉപയോക്താവിന്റെ മൊത്തം ലോഗിൻ സ്ഥിതിവിവരക്കണക്കുകൾ മണിക്കൂറുകൾക്കുള്ളിൽ ലഭിക്കുന്നതിന്, കമാൻഡ് ഇതായി ഉപയോഗിക്കുക.
# ac tecmint
total 168.96
ഇനിപ്പറയുന്ന കമാൻഡ്, tecmint എന്ന ഉപയോക്താവിന്റെ ദിവസം തിരിച്ചുള്ള മൊത്തം ലോഗിൻ സമയം മണിക്കൂറുകളിൽ പ്രിന്റ് ചെയ്യും.
# 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
ഉപയോക്താക്കൾ എക്സിക്യൂട്ട് ചെയ്ത കമാൻഡുകളുടെ സംഗ്രഹം പ്രിന്റ് ചെയ്യാൻ sa കമാൻഡ് ഉപയോഗിക്കുന്നു.
# 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
- വാൾ ക്ലോക്ക് മിനിറ്റ് അനുസരിച്ച് 9.86re ഒരു റിയൽ ടൈം ആണ്
- 0.01cp എന്നത് cpu മിനിറ്റുകളിലെ സിസ്റ്റം/ഉപയോക്തൃ സമയത്തിന്റെ ആകെത്തുകയാണ്
- 2466k എന്നത് cpu-ടൈം ശരാശരി പ്രധാന ഉപയോഗമാണ്, അതായത് 1k യൂണിറ്റുകൾ
- sshd കമാൻഡിന്റെ പേര്
വ്യക്തിഗത ഉപയോക്താവിന്റെ വിവരങ്ങൾ ലഭിക്കുന്നതിന്, -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
ഈ കമാൻഡ് മൊത്തം പ്രോസസ്സുകളുടെയും സിപിയു മിനിറ്റുകളുടെയും എണ്ണം പ്രിന്റ് ചെയ്യുന്നു. ഈ സംഖ്യകളിൽ തുടർച്ചയായ വർദ്ധനവ് നിങ്ങൾ കാണുകയാണെങ്കിൽ, എന്താണ് സംഭവിക്കുന്നതെന്ന് സിസ്റ്റത്തിലേക്ക് നോക്കേണ്ട സമയമാണിത്.
# sa -m
sshd 2 9.86re 0.00cp 2466k root 127 14.29re 0.00cp 909k
sa -c എന്ന കമാൻഡ് ഏറ്റവും ഉയർന്ന ശതമാനം ഉപയോക്താക്കളെ കാണിക്കുന്നു.
# 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
മുമ്പ് എക്സിക്യൂട്ട് ചെയ്ത ഉപയോക്തൃ കമാൻഡ് വിവരങ്ങൾ തിരയാനും പ്രദർശിപ്പിക്കാനും 'latcom' കമാൻഡ് ഉപയോഗിക്കുന്നു. നിങ്ങൾക്ക് വ്യക്തിഗത ഉപയോക്തൃനാമങ്ങളുടെ കമാൻഡുകൾ തിരയാനും കഴിയും. ഉദാഹരണത്തിന്, നമ്മൾ ഉപയോക്താവിന്റെ (ടെക്മിന്റ്) കമാൻഡുകൾ കാണുന്നു.
# 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
Lastcomm കമാൻഡിന്റെ സഹായത്തോടെ നിങ്ങൾക്ക് ഓരോ കമാൻഡുകളുടെയും വ്യക്തിഗത ഉപയോഗം കാണാൻ കഴിയും.
# 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