Here we are going to learn some advanced Linux commands and Bash shell language.

grep

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# 'path' can be replaced as other elements to search
[mo@mos-computer ~]$ grep path /etc/profile
pathmunge () {
pathmunge /usr/sbin
pathmunge /usr/local/sbin
pathmunge /usr/local/sbin after
pathmunge /usr/sbin after
unset -f pathmunge

[mo@mos-computer ~]$ grep "Hello World" file

[mo@mos-computer ~]$ grep -i path /etc/profile
pathmunge () {
case ":${PATH}:" in
PATH=$PATH:$1
PATH=$1:$PATH
# Path manipulation
pathmunge /usr/sbin
pathmunge /usr/local/sbin
pathmunge /usr/local/sbin after
pathmunge /usr/sbin after
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
unset -f pathmunge

[mo@mos-computer ~]$ grep -n path /etc/profile
11:pathmunge () {
38: pathmunge /usr/sbin
39: pathmunge /usr/local/sbin
41: pathmunge /usr/local/sbin after
42: pathmunge /usr/sbin after
76:unset -f pathmunge

[mo@mos-computer ~]$ grep -v path /etc/profile
# /etc/profile

# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc

# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.

case ":${PATH}:" in
*:"$1":*)
;;
*)
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
esac
}


if [ -x /usr/bin/id ]; then
if [ -z "$EUID" ]; then
# ksh workaround
EUID=`/usr/bin/id -u`
UID=`/usr/bin/id -ru`
fi
USER="`/usr/bin/id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
fi

# Path manipulation
if [ "$EUID" = "0" ]; then
else
fi

HOSTNAME=`/usr/bin/hostname 2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
export HISTCONTROL=ignoreboth
else
export HISTCONTROL=ignoredups
fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL

# By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
umask 002
else
umask 022
fi

for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
if [ -r "$i" ]; then
if [ "${-#*i}" != "$-" ]; then
. "$i"
else
. "$i" >/dev/null
fi
fi
done

unset i

man grep to see more options.

grep with regular expression (grep -E)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
[mo@mos-computer ~]$ grep -E Path /etc/profile
# Path manipulation
[mo@mos-computer ~]$ grep -E ^path /etc/profile
pathmunge () {
[mo@mos-computer ~]$ grep [pP]ath /etc/profile
pathmunge () {
# Path manipulation
pathmunge /usr/sbin
pathmunge /usr/local/sbin
pathmunge /usr/local/sbin after
pathmunge /usr/sbin after
unset -f pathmunge
[mo@mos-computer ~]$ grep -E [0-4] /etc/profile
*:"$1":*)
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
PATH=$1:$PATH
if [ "$EUID" = "0" ]; then
HOSTNAME=`/usr/bin/hostname 2>/dev/null`
HISTSIZE=1000
# Current threshold for system reserved uid/gids is 200
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
umask 002
umask 022
[mo@mos-computer ~]$ grep -E [a-Az-Z] /etc/profile
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.
pathmunge () {
case ":${PATH}:" in
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
esac
if [ -x /usr/bin/id ]; then
if [ -z "$EUID" ]; then
# ksh workaround
EUID=`/usr/bin/id -u`
UID=`/usr/bin/id -ru`
fi
USER="`/usr/bin/id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
fi
# Path manipulation
if [ "$EUID" = "0" ]; then
pathmunge /usr/sbin
pathmunge /usr/local/sbin
else
pathmunge /usr/local/sbin after
pathmunge /usr/sbin after
fi
HOSTNAME=`/usr/bin/hostname 2>/dev/null`
HISTSIZE=1000
if [ "$HISTCONTROL" = "ignorespace" ] ; then
export HISTCONTROL=ignoreboth
else
export HISTCONTROL=ignoredups
fi
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
# By default, we want umask to get set. This sets it for login shell
# Current threshold for system reserved uid/gids is 200
# You could check uidgid reservation validity in
# /usr/share/doc/setup-*/uidgid file
if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
umask 002
else
umask 022
fi
for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do
if [ -r "$i" ]; then
if [ "${-#*i}" != "$-" ]; then
. "$i"
else
. "$i" >/dev/null
fi
fi
done
unset i
unset -f pathmunge

sort (used to sort files)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
[mo@mos-computer ~]$ nano name.txt
[mo@mos-computer ~]$ cat name.txt
JOhn
MO
Jen
[mo@mos-computer ~]$ sort name.txt
Jen
JOhn
MO
[mo@mos-computer ~]$ sort -o name_sorted.txt name.txt
[mo@mos-computer ~]$ cat name_sorted.txt
Jen
JOhn
MO
[mo@mos-computer ~]$ sort -r name_sorted.txt
MO
JOhn
Jen
[mo@mos-computer ~]$ sort -R name_sorted.txt
JOhn
Jen
MO
[mo@mos-computer ~]$ sort -R name_sorted.txt
JOhn
MO
Jen
[mo@mos-computer ~]$ sort number.txt
12
122
3424
6
7
724525
[mo@mos-computer ~]$ sort -n number.txt
6
7
12
122
3424
724525
[mo@mos-computer ~]$ wc name.txt
3 3 12 name.txt
# newline word byte counts
# -l count lines -w count words -c count byte -m count chars

uniq (remove duplicates)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[mo@mos-computer ~]$ cat repeat.txt 
China
China
China
Pakistan
[mo@mos-computer ~]$ uniq repeat.txt
China
Pakistan
[mo@mos-computer ~]$ uniq repeat.txt unique.txt
[mo@mos-computer ~]$ cat unique.txt
China
Pakistan
[mo@mos-computer ~]$ uniq -c repeat.txt
3 China
1 Pakistan
[mo@mos-computer ~]$ uniq -d repeat.txt
China

cut (cut part of the file)

1
2
3
4
[mo@mos-computer ~]$ cut -c 1-3 name.txt
JOh
MO
Jen

man cut to see details.

Stream, re-direct and Pipeline

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
# stream (sent output to somewhere else...), pipeline(connect two commands), re-diret
# search what is called 'stream' in CS

# here is the pipeline looks like: command 1 --> output --> terminal/ files/ another command

# '>' and '>>'

# here we use 'cut' ops in a csv file to illustrate

[mo@mos-computer ~]$ nano grades.csv
[mo@mos-computer ~]$ cat grades.csv
Mark,95/10, 针不戳
Matthew,30/100, 和平常一样水
Maria,70/100,有进步
Luke,54/100,接近平均分了
John,68/100,不错,但还可以更好
Samuel,100/100,总是那么完美
David,40/100,退步挺大呀
[mo@mos-computer ~]$ cut -d , -f 1 grades.csv
Mark
Matthew
Maria
Luke
John
Samuel
David
[mo@mos-computer ~]$ cut -d , -f 3 grades.csv
针不戳
和平常一样水
有进步
接近平均分了
不错
总是那么完美
退步挺大呀
[mo@mos-computer ~]$ cut -d , -f 1,3 grades.csv
Mark, 针不戳
Matthew, 和平常一样水
Maria,有进步
Luke,接近平均分了
John,不错
Samuel,总是那么完美
David,退步挺大呀
[mo@mos-computer ~]$ cut -d , -f 2- grades.csv
95/10, 针不戳
30/100, 和平常一样水
70/100,有进步
54/100,接近平均分了
68/100,不错,但还可以更好
100/100,总是那么完美
40/100,退步挺大呀

# Now create a new folder to explain what is redirect
[mo@mos-computer ~]$ mv grades.csv redirect/
[mo@mos-computer ~]$ cd redirect/
[mo@mos-computer redirect]$ s
bash: s: command not found...
[mo@mos-computer redirect]$ ls
grades.csv
[mo@mos-computer redirect]$ cut -d , -f 1 grades.csv > students.txt
[mo@mos-computer redirect]$ cat students.txt
rk
Matthew
Maria
Luke
John
Samuel
David

#blackhole file: nullify all file direct to it
[mo@mos-computer redirect]$ cut -d , -f 1 grades.csv > /dev/null
[mo@mos-computer redirect]$ cut -d , -f 1 grades.csv >> students.txt
[mo@mos-computer redirect]$ cat students.txt
rk
Matthew
Maria
Luke
John
Samuel
David
rk
Matthew
Maria
Luke
John
Samuel
David

# '>' will redirect all content to another file and replace it while '>>' concat it to the eof.

# stdin (standard input stream), stdout, stderr (standard output/error stream)
[mo@mos-computer redirect]$ cat grades.csv
rk,95/10, 针不戳
Matthew,30/100, 和平常一样水
Maria,70/100,有进步
Luke,54/100,接近平均分了
John,68/100,不错,但还可以更好
Samuel,100/100,总是那么完美
David,40/100,退步挺大呀
[mo@mos-computer redirect]$ cd ..
[mo@mos-computer ~]$ cat grades.csv
cat: grades.csv: No such file or directory

# fd file descriptor: integer greater than zero... do further reading
[mo@mos-computer ~]$ cat not_exxist_file.csv > results.txt
cat: not_exxist_file.csv: No such file or directory

# redirect stderr to output file pos
[mo@mos-computer ~]$ cat not_exxist_file.csv > results.txt 2> errors.log
[mo@mos-computer ~]$ cat errors.log
cat: not_exxist_file.csv: No such file or directory

# combine output (both stdout and err)
[mo@mos-computer ~]$ cat not_exxist_file.csv > results.txt 2>&1
[mo@mos-computer ~]$ cat results.txt
cat: not_exxist_file.csv: No such file or directory
[mo@mos-computer ~]$ cat not_exxist_file.csv >> results.txt 2>&1
[mo@mos-computer ~]$ cat results.txt
cat: not_exxist_file.csv: No such file or directory
cat: not_exxist_file.csv: No such file or directory

# ls > file.txt

# redirect the input from ... keyboard/ file

# '<'
[mo@mos-computer ~]$ cd
[mo@mos-computer ~]$ cd redirect/
[mo@mos-computer redirect]$ cat < grades.csv
rk,95/10, 针不戳
Matthew,30/100, 和平常一样水
Maria,70/100,有进步
Luke,54/100,接近平均分了
John,68/100,不错,但还可以更好
Samuel,100/100,总是那么完美
David,40/100,退步挺大呀

# '<<' note: 'END' can be changed to any symbol to represent eof
[mo@mos-computer redirect]$ sort -n << END
> 12
> 9
> 27
> 99
> 30
> 14
> END
9
12
14
27
30
99
[mo@mos-computer redirect]$ wc -n << END
> how many chars are there in this sentence?
> END
wc: invalid option -- 'n'
Try 'wc --help' for more information.
[mo@mos-computer redirect]$ wc -m << END
> how many chars are there in this sentence?
> END
44

# combine '>' and '<<'
[mo@mos-computer redirect]$ sort -n << END > number_sorted.txt 2>&1
> 12
> 7
> 10
> 56
> 101
> 84
> END
[mo@mos-computer redirect]$ cat number_sorted.txt
7
10
12
56
84
101

# pipeline '|'
[mo@mos-computer redirect]$ cat grades.csv
rk,95/10, 针不戳
Matthew,30/100, 和平常一样水
Maria,70/100,有进步
Luke,54/100,接近平均分了
John,68/100,不错,但还可以更好
Samuel,100/100,总是那么完美
David,40/100,退步挺大呀
[mo@mos-computer redirect]$ cut -d , -f 1 grades.csv | sort
David
John
Luke
Maria
Matthew
rk
Samuel
[mo@mos-computer redirect]$ cut -d , -f 1 grades.csv | sort > sorted_names.txt
[mo@mos-computer redirect]$ cat sorted_names.txt
David
John
Luke
Maria
Matthew
rk
Samuel
[mo@mos-computer ~]$ du | sort -nr | head
# num (size) reverse order, front 10 lines
530960 .
319984 ./.cache
210440 ./.cache/google-chrome
210144 ./.cache/google-chrome/Default
186324 ./.cache/google-chrome/Default/Cache
63248 ./.mozilla/firefox
63248 ./.mozilla
63236 ./.mozilla/firefox/cu0s4zn2.default-default
59884 ./.icons
54236 ./.cache/tracker
[mo@mos-computer ~]$ sudo grep log -Ir /var/log | cut -d : -f 1 | sort | uniq
/var/log/anaconda/anaconda.log
/var/log/anaconda/journal.log
/var/log/anaconda/packaging.log
/var/log/anaconda/program.log
/var/log/anaconda/storage.log
/var/log/anaconda/syslog
/var/log/anaconda/X.log
/var/log/audit/audit.log
/var/log/boot.log-20210228
/var/log/boot.log-20210304
/var/log/cron
/var/log/cron-20210228
/var/log/dmesg
/var/log/dmesg.old
/var/log/gdm/
/var/log/messages
/var/log/messages-20210228
/var/log/secure
/var/log/secure-20210228
/var/log/vmware-network.1.log
/var/log/vmware-network.2.log
/var/log/vmware-network.3.log
/var/log/vmware-network.4.log
/var/log/vmware-network.5.log
/var/log/vmware-network.6.log
/var/log/vmware-network.7.log
/var/log/vmware-network.8.log
/var/log/vmware-network.9.log
/var/log/vmware-network.log
/var/log/vmware-vgauthsvc.log.0
/var/log/Xorg.0.log
/var/log/Xorg.0.log.old
/var/log/Xorg.1.log
/var/log/Xorg.2.log
/var/log/Xorg.9.log
/var/log/yum.log

Process and system monitoring

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
[mo@mos-computer ~]$ w
22:10:37 up 8:34, 2 users, load average: 0.01, 0.06, 0.09
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
mo :0 :0 13:37 ?xdm? 26:53 1.03s /usr/libexec/gn
mo pts/0 :0 22:10 2.00s 0.06s 0.01s w
# load average: in past 1 minute, 5 minutes, 15 minutes
[mo@mos-computer ~]$ uptime
22:11:21 up 8:35, 2 users, load average: 0.01, 0.05, 0.09
# if we want to see load change according to time
[mo@mos-computer ~]$ tload
1.01,0.53,0.26 * * * ** * ** * * ** * -------=-==-------== * *** ** ***** ** ***** ** ****** ** ****** ** ****** ** ****** ** ******* ** ******* ** ******** ** ******** ** ******** ** *********** ** *********** ** *********** ** ************ ** ************ ** *************** *************** *************** =============** *************** *************** *************** *************** *************** *************** *************** *************** *************** * *************** ** *************** ****************** ****************** ****************** ****************** ******************* ******************* ******************* ******************** ******************** ********************
[mo@mos-computer ~]$ w
22:23:54 up 8:47, 4 users, load average: 0.39, 0.29, 0.24
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
mo :0 :0 13:37 ?xdm? 29:18 1.10s /usr/libexec/gn
mo pts/0 :0 22:10 2.00s 0.11s 0.02s w
mo pts/1 :0 22:23 4.00s 0.04s 0.04s bash
mo tty3 22:23 50.00s 0.04s 0.04s -bash
[mo@mos-computer ~]$ who
mo :0 2021-03-04 13:37 (:0)
mo pts/0 2021-03-04 22:10 (:0)
mo tty3 2021-03-04 22:23
[mo@mos-computer ~]$ ps
# process status (static)
PID TTY TIME CMD
48805 pts/0 00:00:00 bash
50140 pts/0 00:00:00 ps
[mo@mos-computer ~]$ ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 13:36 ? 00:00:07 /usr/lib/systemd/systemd --swi
root 2 0 0 13:36 ? 00:00:00 [kthreadd]
root 4 2 0 13:36 ? 00:00:00 [kworker/0:0H]
root 6 2 0 13:36 ? 00:00:00 [ksoftirqd/0]
root 7 2 0 13:36 ? 00:00:00 [migration/0]
root 8 2 0 13:36 ? 00:00:00 [rcu_bh]
root 9 2 0 13:36 ? 00:00:19 [rcu_sched]
root 10 2 0 13:36 ? 00:00:00 [lru-add-drain]
root 11 2 0 13:36 ? 00:00:00 [watchdog/0]
root 12 2 0 13:36 ? 00:00:00 [watchdog/1]
root 13 2 0 13:36 ? 00:00:00 [migration/1]
root 14 2 0 13:36 ? 00:00:00 [ksoftirqd/1]
root 16 2 0 13:36 ? 00:00:00 [kworker/1:0H]
root 17 2 0 13:36 ? 00:00:00 [watchdog/2]
root 18 2 0 13:36 ? 00:00:00 [migration/2]
root 19 2 0 13:36 ? 00:00:00 [ksoftirqd/2]
root 21 2 0 13:36 ? 00:00:00 [kworker/2:0H]
root 22 2 0 13:36 ? 00:00:00 [watchdog/3]
root 23 2 0 13:36 ? 00:00:00 [migration/3]
root 24 2 0 13:36 ? 00:00:00 [ksoftirqd/3]
root 26 2 0 13:36 ? 00:00:00 [kworker/3:0H]
root 28 2 0 13:36 ? 00:00:00 [kdevtmpfs]
root 29 2 0 13:36 ? 00:00:00 [netns]
root 30 2 0 13:36 ? 00:00:00 [khungtaskd]
root 31 2 0 13:36 ? 00:00:00 [writeback]
root 32 2 0 13:36 ? 00:00:00 [kintegrityd]
root 33 2 0 13:36 ? 00:00:00 [bioset]
root 34 2 0 13:36 ? 00:00:00 [bioset]
root 35 2 0 13:36 ? 00:00:00 [bioset]
root 36 2 0 13:36 ? 00:00:00 [kblockd]
root 37 2 0 13:36 ? 00:00:00 [md]
root 38 2 0 13:36 ? 00:00:00 [edac-poller]
root 39 2 0 13:36 ? 00:00:00 [watchdogd]
root 45 2 0 13:36 ? 00:00:00 [kswapd0]
root 46 2 0 13:36 ? 00:00:00 [ksmd]
root 47 2 0 13:36 ? 00:00:01 [khugepaged]
root 48 2 0 13:36 ? 00:00:00 [crypto]
root 56 2 0 13:36 ? 00:00:00 [kthrotld]
root 58 2 0 13:36 ? 00:00:00 [kmpath_rdacd]
root 59 2 0 13:36 ? 00:00:00 [kaluad]
root 61 2 0 13:36 ? 00:00:00 [kpsmoused]
root 63 2 0 13:36 ? 00:00:00 [ipv6_addrconf]
root 77 2 0 13:36 ? 00:00:00 [deferwq]
root 116 2 0 13:36 ? 00:00:00 [kauditd]
root 306 2 0 13:36 ? 00:00:00 [mpt_poll_0]
root 307 2 0 13:36 ? 00:00:00 [ata_sff]
root 309 2 0 13:36 ? 00:00:00 [nfit]
root 310 2 0 13:36 ? 00:00:00 [mpt/0]
root 316 2 0 13:36 ? 00:00:00 [scsi_eh_0]
root 317 2 0 13:36 ? 00:00:00 [scsi_tmf_0]
root 319 2 0 13:36 ? 00:00:00 [scsi_eh_1]
root 320 2 0 13:36 ? 00:00:00 [scsi_tmf_1]
root 321 2 0 13:36 ? 00:00:00 [scsi_eh_2]
root 322 2 0 13:36 ? 00:00:00 [scsi_tmf_2]
root 325 2 0 13:36 ? 00:00:07 [irq/16-vmwgfx]
root 326 2 0 13:36 ? 00:00:00 [ttm_swap]
root 401 2 0 13:36 ? 00:00:00 [kdmflush]
root 402 2 0 13:36 ? 00:00:00 [bioset]
root 413 2 0 13:36 ? 00:00:00 [kdmflush]
root 414 2 0 13:36 ? 00:00:00 [bioset]
root 427 2 0 13:36 ? 00:00:00 [bioset]
root 428 2 0 13:36 ? 00:00:00 [xfsalloc]
root 429 2 0 13:36 ? 00:00:00 [xfs_mru_cache]
root 430 2 0 13:36 ? 00:00:00 [xfs-buf/dm-0]
root 431 2 0 13:36 ? 00:00:00 [xfs-data/dm-0]
root 432 2 0 13:36 ? 00:00:00 [xfs-conv/dm-0]
root 433 2 0 13:36 ? 00:00:00 [xfs-cil/dm-0]
root 434 2 0 13:36 ? 00:00:00 [xfs-reclaim/dm-]
root 435 2 0 13:36 ? 00:00:00 [xfs-log/dm-0]
root 436 2 0 13:36 ? 00:00:00 [xfs-eofblocks/d]
root 437 2 0 13:36 ? 00:00:29 [xfsaild/dm-0]
root 438 2 0 13:36 ? 00:00:00 [kworker/0:1H]
root 522 1 0 13:36 ? 00:00:03 /usr/lib/systemd/systemd-journ
root 546 1 0 13:36 ? 00:00:00 /usr/sbin/lvmetad -f
root 560 1 0 13:36 ? 00:00:01 /usr/lib/systemd/systemd-udevd
root 601 2 0 13:36 ? 00:00:00 [kworker/u257:0]
root 602 2 0 13:36 ? 00:00:00 [hci0]
root 603 2 0 13:36 ? 00:00:00 [hci0]
root 604 2 0 13:36 ? 00:00:00 [kworker/u257:1]
root 671 2 0 13:36 ? 00:00:00 [xfs-buf/sda1]
root 674 2 0 13:36 ? 00:00:00 [xfs-data/sda1]
root 677 2 0 13:36 ? 00:00:00 [xfs-conv/sda1]
root 678 2 0 13:36 ? 00:00:00 [xfs-cil/sda1]
root 679 2 0 13:36 ? 00:00:00 [xfs-reclaim/sda]
root 680 2 0 13:36 ? 00:00:00 [xfs-log/sda1]
root 681 2 0 13:36 ? 00:00:00 [xfs-eofblocks/s]
root 682 2 0 13:36 ? 00:00:00 [xfsaild/sda1]
root 683 1 0 13:36 ? 00:00:05 vmhgfs-fuse .host:/Share /mnt/
root 691 2 0 13:36 ? 00:00:00 [kworker/3:1H]
root 725 1 0 13:36 ? 00:00:00 /sbin/auditd
root 727 725 0 13:36 ? 00:00:00 /sbin/audispd
root 729 727 0 13:36 ? 00:00:00 /usr/sbin/sedispatch
root 731 2 0 13:36 ? 00:00:00 [rpciod]
root 732 2 0 13:36 ? 00:00:00 [xprtiod]
root 754 1 0 13:36 ? 00:00:00 /usr/sbin/smartd -n -q never
root 758 1 0 13:36 ? 00:00:00 /usr/sbin/alsactl -s -n 19 -c
root 759 1 0 13:36 ? 00:00:01 /usr/lib/systemd/systemd-login
root 760 1 0 13:36 ? 00:00:00 /usr/bin/VGAuthService -s
rpc 761 1 0 13:36 ? 00:00:00 /sbin/rpcbind -w
root 762 1 0 13:36 ? 00:01:09 /usr/bin/vmtoolsd
root 763 1 0 13:36 ? 00:00:01 /usr/libexec/accounts-daemon
dbus 764 1 0 13:36 ? 00:00:03 /usr/bin/dbus-daemon --system
root 775 1 0 13:36 ? 00:00:00 /usr/libexec/udisks2/udisksd
root 776 1 0 13:36 ? 00:00:00 /usr/sbin/abrtd -d -s
polkitd 781 1 0 13:36 ? 00:00:04 /usr/lib/polkit-1/polkitd --no
root 784 1 0 13:36 ? 00:00:00 /usr/sbin/ModemManager
avahi 786 1 0 13:36 ? 00:00:00 avahi-daemon: running [mos-com
root 787 1 0 13:36 ? 00:00:00 /usr/bin/abrt-watch-log -F BUG
root 795 1 0 13:36 ? 00:00:00 /usr/libexec/bluetooth/bluetoo
root 796 1 0 13:36 ? 00:00:00 /usr/sbin/gssproxy -D
root 798 1 0 13:36 ? 00:00:09 /sbin/rngd -f
avahi 802 786 0 13:36 ? 00:00:00 avahi-daemon: chroot helper
libstor+ 813 1 0 13:36 ? 00:00:00 /usr/bin/lsmd -d
rtkit 815 1 0 13:36 ? 00:00:01 /usr/libexec/rtkit-daemon
chrony 820 1 0 13:36 ? 00:00:00 /usr/sbin/chronyd
root 822 1 0 13:36 ? 00:00:03 /usr/sbin/irqbalance --foregro
root 826 1 0 13:36 ? 00:00:00 /usr/bin/abrt-watch-log -F Bac
root 872 2 0 13:36 ? 00:00:00 [kworker/2:1H]
root 874 1 0 13:36 ? 00:00:01 /usr/bin/python2 -Es /usr/sbin
root 893 1 0 13:36 ? 00:00:01 /bin/bash /usr/sbin/ksmtuned
root 925 1 0 13:36 ? 00:00:01 /usr/sbin/NetworkManager --no-
root 1248 1 0 13:36 ? 00:00:06 /usr/bin/python2 -Es /usr/sbin
root 1249 1 0 13:36 ? 00:00:00 /usr/sbin/cupsd -f
root 1251 1 0 13:36 ? 00:00:00 /usr/sbin/sshd -D
root 1253 1 0 13:36 ? 00:00:04 /usr/sbin/rsyslogd -n
root 1260 1 0 13:36 ? 00:00:00 /usr/sbin/libvirtd
root 1269 1 0 13:36 ? 00:00:00 /usr/sbin/atd -f
root 1270 1 0 13:36 ? 00:00:00 /usr/sbin/gdm
root 1271 1 0 13:36 ? 00:00:01 /usr/sbin/crond -n
root 1518 1 0 13:36 ? 00:00:00 /usr/libexec/postfix/master -w
postfix 1524 1518 0 13:36 ? 00:00:00 qmgr -l -t unix -u
root 1694 1270 0 13:36 tty1 00:05:14 /usr/bin/X :0 -background none
root 1856 1 0 13:36 ? 00:00:00 /usr/libexec/upowerd
root 1930 1 0 13:36 ? 00:00:00 /usr/libexec/boltd
root 1938 1 0 13:36 ? 00:00:01 /usr/libexec/packagekitd
root 1939 1 0 13:36 ? 00:00:00 /usr/sbin/wpa_supplicant -u -f
colord 2016 1 0 13:36 ? 00:00:00 /usr/libexec/colord
root 2086 2 0 13:36 ? 00:00:00 [kworker/1:1H]
nobody 2160 1 0 13:36 ? 00:00:00 /usr/sbin/dnsmasq --conf-file=
root 2161 2160 0 13:36 ? 00:00:00 /usr/sbin/dnsmasq --conf-file=
root 2212 1270 0 13:36 ? 00:00:00 gdm-session-worker [pam/gdm-pa
mo 2233 1 0 13:37 ? 00:00:00 /usr/bin/gnome-keyring-daemon
mo 2252 2212 0 13:37 ? 00:00:01 /usr/libexec/gnome-session-bin
mo 2261 1 0 13:37 ? 00:00:00 dbus-launch --sh-syntax --exit
mo 2262 1 0 13:37 ? 00:00:02 /usr/bin/dbus-daemon --fork --
mo 2293 1 0 13:37 ? 00:00:00 /usr/libexec/imsettings-daemon
mo 2297 1 0 13:37 ? 00:00:00 /usr/libexec/gvfsd
mo 2302 1 0 13:37 ? 00:00:00 /usr/libexec/gvfsd-fuse /run/u
mo 2383 2252 0 13:37 ? 00:00:00 /usr/bin/ssh-agent /bin/sh -c
mo 2405 1 0 13:37 ? 00:00:00 /usr/libexec/at-spi-bus-launch
mo 2410 2405 0 13:37 ? 00:00:00 /usr/bin/dbus-daemon --config-
mo 2413 1 0 13:37 ? 00:00:03 /usr/libexec/at-spi2-registryd
mo 2441 2252 3 13:37 ? 00:21:12 /usr/bin/gnome-shell
mo 2455 1 0 13:37 ? 00:00:21 /usr/bin/pulseaudio --start --
root 2475 2 0 13:37 ? 00:00:00 [krfcommd]
mo 2481 2441 0 13:37 ? 00:01:08 ibus-daemon --xim --panel disa
mo 2485 2481 0 13:37 ? 00:00:00 /usr/libexec/ibus-dconf
mo 2487 1 0 13:37 ? 00:00:00 /usr/libexec/ibus-x11 --kill-d
mo 2490 1 0 13:37 ? 00:00:00 /usr/libexec/ibus-portal
mo 2501 1 0 13:37 ? 00:00:00 /usr/libexec/xdg-permission-st
mo 2504 1 0 13:37 ? 00:00:00 /usr/libexec/gnome-shell-calen
mo 2511 1 0 13:37 ? 00:00:00 /usr/libexec/evolution-source-
mo 2517 1 0 13:37 ? 00:00:00 /usr/libexec/goa-daemon
mo 2533 1 0 13:37 ? 00:00:00 /usr/libexec/mission-control-5
mo 2540 1 0 13:37 ? 00:00:00 /usr/libexec/gvfs-udisks2-volu
mo 2548 1 0 13:37 ? 00:00:03 /usr/libexec/goa-identity-serv
mo 2556 1 0 13:37 ? 00:00:00 /usr/libexec/gvfs-afc-volume-m
mo 2562 1 0 13:37 ? 00:00:00 /usr/libexec/gvfs-gphoto2-volu
mo 2570 1 0 13:37 ? 00:00:00 /usr/libexec/gvfs-mtp-volume-m
mo 2577 1 0 13:37 ? 00:00:00 /usr/libexec/gvfs-goa-volume-m
mo 2610 2252 0 13:37 ? 00:00:01 /usr/libexec/gsd-power
mo 2612 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-print-notific
mo 2614 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-rfkill
mo 2618 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-screensaver-p
mo 2622 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-sharing
mo 2628 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-sound
mo 2631 2252 0 13:37 ? 00:00:01 /usr/libexec/gsd-xsettings
mo 2635 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-wacom
mo 2636 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-smartcard
mo 2637 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-account
mo 2654 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-a11y-settings
mo 2655 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-clipboard
mo 2659 2252 0 13:37 ? 00:00:07 /usr/libexec/gsd-color
mo 2660 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-datetime
mo 2662 2252 0 13:37 ? 00:00:02 /usr/libexec/gsd-housekeeping
mo 2668 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-keyboard
mo 2673 2252 0 13:37 ? 00:00:01 /usr/libexec/gsd-media-keys
mo 2675 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-mouse
mo 2704 1 0 13:37 ? 00:00:00 /usr/libexec/gsd-printer
mo 2705 1 0 13:37 ? 00:00:00 /usr/libexec/gsd-locate-pointe
mo 2721 2252 0 13:37 ? 00:00:07 nautilus-desktop --force
mo 2731 2297 0 13:37 ? 00:00:00 /usr/libexec/gvfsd-trash --spa
mo 2744 1 0 13:37 ? 00:01:04 /usr/bin/vmtoolsd -n vmusr
mo 2746 2252 0 13:37 ? 00:00:00 /usr/libexec/gsd-disk-utility-
mo 2752 2252 0 13:37 ? 00:00:00 abrt-applet
mo 2759 1 0 13:37 ? 00:00:01 /usr/libexec/tracker-store
mo 2779 2252 0 13:37 ? 00:00:01 /usr/libexec/tracker-extract
mo 2783 1 0 13:37 ? 00:00:00 /usr/libexec/evolution-calenda
mo 2784 2252 0 13:37 ? 00:00:00 /usr/libexec/tracker-miner-app
mo 2787 2252 0 13:37 ? 00:00:00 /usr/libexec/tracker-miner-fs
mo 2797 2252 0 13:37 ? 00:00:00 /usr/libexec/tracker-miner-use
mo 2806 2252 0 13:37 ? 00:00:00 /usr/bin/seapplet
mo 2818 2252 0 13:37 ? 00:00:05 /usr/bin/gnome-software --gapp
mo 2831 2783 0 13:37 ? 00:00:00 /usr/libexec/evolution-calenda
mo 2873 1 0 13:37 ? 00:00:00 /usr/libexec/dconf-service
mo 2874 1 0 13:37 ? 00:00:00 /usr/libexec/evolution-address
mo 2903 2874 0 13:37 ? 00:00:00 /usr/libexec/evolution-address
mo 2934 2481 0 13:37 ? 00:00:19 /usr/libexec/ibus-engine-simpl
mo 2967 2297 0 13:37 ? 00:00:00 /usr/libexec/gvfsd-burn --spaw
mo 3067 1 0 13:37 ? 00:00:00 /usr/libexec/gvfsd-metadata
root 3072 1 0 13:37 ? 00:00:02 /usr/libexec/fwupd/fwupd
mo 3193 2481 0 13:37 ? 00:00:02 /usr/libexec/ibus-engine-libpi
mo 3199 1 0 13:37 ? 00:00:11 /usr/bin/nautilus --gapplicati
mo 41035 1 0 14:23 ? 00:01:37 /usr/bin/gedit --gapplication-
root 41250 925 0 14:29 ? 00:00:00 /sbin/dhclient -d -q -sf /usr/
root 48326 2 0 21:54 ? 00:00:00 [kworker/2:0]
root 48327 2 0 21:54 ? 00:00:03 [kworker/0:0]
postfix 48363 1518 0 21:56 ? 00:00:00 pickup -l -t unix -u
root 48706 2 0 22:08 ? 00:00:00 [kworker/3:1]
root 48720 2 0 22:09 ? 00:00:00 [kworker/1:0]
mo 48794 1 0 22:10 ? 00:00:08 /usr/libexec/gnome-terminal-se
mo 48804 48794 0 22:10 ? 00:00:00 gnome-pty-helper
mo 48805 48794 0 22:10 pts/0 00:00:00 bash
root 49599 2 0 22:20 ? 00:00:00 [kworker/0:1]
root 49607 2 0 22:20 ? 00:00:00 [kworker/u256:1]
root 49614 2 0 22:20 ? 00:00:00 [kworker/1:2]
root 49713 1 0 22:22 tty2 00:00:00 /sbin/agetty --noclear tty2 li
root 49725 2 0 22:22 ? 00:00:00 [kworker/u256:3]
root 49855 1 0 22:22 tty6 00:00:00 /sbin/agetty --noclear tty6 li
root 49904 1 0 22:23 ? 00:00:00 login -- mo
mo 49941 49904 0 22:23 tty3 00:00:00 -bash
root 50101 2 0 22:25 ? 00:00:00 [kworker/3:0]
root 50102 2 0 22:25 ? 00:00:00 [kworker/2:2]
root 50103 2 0 22:25 ? 00:00:00 [kworker/1:1]
root 50147 2 0 22:28 ? 00:00:00 [kworker/1:3]
root 50327 2 0 22:32 ? 00:00:00 [kworker/3:2]
root 50342 893 0 22:32 ? 00:00:00 sleep 60
mo 50366 48805 0 22:33 pts/0 00:00:00 ps -ef
# [mo@mos-computer ~]$ ps -ef | less
# [mo@mos-computer ~]$ ps -efH
# try above command to see what's different

# can use arg --sort to sort the output, see below
#[mo@mos-computer ~]$ ps -u mo
#[mo@mos-computer ~]$ ps -aux
#[mo@mos-computer ~]$ ps -aux --sort -pcpu | less
#[mo@mos-computer ~]$ ps -aux --sort -pmem | less
#[mo@mos-computer ~]$ ps -aux --sort -pcpu,+pmem | less

# pstree is similar to ps -axjf command
[mo@mos-computer ~]$ pstree
systemd─┬─ModemManager───2*[{ModemManager}]
├─NetworkManager─┬─dhclient
│ └─2*[{NetworkManager}]
├─VGAuthService
├─2*[abrt-watch-log]
├─abrtd
├─accounts-daemon───2*[{accounts-daemon}]
├─2*[agetty]
├─alsactl
├─at-spi-bus-laun─┬─dbus-daemon───{dbus-daemon}
│ └─3*[{at-spi-bus-laun}]
├─at-spi2-registr───2*[{at-spi2-registr}]
├─atd
├─auditd─┬─audispd─┬─sedispatch
│ │ └─{audispd}
│ └─{auditd}
├─avahi-daemon───avahi-daemon
├─bluetoothd
├─boltd───2*[{boltd}]
├─chronyd
├─colord───2*[{colord}]
├─crond
├─cupsd
├─2*[dbus-daemon───{dbus-daemon}]
├─dbus-launch
├─dconf-service───2*[{dconf-service}]
├─dnsmasq───dnsmasq
├─evolution-addre─┬─evolution-addre───5*[{evolution-addre}]
│ └─4*[{evolution-addre}]
├─evolution-calen─┬─evolution-calen───8*[{evolution-calen}]
│ └─4*[{evolution-calen}]
├─evolution-sourc───3*[{evolution-sourc}]
├─firewalld───{firewalld}
├─fwupd───4*[{fwupd}]
├─gdm─┬─X───5*[{X}]
│ ├─gdm-session-wor─┬─gnome-session-b─┬─abrt-applet───2*[{abrt-appl+
│ │ │ ├─gnome-shell─┬─ibus-daemon─┬+++
│ │ │ │ │ ├+++
│ │ │ │ │ ├+++
│ │ │ │ │ └+++
│ │ │ │ └─20*[{gnome-sh+
│ │ │ ├─gnome-software───3*[{gnome-+
│ │ │ ├─gsd-a11y-settin───3*[{gsd-a+
│ │ │ ├─gsd-account───3*[{gsd-accou+
│ │ │ ├─gsd-clipboard───2*[{gsd-cli+
│ │ │ ├─gsd-color───3*[{gsd-color}]
│ │ │ ├─gsd-datetime───3*[{gsd-date+
│ │ │ ├─gsd-disk-utilit───2*[{gsd-d+
│ │ │ ├─gsd-housekeepin───3*[{gsd-h+
│ │ │ ├─gsd-keyboard───3*[{gsd-keyb+
│ │ │ ├─gsd-media-keys───3*[{gsd-me+
│ │ │ ├─gsd-mouse───3*[{gsd-mouse}]
│ │ │ ├─gsd-power───3*[{gsd-power}]
│ │ │ ├─gsd-print-notif───2*[{gsd-p+
│ │ │ ├─gsd-rfkill───2*[{gsd-rfkill+
│ │ │ ├─gsd-screensaver───2*[{gsd-s+
│ │ │ ├─gsd-sharing───3*[{gsd-shari+
│ │ │ ├─gsd-smartcard───4*[{gsd-sma+
│ │ │ ├─gsd-sound───3*[{gsd-sound}]
│ │ │ ├─gsd-wacom───2*[{gsd-wacom}]
│ │ │ ├─gsd-xsettings───3*[{gsd-xse+
│ │ │ ├─nautilus-deskto───3*[{nauti+
│ │ │ ├─seapplet
│ │ │ ├─ssh-agent
│ │ │ ├─tracker-extract───14*[{trac+
│ │ │ ├─tracker-miner-a───3*[{track+
│ │ │ ├─tracker-miner-f───3*[{track+
│ │ │ ├─tracker-miner-u───3*[{track+
│ │ │ └─3*[{gnome-session-b}]
│ │ └─2*[{gdm-session-wor}]
│ └─3*[{gdm}]
├─gedit───4*[{gedit}]
├─gnome-keyring-d───3*[{gnome-keyring-d}]
├─gnome-shell-cal───5*[{gnome-shell-cal}]
├─gnome-terminal-─┬─bash───pstree
│ ├─gnome-pty-helpe
│ └─3*[{gnome-terminal-}]
├─goa-daemon───3*[{goa-daemon}]
├─goa-identity-se───3*[{goa-identity-se}]
├─gsd-locate-poin───2*[{gsd-locate-poin}]
├─gsd-printer───2*[{gsd-printer}]
├─gssproxy───5*[{gssproxy}]
├─gvfs-afc-volume───3*[{gvfs-afc-volume}]
├─gvfs-goa-volume───2*[{gvfs-goa-volume}]
├─gvfs-gphoto2-vo───2*[{gvfs-gphoto2-vo}]
├─gvfs-mtp-volume───2*[{gvfs-mtp-volume}]
├─gvfs-udisks2-vo───2*[{gvfs-udisks2-vo}]
├─gvfsd─┬─gvfsd-burn───2*[{gvfsd-burn}]
│ ├─gvfsd-trash───2*[{gvfsd-trash}]
│ └─2*[{gvfsd}]
├─gvfsd-fuse───5*[{gvfsd-fuse}]
├─gvfsd-metadata───2*[{gvfsd-metadata}]
├─ibus-portal───2*[{ibus-portal}]
├─ibus-x11───2*[{ibus-x11}]
├─imsettings-daem───3*[{imsettings-daem}]
├─irqbalance
├─ksmtuned───sleep
├─libvirtd───16*[{libvirtd}]
├─login───bash
├─lsmd
├─lvmetad
├─master─┬─pickup
│ └─qmgr
├─mission-control───3*[{mission-control}]
├─nautilus───4*[{nautilus}]
├─packagekitd───2*[{packagekitd}]
├─polkitd───6*[{polkitd}]
├─pulseaudio───2*[{pulseaudio}]
├─rngd
├─rpcbind
├─rsyslogd───2*[{rsyslogd}]
├─rtkit-daemon───2*[{rtkit-daemon}]
├─smartd
├─sshd
├─systemd-journal
├─systemd-logind
├─systemd-udevd
├─tracker-store───7*[{tracker-store}]
├─tuned───4*[{tuned}]
├─udisksd───4*[{udisksd}]
├─upowerd───2*[{upowerd}]
├─vmhgfs-fuse───7*[{vmhgfs-fuse}]
├─vmtoolsd───2*[{vmtoolsd}]
├─vmtoolsd───3*[{vmtoolsd}]
├─wpa_supplicant
└─xdg-permission-───2*[{xdg-permission-}]

[mo@mos-computer ~]$ top
# dynamic, default on the order of %MEM
top - 22:28:32 up 8:52, 3 users, load average: 0.01, 0.13, 0.19
Tasks: 240 total, 1 running, 239 sleeping, 0 stopped, 0 zombie
%Cpu(s): 3.4 us, 2.2 sy, 0.0 ni, 94.4 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st
KiB Mem : 3861296 total, 732016 free, 1286652 used, 1842628 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 2218504 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2441 mo 20 0 3942988 304864 86696 S 15.3 7.9 20:45.81 gnome-she+
1694 root 20 0 481160 144640 70912 S 8.0 3.7 5:06.72 X
48794 mo 20 0 905140 36736 19156 S 4.7 1.0 0:06.77 gnome-ter+
2413 mo 20 0 233104 5984 3184 S 0.7 0.2 0:03.42 at-spi2-r+
2481 mo 20 0 469940 6364 4092 S 0.7 0.2 1:06.67 ibus-daem+
9 root 20 0 0 0 0 S 0.3 0.0 0:19.10 rcu_sched
19 root 20 0 0 0 0 S 0.3 0.0 0:00.74 ksoftirqd+
762 root 20 0 295380 5208 3956 S 0.3 0.1 1:08.87 vmtoolsd
1248 root 20 0 574292 17484 6140 S 0.3 0.5 0:06.66 tuned
2635 mo 20 0 575172 22744 9480 S 0.3 0.6 0:00.88 gsd-wacom
2744 mo 20 0 618048 30764 18688 S 0.3 0.8 1:03.74 vmtoolsd
2752 mo 20 0 540620 22960 11024 S 0.3 0.6 0:00.87 abrt-appl+
48720 root 20 0 0 0 0 S 0.3 0.0 0:00.19 kworker/1+
50148 mo 20 0 162240 2412 1584 R 0.3 0.1 0:00.09 top

# rest omitted

operate the process to reboot/ shutdown the system

1
2
# top monitoring the processes dynamically
# -q quit -h help -B make some font bold or sort the output based on a specific col with key f/F, -u filter based on users -k kill some process based on PPID -s change refresh time
1
2
3
4
5
6
7
8
# SOME third-party monitor is available, try the following commands to install 'glance'
# -y means say 'yes' to installation
sudo yum install epel* -y
sudo yum install python-pip python-devel -y
sudo yum install glances -y

# alternative: htop
# sudo yum install -y htop
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[mo@mos-computer ~]$ glances 

# copy and paste in terminal: ctrl + shift + c / ctrl + shift + v

[mo@mos-computer ~]$ sudo kill [PID]
# kill -9 command can be used to (force) kill a process with corresponding PID num
# killall --> kill all processes with corresponding process_name
killall find [file_name]

# shutdown the sys
[mo@mos-computer ~]$ sudo halt
[mo@mos-computer ~]$ sudo reboot
[mo@mos-computer ~]$ poweroff

# more details: man shutdown

Processes in frontend/backend

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
# tricky solution: open multiple terminal but not feasible

# here is how to run process in the background so we can keep inputing things, use '&'
[mo@mos-computer ~]$ cp file.txt file-copy.txt &
[1] 6339
[1]+ Done cp file.txt file-copy.txt
[mo@mos-computer ~]$ kill 6339
bash: kill: (6339) - No such process
# log in root user first
*[mo@mos-computer ~]$ sudo find / -name "*log" > output_find
find: ‘/run/user/1000/gvfs’: Permission denied
[mo@mos-computer ~]$ cat output_find
/dev/log
/dev/mcelog
/proc/sys/kernel/compat-log
/proc/sys/net/core/netdev_max_backlog
/proc/sys/net/ipv4/tcp_max_syn_backlog
/proc/sys/net/netfilter/nf_log
/proc/1/task/1/net/netfilter/nf_log
/proc/1/net/netfilter/nf_log
/proc/2/task/2/net/netfilter/nf_log
/proc/2/net/netfilter/nf_log
/proc/4/task/4/net/netfilter/nf_log
/proc/4/net/netfilter/nf_log
/proc/6/task/6/net/netfilter/nf_log
/proc/6/net/netfilter/nf_log
/proc/7/task/7/net/netfilter/nf_log
/proc/7/net/netfilter/nf_log
/proc/8/task/8/net/netfilter/nf_log
/proc/8/net/netfilter/nf_log
/proc/9/task/9/net/netfilter/nf_log
/proc/9/net/netfilter/nf_log
/proc/10/task/10/net/netfilter/nf_log
/proc/10/net/netfilter/nf_log
/proc/11/task/11/net/netfilter/nf_log
/proc/11/net/netfilter/nf_log
/proc/12/task/12/net/netfilter/nf_log
/proc/12/net/netfilter/nf_log
/proc/13/task/13/net/netfilter/nf_log
/proc/13/net/netfilter/nf_log
/proc/14/task/14/net/netfilter/nf_log
/proc/14/net/netfilter/nf_log
/proc/16/task/16/net/netfilter/nf_log
/proc/16/net/netfilter/nf_log
/proc/17/task/17/net/netfilter/nf_log
/proc/17/net/netfilter/nf_log
/proc/18/task/18/net/netfilter/nf_log
/proc/18/net/netfilter/nf_log
/proc/19/task/19/net/netfilter/nf_log
/proc/19/net/netfilter/nf_log
/proc/21/task/21/net/netfilter/nf_log
/proc/21/net/netfilter/nf_log
/proc/22/task/22/net/netfilter/nf_log
/proc/22/net/netfilter/nf_log
/proc/23/task/23/net/netfilter/nf_log
/proc/23/net/netfilter/nf_log
/proc/24/task/24/net/netfilter/nf_log
/proc/24/net/netfilter/nf_log
/proc/26/task/26/net/netfilter/nf_log
/proc/26/net/netfilter/nf_log
/proc/28/task/28/net/netfilter/nf_log
/proc/28/net/netfilter/nf_log
/proc/29/task/29/net/netfilter/nf_log
/proc/29/net/netfilter/nf_log
/proc/30/task/30/net/netfilter/nf_log
/proc/30/net/netfilter/nf_log
/proc/31/task/31/net/netfilter/nf_log
/proc/31/net/netfilter/nf_log
/proc/32/task/32/net/netfilter/nf_log
/proc/32/net/netfilter/nf_log
/proc/33/task/33/net/netfilter/nf_log
/proc/33/net/netfilter/nf_log
/proc/34/task/34/net/netfilter/nf_log
/proc/34/net/netfilter/nf_log
/proc/35/task/35/net/netfilter/nf_log
/proc/35/net/netfilter/nf_log
/proc/36/task/36/net/netfilter/nf_log
/proc/36/net/netfilter/nf_log
/proc/37/task/37/net/netfilter/nf_log
/proc/37/net/netfilter/nf_log
/proc/38/task/38/net/netfilter/nf_log
/proc/38/net/netfilter/nf_log
/proc/39/task/39/net/netfilter/nf_log
/proc/39/net/netfilter/nf_log
/proc/45/task/45/net/netfilter/nf_log
/proc/45/net/netfilter/nf_log
/proc/46/task/46/net/netfilter/nf_log
/proc/46/net/netfilter/nf_log
/proc/47/task/47/net/netfilter/nf_log
/proc/47/net/netfilter/nf_log
/proc/48/task/48/net/netfilter/nf_log
/proc/48/net/netfilter/nf_log
/proc/56/task/56/net/netfilter/nf_log
/proc/56/net/netfilter/nf_log
/proc/58/task/58/net/netfilter/nf_log
/proc/58/net/netfilter/nf_log
/proc/59/task/59/net/netfilter/nf_log
/proc/59/net/netfilter/nf_log
/proc/61/task/61/net/netfilter/nf_log
/proc/61/net/netfilter/nf_log
/proc/63/task/63/net/netfilter/nf_log
/proc/63/net/netfilter/nf_log
/proc/77/task/77/net/netfilter/nf_log
/proc/77/net/netfilter/nf_log
/proc/113/task/113/net/netfilter/nf_log
/proc/113/net/netfilter/nf_log
/proc/302/task/302/net/netfilter/nf_log
/proc/302/net/netfilter/nf_log
/proc/304/task/304/net/netfilter/nf_log
/proc/304/net/netfilter/nf_log
/proc/305/task/305/net/netfilter/nf_log
/proc/305/net/netfilter/nf_log
/proc/306/task/306/net/netfilter/nf_log
/proc/306/net/netfilter/nf_log
/proc/314/task/314/net/netfilter/nf_log
/proc/314/net/netfilter/nf_log
/proc/315/task/315/net/netfilter/nf_log
/proc/315/net/netfilter/nf_log
/proc/317/task/317/net/netfilter/nf_log
/proc/317/net/netfilter/nf_log
/proc/318/task/318/net/netfilter/nf_log
/proc/318/net/netfilter/nf_log
/proc/319/task/319/net/netfilter/nf_log
/proc/319/net/netfilter/nf_log
/proc/320/task/320/net/netfilter/nf_log
/proc/320/net/netfilter/nf_log
/proc/323/task/323/net/netfilter/nf_log
/proc/323/net/netfilter/nf_log
/proc/324/task/324/net/netfilter/nf_log
/proc/324/net/netfilter/nf_log
/proc/399/task/399/net/netfilter/nf_log
/proc/399/net/netfilter/nf_log
/proc/400/task/400/net/netfilter/nf_log
/proc/400/net/netfilter/nf_log
/proc/411/task/411/net/netfilter/nf_log
/proc/411/net/netfilter/nf_log
/proc/412/task/412/net/netfilter/nf_log
/proc/412/net/netfilter/nf_log
/proc/425/task/425/net/netfilter/nf_log
/proc/425/net/netfilter/nf_log
/proc/426/task/426/net/netfilter/nf_log
/proc/426/net/netfilter/nf_log
/proc/427/task/427/net/netfilter/nf_log
/proc/427/net/netfilter/nf_log
/proc/428/task/428/net/netfilter/nf_log
/proc/428/net/netfilter/nf_log
/proc/429/task/429/net/netfilter/nf_log
/proc/429/net/netfilter/nf_log
/proc/430/task/430/net/netfilter/nf_log
/proc/430/net/netfilter/nf_log
/proc/431/task/431/net/netfilter/nf_log
/proc/431/net/netfilter/nf_log
/proc/432/task/432/net/netfilter/nf_log
/proc/432/net/netfilter/nf_log
/proc/433/task/433/net/netfilter/nf_log
/proc/433/net/netfilter/nf_log
/proc/434/task/434/net/netfilter/nf_log
/proc/434/net/netfilter/nf_log
/proc/435/task/435/net/netfilter/nf_log
/proc/435/net/netfilter/nf_log
/proc/436/task/436/net/netfilter/nf_log
/proc/436/net/netfilter/nf_log
/proc/520/task/520/net/netfilter/nf_log
/proc/520/net/netfilter/nf_log
/proc/546/task/546/net/netfilter/nf_log
/proc/546/net/netfilter/nf_log
/proc/560/task/560/net/netfilter/nf_log
/proc/560/net/netfilter/nf_log
/proc/598/task/598/net/netfilter/nf_log
/proc/598/net/netfilter/nf_log
/proc/599/task/599/net/netfilter/nf_log
/proc/599/net/netfilter/nf_log
/proc/601/task/601/net/netfilter/nf_log
/proc/601/net/netfilter/nf_log
/proc/603/task/603/net/netfilter/nf_log
/proc/603/net/netfilter/nf_log
/proc/637/task/637/net/netfilter/nf_log
/proc/637/net/netfilter/nf_log
/proc/638/task/638/net/netfilter/nf_log
/proc/638/net/netfilter/nf_log
/proc/640/task/640/net/netfilter/nf_log
/proc/640/net/netfilter/nf_log
/proc/643/task/643/net/netfilter/nf_log
/proc/643/net/netfilter/nf_log
/proc/644/task/644/net/netfilter/nf_log
/proc/644/net/netfilter/nf_log
/proc/646/task/646/net/netfilter/nf_log
/proc/646/net/netfilter/nf_log
/proc/651/task/651/net/netfilter/nf_log
/proc/651/net/netfilter/nf_log
/proc/654/task/654/net/netfilter/nf_log
/proc/654/net/netfilter/nf_log
/proc/671/task/671/net/netfilter/nf_log
/proc/671/task/675/net/netfilter/nf_log
/proc/671/task/676/net/netfilter/nf_log
/proc/671/task/677/net/netfilter/nf_log
/proc/671/task/4372/net/netfilter/nf_log
/proc/671/task/4373/net/netfilter/nf_log
/proc/671/task/4453/net/netfilter/nf_log
/proc/671/task/4454/net/netfilter/nf_log
/proc/671/task/4455/net/netfilter/nf_log
/proc/671/net/netfilter/nf_log
/proc/692/task/692/net/netfilter/nf_log
/proc/692/net/netfilter/nf_log
/proc/693/task/693/net/netfilter/nf_log
/proc/693/net/netfilter/nf_log
/proc/727/task/727/net/netfilter/nf_log
/proc/727/task/728/net/netfilter/nf_log
/proc/727/net/netfilter/nf_log
/proc/729/task/729/net/netfilter/nf_log
/proc/729/task/732/net/netfilter/nf_log
/proc/729/net/netfilter/nf_log
/proc/731/task/731/net/netfilter/nf_log
/proc/731/net/netfilter/nf_log
/proc/733/task/733/net/netfilter/nf_log
/proc/733/net/netfilter/nf_log
/proc/734/task/734/net/netfilter/nf_log
/proc/734/net/netfilter/nf_log
/proc/755/task/755/net/netfilter/nf_log
/proc/755/task/759/net/netfilter/nf_log
/proc/755/task/763/net/netfilter/nf_log
/proc/755/net/netfilter/nf_log
/proc/756/task/756/net/netfilter/nf_log
/proc/756/net/netfilter/nf_log
/proc/757/task/757/net/netfilter/nf_log
/proc/757/net/netfilter/nf_log
/proc/758/task/758/net/netfilter/nf_log
/proc/758/task/762/net/netfilter/nf_log
/proc/758/net/netfilter/nf_log
/proc/766/task/766/net/netfilter/nf_log
/proc/766/net/netfilter/nf_log
/proc/772/task/772/net/netfilter/nf_log
/proc/772/net/netfilter/nf_log
/proc/773/task/773/net/netfilter/nf_log
/proc/773/net/netfilter/nf_log
/proc/774/task/774/net/netfilter/nf_log
/proc/774/net/netfilter/nf_log
/proc/775/task/775/net/netfilter/nf_log
/proc/775/task/786/net/netfilter/nf_log
/proc/775/task/803/net/netfilter/nf_log
/proc/775/net/netfilter/nf_log
/proc/776/task/776/net/netfilter/nf_log
/proc/776/task/819/net/netfilter/nf_log
/proc/776/task/837/net/netfilter/nf_log
/proc/776/task/839/net/netfilter/nf_log
/proc/776/task/841/net/netfilter/nf_log
/proc/776/task/842/net/netfilter/nf_log
/proc/776/task/844/net/netfilter/nf_log
/proc/776/net/netfilter/nf_log
/proc/777/task/777/net/netfilter/nf_log
/proc/777/net/netfilter/nf_log
/proc/779/task/779/net/netfilter/nf_log
/proc/779/task/794/net/netfilter/nf_log
/proc/779/task/795/net/netfilter/nf_log
/proc/779/task/796/net/netfilter/nf_log
/proc/779/task/797/net/netfilter/nf_log
/proc/779/task/798/net/netfilter/nf_log
/proc/779/net/netfilter/nf_log
/proc/783/task/783/net/netfilter/nf_log
/proc/783/net/netfilter/nf_log
/proc/784/task/784/net/netfilter/nf_log
/proc/784/net/netfilter/nf_log
/proc/785/task/785/net/netfilter/nf_log
/proc/785/net/netfilter/nf_log
/proc/788/task/788/net/netfilter/nf_log
/proc/788/net/netfilter/nf_log
/proc/789/task/789/net/netfilter/nf_log
/proc/789/task/845/net/netfilter/nf_log
/proc/789/task/855/net/netfilter/nf_log
/proc/789/net/netfilter/nf_log
/proc/792/task/792/net/netfilter/nf_log
/proc/792/net/netfilter/nf_log
/proc/802/task/802/net/netfilter/nf_log
/proc/802/task/817/net/netfilter/nf_log
/proc/802/task/818/net/netfilter/nf_log
/proc/802/net/netfilter/nf_log
/proc/805/task/805/net/netfilter/nf_log
/proc/805/task/822/net/netfilter/nf_log
/proc/805/task/835/net/netfilter/nf_log
/proc/805/task/853/net/netfilter/nf_log
/proc/805/task/923/net/netfilter/nf_log
/proc/805/net/netfilter/nf_log
/proc/810/task/810/net/netfilter/nf_log
/proc/810/net/netfilter/nf_log
/proc/821/task/821/net/netfilter/nf_log
/proc/821/net/netfilter/nf_log
/proc/826/task/826/net/netfilter/nf_log
/proc/826/net/netfilter/nf_log
/proc/851/task/851/net/netfilter/nf_log
/proc/851/task/1050/net/netfilter/nf_log
/proc/851/net/netfilter/nf_log
/proc/860/task/860/net/netfilter/nf_log
/proc/860/net/netfilter/nf_log
/proc/924/task/924/net/netfilter/nf_log
/proc/924/task/930/net/netfilter/nf_log
/proc/924/task/933/net/netfilter/nf_log
/proc/924/net/netfilter/nf_log
/proc/1053/task/1053/net/netfilter/nf_log
/proc/1053/net/netfilter/nf_log
/proc/1245/task/1245/net/netfilter/nf_log
/proc/1245/net/netfilter/nf_log
/proc/1247/task/1247/net/netfilter/nf_log
/proc/1247/task/1683/net/netfilter/nf_log
/proc/1247/task/1684/net/netfilter/nf_log
/proc/1247/task/1686/net/netfilter/nf_log
/proc/1247/task/1687/net/netfilter/nf_log
/proc/1247/net/netfilter/nf_log
/proc/1248/task/1248/net/netfilter/nf_log
/proc/1248/task/2101/net/netfilter/nf_log
/proc/1248/task/2102/net/netfilter/nf_log
/proc/1248/net/netfilter/nf_log
/proc/1249/task/1249/net/netfilter/nf_log
/proc/1249/net/netfilter/nf_log
/proc/1253/task/1253/net/netfilter/nf_log
/proc/1253/task/2090/net/netfilter/nf_log
/proc/1253/task/2091/net/netfilter/nf_log
/proc/1253/task/2092/net/netfilter/nf_log
/proc/1253/task/2093/net/netfilter/nf_log
/proc/1253/task/2094/net/netfilter/nf_log
/proc/1253/task/2095/net/netfilter/nf_log
/proc/1253/task/2096/net/netfilter/nf_log
/proc/1253/task/2097/net/netfilter/nf_log
/proc/1253/task/2098/net/netfilter/nf_log
/proc/1253/task/2099/net/netfilter/nf_log
/proc/1253/task/2103/net/netfilter/nf_log
/proc/1253/task/2104/net/netfilter/nf_log
/proc/1253/task/2105/net/netfilter/nf_log
/proc/1253/task/2106/net/netfilter/nf_log
/proc/1253/task/2107/net/netfilter/nf_log
/proc/1253/task/2113/net/netfilter/nf_log
/proc/1253/net/netfilter/nf_log
/proc/1264/task/1264/net/netfilter/nf_log
/proc/1264/net/netfilter/nf_log
/proc/1266/task/1266/net/netfilter/nf_log
/proc/1266/task/1273/net/netfilter/nf_log
/proc/1266/task/1279/net/netfilter/nf_log
/proc/1266/task/1776/net/netfilter/nf_log
/proc/1266/net/netfilter/nf_log
/proc/1268/task/1268/net/netfilter/nf_log
/proc/1268/net/netfilter/nf_log
/proc/1484/task/1484/net/netfilter/nf_log
/proc/1484/net/netfilter/nf_log
/proc/1486/task/1486/net/netfilter/nf_log
/proc/1486/net/netfilter/nf_log
/proc/1777/task/1777/net/netfilter/nf_log
/proc/1777/task/1779/net/netfilter/nf_log
/proc/1777/task/1780/net/netfilter/nf_log
/proc/1777/task/1781/net/netfilter/nf_log
/proc/1777/task/1782/net/netfilter/nf_log
/proc/1777/task/1784/net/netfilter/nf_log
/proc/1777/net/netfilter/nf_log
/proc/1856/task/1856/net/netfilter/nf_log
/proc/1856/task/1857/net/netfilter/nf_log
/proc/1856/task/1858/net/netfilter/nf_log
/proc/1856/net/netfilter/nf_log
/proc/1929/task/1929/net/netfilter/nf_log
/proc/1929/task/1935/net/netfilter/nf_log
/proc/1929/task/1938/net/netfilter/nf_log
/proc/1929/net/netfilter/nf_log
/proc/1934/task/1934/net/netfilter/nf_log
/proc/1934/net/netfilter/nf_log
/proc/1937/task/1937/net/netfilter/nf_log
/proc/1937/task/1942/net/netfilter/nf_log
/proc/1937/task/1944/net/netfilter/nf_log
/proc/1937/net/netfilter/nf_log
/proc/2021/task/2021/net/netfilter/nf_log
/proc/2021/task/2026/net/netfilter/nf_log
/proc/2021/task/2029/net/netfilter/nf_log
/proc/2021/net/netfilter/nf_log
/proc/2084/task/2084/net/netfilter/nf_log
/proc/2084/net/netfilter/nf_log
/proc/2086/task/2086/net/netfilter/nf_log
/proc/2086/task/2087/net/netfilter/nf_log
/proc/2086/task/2088/net/netfilter/nf_log
/proc/2086/net/netfilter/nf_log
/proc/2165/task/2165/net/netfilter/nf_log
/proc/2165/net/netfilter/nf_log
/proc/2167/task/2167/net/netfilter/nf_log
/proc/2167/net/netfilter/nf_log
/proc/2220/task/2220/net/netfilter/nf_log
/proc/2220/task/2221/net/netfilter/nf_log
/proc/2220/task/2222/net/netfilter/nf_log
/proc/2220/task/2416/net/netfilter/nf_log
/proc/2220/net/netfilter/nf_log
/proc/2231/task/2231/net/netfilter/nf_log
/proc/2231/task/2382/net/netfilter/nf_log
/proc/2231/task/2383/net/netfilter/nf_log
/proc/2231/task/2408/net/netfilter/nf_log
/proc/2231/net/netfilter/nf_log
/proc/2241/task/2241/net/netfilter/nf_log
/proc/2241/net/netfilter/nf_log
/proc/2242/task/2242/net/netfilter/nf_log
/proc/2242/task/2243/net/netfilter/nf_log
/proc/2242/net/netfilter/nf_log
/proc/2273/task/2273/net/netfilter/nf_log
/proc/2273/task/2274/net/netfilter/nf_log
/proc/2273/task/2275/net/netfilter/nf_log
/proc/2273/task/2289/net/netfilter/nf_log
/proc/2273/net/netfilter/nf_log
/proc/2277/task/2277/net/netfilter/nf_log
/proc/2277/task/2278/net/netfilter/nf_log
/proc/2277/task/2279/net/netfilter/nf_log
/proc/2277/net/netfilter/nf_log
/proc/2282/task/2282/net/netfilter/nf_log
/proc/2282/task/2285/net/netfilter/nf_log
/proc/2282/task/2286/net/netfilter/nf_log
/proc/2282/task/2287/net/netfilter/nf_log
/proc/2282/task/2288/net/netfilter/nf_log
/proc/2282/task/2293/net/netfilter/nf_log
/proc/2282/net/netfilter/nf_log
/proc/2364/task/2364/net/netfilter/nf_log
/proc/2364/net/netfilter/nf_log
/proc/2386/task/2386/net/netfilter/nf_log
/proc/2386/task/2387/net/netfilter/nf_log
/proc/2386/task/2388/net/netfilter/nf_log
/proc/2386/task/2389/net/netfilter/nf_log
/proc/2386/net/netfilter/nf_log
/proc/2391/task/2391/net/netfilter/nf_log
/proc/2391/task/2392/net/netfilter/nf_log
/proc/2391/net/netfilter/nf_log
/proc/2394/task/2394/net/netfilter/nf_log
/proc/2394/task/2399/net/netfilter/nf_log
/proc/2394/task/2402/net/netfilter/nf_log
/proc/2394/net/netfilter/nf_log
/proc/2421/task/2421/net/netfilter/nf_log
/proc/2421/task/2423/net/netfilter/nf_log
/proc/2421/task/2424/net/netfilter/nf_log
/proc/2421/task/2425/net/netfilter/nf_log
/proc/2421/task/2428/net/netfilter/nf_log
/proc/2421/task/2429/net/netfilter/nf_log
/proc/2421/task/2430/net/netfilter/nf_log
/proc/2421/task/2431/net/netfilter/nf_log
/proc/2421/task/2444/net/netfilter/nf_log
/proc/2421/task/2447/net/netfilter/nf_log
/proc/2421/task/2448/net/netfilter/nf_log
/proc/2421/task/2449/net/netfilter/nf_log
/proc/2421/task/2450/net/netfilter/nf_log
/proc/2421/task/2451/net/netfilter/nf_log
/proc/2421/task/2452/net/netfilter/nf_log
/proc/2421/task/2453/net/netfilter/nf_log
/proc/2421/task/2454/net/netfilter/nf_log
/proc/2421/task/2456/net/netfilter/nf_log
/proc/2421/task/2457/net/netfilter/nf_log
/proc/2421/task/2458/net/netfilter/nf_log
/proc/2421/task/2459/net/netfilter/nf_log
/proc/2421/net/netfilter/nf_log
/proc/2435/task/2435/net/netfilter/nf_log
/proc/2435/task/2438/net/netfilter/nf_log
/proc/2435/task/2441/net/netfilter/nf_log
/proc/2435/net/netfilter/nf_log
/proc/2455/task/2455/net/netfilter/nf_log
/proc/2455/net/netfilter/nf_log
/proc/2460/task/2460/net/netfilter/nf_log
/proc/2460/task/2461/net/netfilter/nf_log
/proc/2460/task/2462/net/netfilter/nf_log
/proc/2460/net/netfilter/nf_log
/proc/2464/task/2464/net/netfilter/nf_log
/proc/2464/task/2467/net/netfilter/nf_log
/proc/2464/task/2472/net/netfilter/nf_log
/proc/2464/task/2477/net/netfilter/nf_log
/proc/2464/net/netfilter/nf_log
/proc/2466/task/2466/net/netfilter/nf_log
/proc/2466/task/2475/net/netfilter/nf_log
/proc/2466/task/2476/net/netfilter/nf_log
/proc/2466/net/netfilter/nf_log
/proc/2469/task/2469/net/netfilter/nf_log
/proc/2469/task/2470/net/netfilter/nf_log
/proc/2469/task/2471/net/netfilter/nf_log
/proc/2469/net/netfilter/nf_log
/proc/2480/task/2480/net/netfilter/nf_log
/proc/2480/task/2481/net/netfilter/nf_log
/proc/2480/task/2485/net/netfilter/nf_log
/proc/2480/net/netfilter/nf_log
/proc/2484/task/2484/net/netfilter/nf_log
/proc/2484/task/2486/net/netfilter/nf_log
/proc/2484/task/2488/net/netfilter/nf_log
/proc/2484/task/2507/net/netfilter/nf_log
/proc/2484/task/2508/net/netfilter/nf_log
/proc/2484/task/2755/net/netfilter/nf_log
/proc/2484/net/netfilter/nf_log
/proc/2490/task/2490/net/netfilter/nf_log
/proc/2490/task/2491/net/netfilter/nf_log
/proc/2490/task/2492/net/netfilter/nf_log
/proc/2490/task/2493/net/netfilter/nf_log
/proc/2490/net/netfilter/nf_log
/proc/2497/task/2497/net/netfilter/nf_log
/proc/2497/task/2520/net/netfilter/nf_log
/proc/2497/task/2523/net/netfilter/nf_log
/proc/2497/task/2527/net/netfilter/nf_log
/proc/2497/net/netfilter/nf_log
/proc/2505/task/2505/net/netfilter/nf_log
/proc/2505/task/2509/net/netfilter/nf_log
/proc/2505/task/2510/net/netfilter/nf_log
/proc/2505/net/netfilter/nf_log
/proc/2516/task/2516/net/netfilter/nf_log
/proc/2516/task/2519/net/netfilter/nf_log
/proc/2516/task/2524/net/netfilter/nf_log
/proc/2516/task/2531/net/netfilter/nf_log
/proc/2516/net/netfilter/nf_log
/proc/2518/task/2518/net/netfilter/nf_log
/proc/2518/task/2525/net/netfilter/nf_log
/proc/2518/task/2526/net/netfilter/nf_log
/proc/2518/net/netfilter/nf_log
/proc/2530/task/2530/net/netfilter/nf_log
/proc/2530/task/2537/net/netfilter/nf_log
/proc/2530/task/2538/net/netfilter/nf_log
/proc/2530/task/2541/net/netfilter/nf_log
/proc/2530/net/netfilter/nf_log
/proc/2536/task/2536/net/netfilter/nf_log
/proc/2536/task/2539/net/netfilter/nf_log
/proc/2536/task/2540/net/netfilter/nf_log
/proc/2536/task/2543/net/netfilter/nf_log
/proc/2536/net/netfilter/nf_log
/proc/2545/task/2545/net/netfilter/nf_log
/proc/2545/task/2546/net/netfilter/nf_log
/proc/2545/task/2549/net/netfilter/nf_log
/proc/2545/net/netfilter/nf_log
/proc/2551/task/2551/net/netfilter/nf_log
/proc/2551/task/2553/net/netfilter/nf_log
/proc/2551/task/2556/net/netfilter/nf_log
/proc/2551/net/netfilter/nf_log
/proc/2558/task/2558/net/netfilter/nf_log
/proc/2558/task/2560/net/netfilter/nf_log
/proc/2558/task/2562/net/netfilter/nf_log
/proc/2558/net/netfilter/nf_log
/proc/2593/task/2593/net/netfilter/nf_log
/proc/2593/task/2615/net/netfilter/nf_log
/proc/2593/task/2617/net/netfilter/nf_log
/proc/2593/task/2675/net/netfilter/nf_log
/proc/2593/net/netfilter/nf_log
/proc/2595/task/2595/net/netfilter/nf_log
/proc/2595/task/2601/net/netfilter/nf_log
/proc/2595/task/2608/net/netfilter/nf_log
/proc/2595/net/netfilter/nf_log
/proc/2597/task/2597/net/netfilter/nf_log
/proc/2597/task/2600/net/netfilter/nf_log
/proc/2597/task/2602/net/netfilter/nf_log
/proc/2597/net/netfilter/nf_log
/proc/2599/task/2599/net/netfilter/nf_log
/proc/2599/task/2604/net/netfilter/nf_log
/proc/2599/task/2607/net/netfilter/nf_log
/proc/2599/net/netfilter/nf_log
/proc/2603/task/2603/net/netfilter/nf_log
/proc/2603/task/2609/net/netfilter/nf_log
/proc/2603/task/2610/net/netfilter/nf_log
/proc/2603/task/2619/net/netfilter/nf_log
/proc/2603/net/netfilter/nf_log
/proc/2606/task/2606/net/netfilter/nf_log
/proc/2606/task/2612/net/netfilter/nf_log
/proc/2606/task/2613/net/netfilter/nf_log
/proc/2606/task/2676/net/netfilter/nf_log
/proc/2606/net/netfilter/nf_log
/proc/2611/task/2611/net/netfilter/nf_log
/proc/2611/task/2620/net/netfilter/nf_log
/proc/2611/task/2621/net/netfilter/nf_log
/proc/2611/task/2683/net/netfilter/nf_log
/proc/2611/net/netfilter/nf_log
/proc/2614/task/2614/net/netfilter/nf_log
/proc/2614/task/2626/net/netfilter/nf_log
/proc/2614/task/2628/net/netfilter/nf_log
/proc/2614/net/netfilter/nf_log
/proc/2618/task/2618/net/netfilter/nf_log
/proc/2618/task/2623/net/netfilter/nf_log
/proc/2618/task/2631/net/netfilter/nf_log
/proc/2618/task/2674/net/netfilter/nf_log
/proc/2618/task/2684/net/netfilter/nf_log
/proc/2618/net/netfilter/nf_log
/proc/2622/task/2622/net/netfilter/nf_log
/proc/2622/task/2624/net/netfilter/nf_log
/proc/2622/task/2627/net/netfilter/nf_log
/proc/2622/task/2665/net/netfilter/nf_log
/proc/2622/net/netfilter/nf_log
/proc/2633/task/2633/net/netfilter/nf_log
/proc/2633/task/2636/net/netfilter/nf_log
/proc/2633/task/2638/net/netfilter/nf_log
/proc/2633/task/2670/net/netfilter/nf_log
/proc/2633/net/netfilter/nf_log
/proc/2637/task/2637/net/netfilter/nf_log
/proc/2637/task/2648/net/netfilter/nf_log
/proc/2637/task/2652/net/netfilter/nf_log
/proc/2637/net/netfilter/nf_log
/proc/2639/task/2639/net/netfilter/nf_log
/proc/2639/task/2651/net/netfilter/nf_log
/proc/2639/task/2653/net/netfilter/nf_log
/proc/2639/task/2656/net/netfilter/nf_log
/proc/2639/net/netfilter/nf_log
/proc/2640/task/2640/net/netfilter/nf_log
/proc/2640/task/2649/net/netfilter/nf_log
/proc/2640/task/2650/net/netfilter/nf_log
/proc/2640/task/2677/net/netfilter/nf_log
/proc/2640/net/netfilter/nf_log
/proc/2642/task/2642/net/netfilter/nf_log
/proc/2642/task/2644/net/netfilter/nf_log
/proc/2642/task/2647/net/netfilter/nf_log
/proc/2642/task/2673/net/netfilter/nf_log
/proc/2642/net/netfilter/nf_log
/proc/2646/task/2646/net/netfilter/nf_log
/proc/2646/task/2678/net/netfilter/nf_log
/proc/2646/task/2682/net/netfilter/nf_log
/proc/2646/task/2690/net/netfilter/nf_log
/proc/2646/net/netfilter/nf_log
/proc/2654/task/2654/net/netfilter/nf_log
/proc/2654/task/2681/net/netfilter/nf_log
/proc/2654/task/2685/net/netfilter/nf_log
/proc/2654/task/2721/net/netfilter/nf_log
/proc/2654/net/netfilter/nf_log
/proc/2655/task/2655/net/netfilter/nf_log
/proc/2655/task/2664/net/netfilter/nf_log
/proc/2655/task/2680/net/netfilter/nf_log
/proc/2655/task/2689/net/netfilter/nf_log
/proc/2655/net/netfilter/nf_log
/proc/2679/task/2679/net/netfilter/nf_log
/proc/2679/task/2686/net/netfilter/nf_log
/proc/2679/task/2687/net/netfilter/nf_log
/proc/2679/net/netfilter/nf_log
/proc/2699/task/2699/net/netfilter/nf_log
/proc/2699/task/2706/net/netfilter/nf_log
/proc/2699/task/2707/net/netfilter/nf_log
/proc/2699/task/2814/net/netfilter/nf_log
/proc/2699/net/netfilter/nf_log
/proc/2700/task/2700/net/netfilter/nf_log
/proc/2700/task/2704/net/netfilter/nf_log
/proc/2700/task/2705/net/netfilter/nf_log
/proc/2700/net/netfilter/nf_log
/proc/2710/task/2710/net/netfilter/nf_log
/proc/2710/task/2711/net/netfilter/nf_log
/proc/2710/task/2712/net/netfilter/nf_log
/proc/2710/net/netfilter/nf_log
/proc/2729/task/2729/net/netfilter/nf_log
/proc/2729/task/2773/net/netfilter/nf_log
/proc/2729/task/2777/net/netfilter/nf_log
/proc/2729/task/2924/net/netfilter/nf_log
/proc/2729/net/netfilter/nf_log
/proc/2732/task/2732/net/netfilter/nf_log
/proc/2732/task/2734/net/netfilter/nf_log
/proc/2732/task/2737/net/netfilter/nf_log
/proc/2732/net/netfilter/nf_log
/proc/2739/task/2739/net/netfilter/nf_log
/proc/2739/task/2751/net/netfilter/nf_log
/proc/2739/task/2753/net/netfilter/nf_log
/proc/2739/net/netfilter/nf_log
/proc/2745/task/2745/net/netfilter/nf_log
/proc/2745/task/2748/net/netfilter/nf_log
/proc/2745/task/2752/net/netfilter/nf_log
/proc/2745/task/2757/net/netfilter/nf_log
/proc/2745/task/2758/net/netfilter/nf_log
/proc/2745/task/2759/net/netfilter/nf_log
/proc/2745/task/2760/net/netfilter/nf_log
/proc/2745/task/2761/net/netfilter/nf_log
/proc/2745/net/netfilter/nf_log
/proc/2765/task/2765/net/netfilter/nf_log
/proc/2765/task/2779/net/netfilter/nf_log
/proc/2765/task/2782/net/netfilter/nf_log
/proc/2765/task/2812/net/netfilter/nf_log
/proc/2765/task/2813/net/netfilter/nf_log
/proc/2765/net/netfilter/nf_log
/proc/2766/task/2766/net/netfilter/nf_log
/proc/2766/task/2780/net/netfilter/nf_log
/proc/2766/task/2786/net/netfilter/nf_log
/proc/2766/task/2806/net/netfilter/nf_log
/proc/2766/task/2862/net/netfilter/nf_log
/proc/2766/task/2863/net/netfilter/nf_log
/proc/2766/task/2864/net/netfilter/nf_log
/proc/2766/task/2867/net/netfilter/nf_log
/proc/2766/task/2868/net/netfilter/nf_log
/proc/2766/task/2869/net/netfilter/nf_log
/proc/2766/task/2870/net/netfilter/nf_log
/proc/2766/task/2871/net/netfilter/nf_log
/proc/2766/task/2872/net/netfilter/nf_log
/proc/2766/task/2873/net/netfilter/nf_log
/proc/2766/task/6348/net/netfilter/nf_log
/proc/2766/net/netfilter/nf_log
/proc/2769/task/2769/net/netfilter/nf_log
/proc/2769/task/2799/net/netfilter/nf_log
/proc/2769/task/2800/net/netfilter/nf_log
/proc/2769/task/3044/net/netfilter/nf_log
/proc/2769/net/netfilter/nf_log
/proc/2772/task/2772/net/netfilter/nf_log
/proc/2772/task/2789/net/netfilter/nf_log
/proc/2772/task/2794/net/netfilter/nf_log
/proc/2772/task/2808/net/netfilter/nf_log
/proc/2772/net/netfilter/nf_log
/proc/2776/task/2776/net/netfilter/nf_log
/proc/2776/task/2805/net/netfilter/nf_log
/proc/2776/task/2809/net/netfilter/nf_log
/proc/2776/task/3030/net/netfilter/nf_log
/proc/2776/net/netfilter/nf_log
/proc/2784/task/2784/net/netfilter/nf_log
/proc/2784/net/netfilter/nf_log
/proc/2803/task/2803/net/netfilter/nf_log
/proc/2803/task/2816/net/netfilter/nf_log
/proc/2803/task/2817/net/netfilter/nf_log
/proc/2803/task/2854/net/netfilter/nf_log
/proc/2803/net/netfilter/nf_log
/proc/2822/task/2822/net/netfilter/nf_log
/proc/2822/task/2825/net/netfilter/nf_log
/proc/2822/task/2828/net/netfilter/nf_log
/proc/2822/task/2831/net/netfilter/nf_log
/proc/2822/task/2832/net/netfilter/nf_log
/proc/2822/task/2836/net/netfilter/nf_log
/proc/2822/task/2838/net/netfilter/nf_log
/proc/2822/task/2847/net/netfilter/nf_log
/proc/2822/task/2853/net/netfilter/nf_log
/proc/2822/net/netfilter/nf_log
/proc/2841/task/2841/net/netfilter/nf_log
/proc/2841/task/2855/net/netfilter/nf_log
/proc/2841/task/2857/net/netfilter/nf_log
/proc/2841/task/2883/net/netfilter/nf_log
/proc/2841/net/netfilter/nf_log
/proc/2843/task/2843/net/netfilter/nf_log
/proc/2843/task/2850/net/netfilter/nf_log
/proc/2843/task/2851/net/netfilter/nf_log
/proc/2843/task/2859/net/netfilter/nf_log
/proc/2843/task/2860/net/netfilter/nf_log
/proc/2843/net/netfilter/nf_log
/proc/2879/task/2879/net/netfilter/nf_log
/proc/2879/task/2884/net/netfilter/nf_log
/proc/2879/task/2887/net/netfilter/nf_log
/proc/2879/task/2889/net/netfilter/nf_log
/proc/2879/task/2890/net/netfilter/nf_log
/proc/2879/task/2903/net/netfilter/nf_log
/proc/2879/net/netfilter/nf_log
/proc/2896/task/2896/net/netfilter/nf_log
/proc/2896/task/2897/net/netfilter/nf_log
/proc/2896/task/2898/net/netfilter/nf_log
/proc/2896/net/netfilter/nf_log
/proc/2944/task/2944/net/netfilter/nf_log
/proc/2944/net/netfilter/nf_log
/proc/2946/task/2946/net/netfilter/nf_log
/proc/2946/net/netfilter/nf_log
/proc/2975/task/2975/net/netfilter/nf_log
/proc/2975/task/2979/net/netfilter/nf_log
/proc/2975/task/2981/net/netfilter/nf_log
/proc/2975/net/netfilter/nf_log
/proc/3033/task/3033/net/netfilter/nf_log
/proc/3033/task/3035/net/netfilter/nf_log
/proc/3033/task/3036/net/netfilter/nf_log
/proc/3033/net/netfilter/nf_log
/proc/3048/task/3048/net/netfilter/nf_log
/proc/3048/task/3049/net/netfilter/nf_log
/proc/3048/task/3050/net/netfilter/nf_log
/proc/3048/task/3051/net/netfilter/nf_log
/proc/3048/task/3052/net/netfilter/nf_log
/proc/3048/net/netfilter/nf_log
/proc/3124/task/3124/net/netfilter/nf_log
/proc/3124/task/3125/net/netfilter/nf_log
/proc/3124/task/3126/net/netfilter/nf_log
/proc/3124/task/3128/net/netfilter/nf_log
/proc/3124/net/netfilter/nf_log
/proc/3165/task/3165/net/netfilter/nf_log
/proc/3165/task/3166/net/netfilter/nf_log
/proc/3165/task/3167/net/netfilter/nf_log
/proc/3165/task/3168/net/netfilter/nf_log
/proc/3165/net/netfilter/nf_log
/proc/3186/task/3186/net/netfilter/nf_log
/proc/3186/task/3187/net/netfilter/nf_log
/proc/3186/task/3188/net/netfilter/nf_log
/proc/3186/net/netfilter/nf_log
/proc/4375/task/4375/net/netfilter/nf_log
/proc/4375/net/netfilter/nf_log
/proc/4831/task/4831/net/netfilter/nf_log
/proc/4831/net/netfilter/nf_log
/proc/5672/task/5672/net/netfilter/nf_log
/proc/5672/net/netfilter/nf_log
/proc/5698/task/5698/net/netfilter/nf_log
/proc/5698/net/netfilter/nf_log
/proc/5916/task/5916/net/netfilter/nf_log
/proc/5916/net/netfilter/nf_log
/proc/6096/task/6096/net/netfilter/nf_log
/proc/6096/net/netfilter/nf_log
/proc/6097/task/6097/net/netfilter/nf_log
/proc/6097/net/netfilter/nf_log
/proc/6119/task/6119/net/netfilter/nf_log
/proc/6119/net/netfilter/nf_log
/proc/6295/task/6295/net/netfilter/nf_log
/proc/6295/net/netfilter/nf_log
/proc/6301/task/6301/net/netfilter/nf_log
/proc/6301/net/netfilter/nf_log
/proc/6313/task/6313/net/netfilter/nf_log
/proc/6313/net/netfilter/nf_log
/proc/6386/task/6386/net/netfilter/nf_log
/proc/6386/net/netfilter/nf_log
/proc/6410/task/6410/net/netfilter/nf_log
/proc/6410/net/netfilter/nf_log
/proc/6512/task/6512/net/netfilter/nf_log
/proc/6512/net/netfilter/nf_log
/proc/6528/task/6528/net/netfilter/nf_log
/proc/6528/net/netfilter/nf_log
/proc/6749/task/6749/net/netfilter/nf_log
/proc/6749/net/netfilter/nf_log
/proc/6757/task/6757/net/netfilter/nf_log
/proc/6757/net/netfilter/nf_log
/proc/6760/task/6760/net/netfilter/nf_log
/proc/6760/net/netfilter/nf_log
/run/log
/run/initramfs/log
/sys/fs/xfs/dm-0/log
/sys/fs/xfs/sda1/log
/sys/fs/selinux/class/cap2_userns/perms/syslog
/sys/fs/selinux/class/capability2/perms/syslog
/sys/devices/virtual/misc/mcelog
/sys/class/misc/mcelog
/sys/firmware/dmi/entries/15-0/system_event_log
/sys/firmware/dmi/entries/15-0/system_event_log/raw_event_log
/sys/kernel/debug/tracing/events/syscalls/sys_enter_syslog
/sys/kernel/debug/tracing/events/syscalls/sys_exit_syslog
/sys/module/dm_log
/sys/module/dm_mod/holders/dm_log
/etc/pki/rsyslog
/etc/logrotate.d/bootlog
/etc/logrotate.d/iscsiuiolog
/etc/logrotate.d/syslog
/etc/selinux/targeted/active/modules/100/mcelog
/etc/sysconfig/rsyslog
/etc/sgml/docbook/xmlcatalog
/etc/xml/catalog
/var/lib/systemd/catalog
/var/lib/rsyslog
/var/log
/var/log/tallylog
/var/log/lastlog
/var/log/audit/audit.log
/var/log/cups/error_log
/var/log/cups/page_log
/var/log/cups/access_log
/var/log/gdm/:1.log
/var/log/gdm/:1-greeter.log
/var/log/gdm/:2.log
/var/log/gdm/:2-greeter.log
/var/log/gdm/:0.log
/var/log/gdm/:0-greeter.log
/var/log/tuned/tuned.log
/var/log/anaconda/anaconda.log
/var/log/anaconda/syslog
/var/log/anaconda/X.log
/var/log/anaconda/program.log
/var/log/anaconda/packaging.log
/var/log/anaconda/storage.log
/var/log/anaconda/ifcfg.log
/var/log/anaconda/ks-script-dY5ciR.log
/var/log/anaconda/ks-script-h4aiSB.log
/var/log/anaconda/journal.log
/var/log/boot.log
/var/log/vmware-vmtoolsd-root.log
/var/log/vmware-vmsvc-root.log
/var/log/Xorg.9.log
/var/log/wpa_supplicant.log
/var/log/yum.log
/var/log/Xorg.2.log
/var/log/vmware-network.9.log
/var/log/vmware-network.3.log
/var/log/vmware-network.6.log
/var/log/Xorg.0.log
/var/log/vmware-network.2.log
/var/log/maillog
/var/log/vmware-network.8.log
/var/log/vmware-network.1.log
/var/log/vmware-network.5.log
/var/log/Xorg.1.log
/var/log/vmware-network.4.log
/var/log/vmware-network.7.log
/var/log/vmware-network.log
/var/spool/abrt/Python-2021-02-26-10:21:44-10770/event_log
/var/spool/abrt/Python-2021-02-26-05:22:58-7335/event_log
/tmp/yum.log
/tmp/anaconda.log
/tmp/storage.log
/tmp/program.log
/tmp/packaging.log
/tmp/sensitive-info.log
/tmp/ifcfg.log
/tmp/glances.log
/usr/bin/xmlcatalog
/usr/bin/nf-log
/usr/bin/db_printlog
/usr/bin/lastlog
/usr/bin/aulastlog
/usr/bin/abrt-watch-log
/usr/bin/analog
/usr/bin/gpk-log
/usr/bin/gnome-system-log
/usr/bin/rlog
/usr/bin/grep-changelog
/usr/sbin/btrfs-zero-log
/usr/sbin/postlog
/usr/lib/systemd/catalog
/usr/lib/systemd/catalog/systemd.catalog
/usr/lib/systemd/catalog/systemd.fr.catalog
/usr/lib/systemd/catalog/systemd.it.catalog
/usr/lib/systemd/catalog/systemd.pl.catalog
/usr/lib/systemd/catalog/systemd.pt_BR.catalog
/usr/lib/systemd/catalog/systemd.ru.catalog
/usr/lib/dracut/modules.d/98syslog
/usr/lib/rpm/rpm.log
/usr/lib/node_modules/npm/node_modules/debuglog
/usr/lib/node_modules/npm/node_modules/npmlog
/usr/lib/node_modules/npm/node_modules.bundled/debuglog
/usr/lib/node_modules/npm/node_modules.bundled/node-gyp/node_modules/npmlog
/usr/lib/node_modules/npm/node_modules.bundled/npm-registry-client/node_modules/npmlog
/usr/lib/node_modules/npm/node_modules.bundled/npmlog
/usr/lib/node_modules/npm/scripts/gen-changelog
/usr/lib64/python2.7/site-packages/orca/scripts/apps/gnome-screensaver-dialog
/usr/lib64/rsyslog
/usr/share/doc/libjpeg-turbo-1.2.90/change.log
/usr/share/doc/libusal-1.1.11/Changelog
/usr/share/doc/sysvinit-tools-2.88/Changelog
/usr/share/doc/pam-1.1.8/txts/README.pam_lastlog
/usr/share/doc/python-iniparse-0.4/Changelog
/usr/share/doc/wodim-1.1.11/Changelog
/usr/share/doc/ppp-2.4.5/scripts/plog
/usr/share/doc/os-prober-1.58/changelog
/usr/share/doc/qemu-kvm/Changelog
/usr/share/doc/quota-nls-4.01/Changelog
/usr/share/doc/quota-4.01/Changelog
/usr/share/doc/lshw-B.02.18/Changelog
/usr/share/doc/liblockfile-1.08/Changelog
/usr/share/help/C/gnome-system-log
/usr/share/help/ca/gnome-system-log
/usr/share/help/cs/gnome-system-log
/usr/share/help/de/gnome-system-log
/usr/share/help/el/gnome-system-log
/usr/share/help/es/gnome-system-log
/usr/share/help/fi/gnome-system-log
/usr/share/help/fr/gnome-system-log
/usr/share/help/gl/gnome-system-log
/usr/share/help/hu/gnome-system-log
/usr/share/help/id/gnome-system-log
/usr/share/help/it/gnome-system-log
/usr/share/help/ja/gnome-system-log
/usr/share/help/ko/gnome-system-log
/usr/share/help/pt_BR/gnome-system-log
/usr/share/help/ru/gnome-system-log
/usr/share/help/sl/gnome-system-log
/usr/share/help/sv/gnome-system-log
/usr/share/help/zh_CN/gnome-system-log
/usr/share/help/en_GB/gnome-system-log
/usr/share/help/eu/gnome-system-log
/usr/share/help/oc/gnome-system-log
/usr/share/help/uk/gnome-system-log
/usr/share/sgml/docbook/xmlcatalog
/usr/share/yelp/dtd/catalog
/usr/libexec/postfix/dnsblog
/usr/libexec/git-core/git-reflog
/usr/libexec/git-core/git-log
/usr/libexec/git-core/git-shortlog
/usr/libexec/emacs/24.3/x86_64-redhat-linux-gnu/rcs2log
/usr/libexec/nm-libreswan-auth-dialog
/usr/src/kernels/3.10.0-1160.15.2.el7.x86_64.debug/include/config/dm/log
/usr/src/kernels/3.10.0-1160.15.2.el7.x86_64.debug/include/config/debug/kmemleak/early/log
/usr/src/kernels/3.10.0-1160.15.2.el7.x86_64.debug/include/config/log
/usr/src/kernels/3.10.0-1160.15.2.el7.x86_64.debug/include/config/kvm/generic/dirtylog
/usr/src/kernels/3.10.0-1160.15.2.el7.x86_64.debug/include/config/media/analog
/usr/src/kernels/3.10.0-1160.15.2.el7.x86_64.debug/include/config/nf/log
/usr/src/kernels/3.10.0-1160.15.2.el7.x86_64.debug/scripts/kconfig/lxdialog
/home/mo/.cache/gdm/session.log
/home/mo/.cache/imsettings/log
/home/mo/.cache/mozilla/firefox/cu0s4zn2.default-default/cache2/index.log
/home/mo/.config/google-chrome/Default/Site Characteristics Database/000003.log
/home/mo/.config/google-chrome/Default/Sync Data/LevelDB/000003.log
/home/mo/.config/google-chrome/Default/Local Storage/leveldb/000007.log
/home/mo/.config/google-chrome/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Local Storage/leveldb/000003.log
/home/mo/.config/google-chrome/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Platform Notifications/000003.log
/home/mo/.config/google-chrome/Default/Storage/ext/gfdkimpbcpahaombhbimeihdjnejgicl/def/Session Storage/000003.log
/home/mo/.config/google-chrome/Default/Platform Notifications/000003.log
/home/mo/.config/google-chrome/Default/Extension State/000003.log
/home/mo/.config/google-chrome/Default/Session Storage/000019.log
/home/mo/.config/google-chrome/Default/Session Storage/000022.log
/home/mo/.config/google-chrome/Default/data_reduction_proxy_leveldb/000019.log
/home/mo/.config/google-chrome/Default/GCM Store/Encryption/000003.log
/home/mo/.config/google-chrome/Default/shared_proto_db/metadata/000003.log
/home/mo/.config/google-chrome/Default/shared_proto_db/000003.log
/home/mo/.config/google-chrome/Default/IndexedDB/https_www.bilibili.com_0.indexeddb.leveldb/000011.log
/home/mo/.config/google-chrome/Default/File System/Origins/000003.log
/home/mo/.config/google-chrome/Default/File System/000/t/Paths/000003.log
/home/mo/.config/google-chrome/Default/File System/001/t/Paths/000003.log
/home/mo/.config/google-chrome/Default/Service Worker/Database/000003.log
/home/mo/.local/share/gvfs-metadata/home-b93dc5f4.log
/home/mo/.local/share/gvfs-metadata/x-nautilus-desktop:-0caf00f5.log
/home/mo/.local/share/gvfs-metadata/root-30f049a8.log
/home/mo/errors.log
[mo@mos-computer ~]$ sudo find / -name "*log" > output_find 2>&1 &
[2] 6915
# but here this process is still linked to terminal, how can we seperate processes from terminal?
# close terminal --> HUP message recieved
[mo@mos-computer ~]$ nohup cp file.txt file-copy.txt
nohup: ignoring input and appending output to ‘nohup.out’
[mo@mos-computer ~]$ nohup cp file.txt file-copy.txt &
[2] 7293
nohup: ignoring input and appending output to ‘nohup.out’
[2]- Done nohup cp file.txt file-copy.txt

# ctrl + z: move process to background and pause the process
[1]+ Stopped top
# bg : run process in the background bg %[num] to trigue corresponding process
[mo@mos-computer ~]$ bg
[1]+ top &

[1]+ Stopped top
# STAT: R(runnable) S(sleeping) D(cannot be interfere) Z(zombie) T(stopped)
[mo@mos-computer ~]$ sudo grep -r "log" / > grep_log 2>&1
^Z
[2]+ Stopped sudo grep -r "log" / > grep_log 2>&1
[mo@mos-computer ~]$ bg
[2]+ sudo grep -r "log" / > grep_log 2>&1 &
# show STATs of processes in the background
[mo@mos-computer ~]$ jobs
[1]+ Stopped top
[2]- Running sudo grep -r "log" / > grep_log 2>&1 &

# move processes back to foreground
[mo@mos-computer ~]$ fg
[mo@mos-computer ~]$ jobs
[2]+ Running sudo grep -r "log" / > grep_log 2>&1 &

Task assignment on time

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# know the sys time: date command
[mo@mos-computer ~]$ date
Sat Mar 6 19:54:47 CST 2021
[mo@mos-computer ~]$ date "+%H"
19
[mo@mos-computer ~]$ date "+%H:%M:%S"
19:55:02
[mo@mos-computer ~]$ date "+%H时:%M分:%S秒"
19时:56分:21秒
[mo@mos-computer ~]$ date "+it is year %Y now."
it is year 2021 now.
[mo@mos-computer ~]$ sudo date 10121430
[sudo] password for mo:
Tue Oct 12 14:30:00 CST 2021

# execute a program at specific time

[mo@mos-computer ~]$ at 20:05
at> touch file.txt
at> <EOT>
job 2 at Sat Mar 6 20:05:00 2021
# use ctrl + D to exit 'at'
[mo@mos-computer ~]$ at 20:05 tomorrow
[mo@mos-computer ~]$ at 20:05 12/10/19

# execute after 10 minutes
[mo@mos-computer ~]$ at now +10 minutes
at> cp file.txt file_copy.txt
at> <EOT>
job 3 at Sat Mar 6 20:15:00 2021

# at now +7 years

# atq(list task waiting to be done) / atrm (+PID)
[mo@mos-computer ~]$ atq
3 Sat Mar 6 20:15:00 2021 a mo
[mo@mos-computer ~]$ atrm 3
[mo@mos-computer ~]$ atq

# sleep
[mo@mos-computer ~]$ touch file.txt; sleep 10; rm file.txt
# could add something after the sleep time, like m for minute, h for hour and d for day.

# && and || (just logical AND and OR)

#crontab :can execute processes on designated time multiple times

# config changes to .bashrc
[mo@mos-computer ~]$ echo "export EDITOR=nano" >> ~/.bashrc
[mo@mos-computer ~]$ cat .bashrc
# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi

# Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER=

# User specific aliases and functions
export EDITOR=nano
[mo@mos-computer ~]$ source .bashrc
# source execute the changes immediately

# now we are going to create a crontab file and edit it
# crontab file style for each line: m h dom mon dow command
# which represent: [minute][hour][every nth day of month][month][every nth day of week][the command to exec]

#e.g. */10 * * * 1-5 command => every Mons. to Fris. on time where is dividable by 10 (10,30,40 etc.) execute command (* means all in this case)
[mo@mos-computer ~]$ crontab -l
no crontab for mo
[mo@mos-computer ~]$ sudo crontab -l
[sudo] password for mo:
no crontab for root
[mo@mos-computer ~]$ crontab -e
no crontab for mo - using an empty one
crontab: installing new crontab
[mo@mos-computer ~]$ crontab -l
10 22 * * * touch ~/file.txt
[mo@mos-computer ~]$ crontab -r
[mo@mos-computer ~]$ crontab -l
no crontab for mo

File extraction and compression

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# The compression process: [sparse_files]--> tar --> [unified_files] --> gzip/bzip2 --> [compressed_file]; archive-->compression
[mo@mos-computer ~]$ mkdir compression
[mo@mos-computer ~]$ ls -l
total 164
drwxrwxr-x. 2 mo mo 6 Mar 7 15:29 compression
drwxr-xr-x. 3 mo mo 219 Feb 26 19:01 Desktop
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Documents
drwxr-xr-x. 2 mo mo 6 Feb 26 06:06 Downloads
-rw-rw-r--. 1 mo mo 52 Mar 4 21:45 errors.log
-rwxrwxr-x. 1 mo mo 0 Mar 6 19:40 file-copy.txt
-rw-rw-r--. 1 mo mo 94453 Mar 6 19:47 grep_log
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Music
-rw-rw-r--. 1 mo mo 12 Mar 4 14:39 name_sorted.txt
-rw-rw-r--. 1 mo mo 12 Mar 4 14:38 name.txt
drwxrwxr-x. 2 mo mo 6 Feb 27 00:33 newfile
drwxrwxr-x. 2 mo mo 6 Feb 26 18:49 new_folder
-rw-rw-r--. 1 mo mo 0 Feb 27 00:16 newly_created_file
drwxrwxr-x. 2 mo mo 6 Feb 26 11:00 node
-rw-------. 1 mo mo 0 Mar 6 19:39 nohup.out
-rw-rw-r--. 1 mo mo 23 Mar 4 14:42 number.txt
-rw-rw-r--. 1 mo mo 37047 Mar 6 19:35 output_find
drwxr-xr-x. 3 mo mo 24 Feb 26 06:06 Pictures
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Public
drwxrwxr-x. 2 mo mo 93 Mar 4 21:59 redirect
-rw-rw-r--. 1 mo mo 27 Mar 4 14:49 repeat.txt
-rw-rw-r--. 1 mo mo 104 Mar 4 21:48 results.txt
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Templates
drwxrwxr-x. 2 mo mo 39 Feb 26 22:47 test
-rw-rw-r--. 1 mo mo 15 Mar 4 14:50 unique.txt
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Videos
[mo@mos-computer ~]$ cp -r /mnt/hgfs/batch/ compression/
[mo@mos-computer ~]$ cd compression/
[mo@mos-computer compression]$ ls
batch
[mo@mos-computer compression]$ sudo chown -R mo:mo batch/
[mo@mos-computer compression]$ ls -l
total 0
drwxrwxr-x. 2 mo mo 61 Mar 7 15:29 batch
[mo@mos-computer compression]$ ls -l batch/
total 796
-rwxrwxr-x. 1 mo mo 4366 Mar 7 15:29 material.jpg
-rwxrwxr-x. 1 mo mo 800572 Mar 7 15:29 Sketches.pdf
-rwxrwxr-x. 1 mo mo 855 Mar 7 15:29 test.py
# compression process, -cvf => c:create v:verbose f:file
[mo@mos-computer compression]$ tar -cvf batch.tar batch/
batch/
batch/material.jpg
batch/Sketches.pdf
batch/test.py
# you donot need to put all files into one folder for compression, you can do this for sparse files too.

# tar -cvf archive.tar file1 file2 file3 ...

[mo@mos-computer compression]$ tar -tf batch.tar
batch/
batch/material.jpg
batch/Sketches.pdf
batch/test.py

# -tf show content, -rvf add file to tar (tar -rvf archive.tar [file_name]), extraction: -xvf

# reduce the size: gzip and bzip2
[mo@mos-computer compression]$ rm -rf batch
[mo@mos-computer compression]$ ls
batch.tar
[mo@mos-computer compression]$ tar -xvf batch.tar
batch/
batch/material.jpg
batch/Sketches.pdf
batch/test.py
[mo@mos-computer compression]$ ls
batch batch.tar
[mo@mos-computer compression]$ gzip batch.tar
[mo@mos-computer compression]$ ls
batch batch.tar.gz
[mo@mos-computer compression]$ tar -cvf batch.tar batch
batch/
batch/material.jpg
batch/Sketches.pdf
batch/test.py
[mo@mos-computer compression]$ bzip2 batch.tar
[mo@mos-computer compression]$ ls
batch batch.tar.bz2 batch.tar.gz

# the corresponding extraction codes: gunzip and bunzip2
[mo@mos-computer compression]$ gunzip batch.tar.gz
[mo@mos-computer compression]$ ls
batch batch.tar batch.tar.bz2
[mo@mos-computer compression]$ bunzip2 batch.tar.bz2
bunzip2: Output file batch.tar already exists.
[mo@mos-computer compression]$ rm batch.tar
[mo@mos-computer compression]$ ls
batch batch.tar.bz2
[mo@mos-computer compression]$ bunzip2 batch.tar.bz2
[mo@mos-computer compression]$ ls
batch batch.tar

# we can complete the compression by one line command
[mo@mos-computer compression]$ rm batch.tar
[mo@mos-computer compression]$ ls batch
material.jpg Sketches.pdf test.py

# compress to gzip format file
[mo@mos-computer compression]$ tar -zcvf batch.tar.gz batch/
batch/
batch/material.jpg
batch/Sketches.pdf
batch/test.py
[mo@mos-computer compression]$ rm -rf batch
[mo@mos-computer compression]$ tar -zxvf batch.tar.gz
batch/
batch/material.jpg
batch/Sketches.pdf
batch/test.py
[mo@mos-computer compression]$ ls
batch batch.tar.gz
# note that there is some diff between previous
[mo@mos-computer compression]$ tar -jcvf batch.tar.bz2 batch
batch/
batch/material.jpg
batch/Sketches.pdf
batch/test.py
[mo@mos-computer compression]$ ls
batch batch.tar.bz2 batch.tar.gz
[mo@mos-computer compression]$ rm -rf batch
[mo@mos-computer compression]$ ls
batch.tar.bz2 batch.tar.gz
[mo@mos-computer compression]$ tar -jxvf batch.tar.bz2
batch/
batch/material.jpg
batch/Sketches.pdf
batch/test.py
[mo@mos-computer compression]$ ls
batch batch.tar.bz2 batch.tar.gz

# zcat/ bzcat, zmore/ bzmore, zless/bzless : used to show the content compressed by gzip/bzip2

zcat/zmore/zless xxx.tar.gz

bzcat/bzmore/bzless xxx.tar.bz2

# how to extract file in Windows format such as .zip and .rar

# zip/unzip
[mo@mos-computer compression]$ zip -r batch.zip batch
adding: batch/ (stored 0%)
adding: batch/material.jpg (deflated 44%)
adding: batch/Sketches.pdf (deflated 6%)
adding: batch/test.py (deflated 60%)
[mo@mos-computer compression]$ ls
batch batch.tar.bz2 batch.tar.gz batch.zip
[mo@mos-computer compression]$ rm -rf batch
[mo@mos-computer compression]$ unzip batch.zip
Archive: batch.zip
creating: batch/
inflating: batch/material.jpg
inflating: batch/Sketches.pdf
inflating: batch/test.py
[mo@mos-computer compression]$ ls
batch batch.tar.bz2 batch.tar.gz batch.zip

# Note: tar/zip/rar can complete the whole compression by its own (archive+compress), while bzip2 only handle compression

# rar/ unrar, however rar pkg cannot be installed directly using yum, in the next section 'compile and install tools' we will explain how to install apps/tools like this

Compile and install softwares

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
# take rar/ unrar as an example, this is only for red hat family

# try to find .rpm file (.deb for debian), 'alien' can be used to convert those pkg format
# sudo alien -r xxx.deb
[mo@mos-computer ~]$ man alien
[mo@mos-computer ~]$ cd /mnt/hgfs/
batch/ tutorial/
[mo@mos-computer ~]$ cd /mnt/hgfs
[mo@mos-computer hgfs]$ ls
batch tutorial
sogoupinyin_2.4.0.3469_amd64.deb youdao-dict_1.1.0-0-deepin_amd64.deb
[mo@mos-computer hgfs]$ sudo su
[root@mos-computer hgfs]# alien -r sogoupinyin_2.4.0.3469_amd64.deb
sogoupinyin-2.4.0.3469-2.x86_64.rpm generated
[root@mos-computer hgfs]# ls
batch tutorial
sogoupinyin-2.4.0.3469-2.x86_64.rpm youdao-dict_1.1.0-0-deepin_amd64.deb
sogoupinyin_2.4.0.3469_amd64.deb
[root@mos-computer hgfs]# rpm -i sogoupinyin-2.4.0.3469-2.x86_64.rpm
error: Failed dependencies:
libQt5Qml.so.5()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libQt5QuickWidgets.so.5()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libQt5Svg.so.5()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libXss.so.1()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libaudio.so.2()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libfcitx-config.so.4()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libfcitx-qt.so.0()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libfcitx-utils.so.0()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libpng12.so.0()(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libpng12.so.0(PNG12_0)(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libstdc++.so.6(CXXABI_1.3.8)(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64
libstdc++.so.6(GLIBCXX_3.4.20)(64bit) is needed by sogoupinyin-2.4.0.3469-2.x86_64

# what if we don't even have a package, only some source code? take 'htop' as an example
# repository addr: https://htop.dev/ then find source code of version 2.2.0 in
# http://hisham.hm/htop/releases/2.2.0/ download the zipped file htop-2.2.0.tar.gz and follow the steps
[mo@mos-computer ~]$ ls
compression grep_log new_folder Pictures test
Desktop htop-2.2.0.tar.gz newly_created_file Public unique.txt
Documents Music node redirect Videos
Downloads name_sorted.txt nohup.out repeat.txt
errors.log name.txt number.txt results.txt
file-copy.txt newfile output_find Templates
[mo@mos-computer ~]$ ls -l
total 468
drwxrwxr-x. 3 mo mo 77 Mar 7 17:38 compression
drwxr-xr-x. 3 mo mo 219 Feb 26 19:01 Desktop
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Documents
drwxr-xr-x. 2 mo mo 6 Feb 26 06:06 Downloads
-rw-rw-r--. 1 mo mo 52 Mar 4 21:45 errors.log
-rwxrwxr-x. 1 mo mo 0 Mar 6 19:40 file-copy.txt
-rw-rw-r--. 1 mo mo 94453 Mar 6 19:47 grep_log
-rwxrwxr-x. 1 mo mo 308109 Mar 7 18:14 htop-2.2.0.tar.gz
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Music
-rw-rw-r--. 1 mo mo 12 Mar 4 14:39 name_sorted.txt
-rw-rw-r--. 1 mo mo 12 Mar 4 14:38 name.txt
drwxrwxr-x. 2 mo mo 6 Feb 27 00:33 newfile
drwxrwxr-x. 2 mo mo 6 Feb 26 18:49 new_folder
-rw-rw-r--. 1 mo mo 0 Feb 27 00:16 newly_created_file
drwxrwxr-x. 2 mo mo 6 Feb 26 11:00 node
-rw-------. 1 mo mo 0 Mar 6 19:39 nohup.out
-rw-rw-r--. 1 mo mo 23 Mar 4 14:42 number.txt
-rw-rw-r--. 1 mo mo 37047 Mar 6 19:35 output_find
drwxr-xr-x. 3 mo mo 24 Feb 26 06:06 Pictures
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Public
drwxrwxr-x. 2 mo mo 93 Mar 4 21:59 redirect
-rw-rw-r--. 1 mo mo 27 Mar 4 14:49 repeat.txt
-rw-rw-r--. 1 mo mo 104 Mar 4 21:48 results.txt
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Templates
drwxrwxr-x. 2 mo mo 39 Feb 26 22:47 test
-rw-rw-r--. 1 mo mo 15 Mar 4 14:50 unique.txt
drwxr-xr-x. 2 mo mo 6 Feb 26 08:40 Videos
[mo@mos-computer ~]$ tar -zxvf htop-2.2.0.tar.gz
htop-2.2.0/
htop-2.2.0/LoadAverageMeter.h
htop-2.2.0/Hashtable.c
htop-2.2.0/ChangeLog
htop-2.2.0/solaris/
htop-2.2.0/solaris/SolarisProcessList.h
htop-2.2.0/solaris/SolarisProcessList.c
htop-2.2.0/solaris/Battery.h
htop-2.2.0/solaris/SolarisProcess.c
htop-2.2.0/solaris/SolarisCRT.c
htop-2.2.0/solaris/SolarisProcess.h
htop-2.2.0/solaris/SolarisCRT.h
htop-2.2.0/solaris/Battery.c
htop-2.2.0/solaris/Platform.h
htop-2.2.0/solaris/Platform.c
htop-2.2.0/Settings.h
htop-2.2.0/SwapMeter.h
htop-2.2.0/StringUtils.h
htop-2.2.0/ListItem.c
htop-2.2.0/AffinityPanel.c
htop-2.2.0/EnvScreen.h
htop-2.2.0/configure.ac
htop-2.2.0/IncSet.c
htop-2.2.0/install-sh
htop-2.2.0/aclocal.m4
htop-2.2.0/BatteryMeter.c
htop-2.2.0/ProcessList.c
htop-2.2.0/ScreenManager.h
htop-2.2.0/UptimeMeter.c
htop-2.2.0/IncSet.h
htop-2.2.0/AvailableColumnsPanel.h
htop-2.2.0/SignalsPanel.c
htop-2.2.0/NEWS
htop-2.2.0/INSTALL
htop-2.2.0/TasksMeter.h
htop-2.2.0/HostnameMeter.c
htop-2.2.0/htop.png
htop-2.2.0/OpenFilesScreen.h
htop-2.2.0/MemoryMeter.h
htop-2.2.0/ListItem.h
htop-2.2.0/ColumnsPanel.h
htop-2.2.0/UsersTable.h
htop-2.2.0/AvailableMetersPanel.c
htop-2.2.0/dragonflybsd/
htop-2.2.0/dragonflybsd/DragonFlyBSDProcessList.c
htop-2.2.0/dragonflybsd/Battery.h
htop-2.2.0/dragonflybsd/DragonFlyBSDProcess.h
htop-2.2.0/dragonflybsd/DragonFlyBSDCRT.h
htop-2.2.0/dragonflybsd/DragonFlyBSDProcess.c
htop-2.2.0/dragonflybsd/DragonFlyBSDCRT.c
htop-2.2.0/dragonflybsd/DragonFlyBSDProcessList.h
htop-2.2.0/dragonflybsd/Battery.c
htop-2.2.0/dragonflybsd/Platform.h
htop-2.2.0/dragonflybsd/Platform.c
htop-2.2.0/Vector.c
htop-2.2.0/InfoScreen.h
htop-2.2.0/Header.c
htop-2.2.0/MetersPanel.h
htop-2.2.0/Settings.c
htop-2.2.0/config.h.in
htop-2.2.0/AvailableMetersPanel.h
htop-2.2.0/MetersPanel.c
htop-2.2.0/config.h
htop-2.2.0/htop.1
htop-2.2.0/Header.h
htop-2.2.0/DisplayOptionsPanel.h
htop-2.2.0/CRT.c
htop-2.2.0/Affinity.c
htop-2.2.0/AvailableColumnsPanel.c
htop-2.2.0/OpenFilesScreen.c
htop-2.2.0/scripts/
htop-2.2.0/scripts/MakeHeader.py
htop-2.2.0/configure
htop-2.2.0/ColorsPanel.c
htop-2.2.0/EnvScreen.c
htop-2.2.0/LoadAverageMeter.c
htop-2.2.0/compile
htop-2.2.0/Vector.h
htop-2.2.0/Action.c
htop-2.2.0/InfoScreen.c
htop-2.2.0/XAlloc.h
htop-2.2.0/freebsd/
htop-2.2.0/freebsd/FreeBSDProcess.c
htop-2.2.0/freebsd/FreeBSDProcess.h
htop-2.2.0/freebsd/FreeBSDProcessList.c
htop-2.2.0/freebsd/FreeBSDCRT.c
htop-2.2.0/freebsd/Battery.h
htop-2.2.0/freebsd/FreeBSDProcessList.h
htop-2.2.0/freebsd/Battery.c
htop-2.2.0/freebsd/Platform.h
htop-2.2.0/freebsd/FreeBSDCRT.h
htop-2.2.0/freebsd/Platform.c
htop-2.2.0/UsersTable.c
htop-2.2.0/CheckItem.h
htop-2.2.0/AUTHORS
htop-2.2.0/CheckItem.c
htop-2.2.0/FunctionBar.h
htop-2.2.0/htop.1.in
htop-2.2.0/ClockMeter.h
htop-2.2.0/Meter.c
htop-2.2.0/Action.h
htop-2.2.0/config.sub
htop-2.2.0/unsupported/
htop-2.2.0/unsupported/UnsupportedProcessList.c
htop-2.2.0/unsupported/UnsupportedCRT.c
htop-2.2.0/unsupported/Battery.h
htop-2.2.0/unsupported/UnsupportedProcess.h
htop-2.2.0/unsupported/UnsupportedProcess.c
htop-2.2.0/unsupported/UnsupportedProcessList.h
htop-2.2.0/unsupported/Battery.c
htop-2.2.0/unsupported/Platform.h
htop-2.2.0/unsupported/UnsupportedCRT.h
htop-2.2.0/unsupported/Platform.c
htop-2.2.0/linux/
htop-2.2.0/linux/IOPriorityPanel.c
htop-2.2.0/linux/LinuxProcess.c
htop-2.2.0/linux/LinuxProcessList.h
htop-2.2.0/linux/LinuxProcessList.c
htop-2.2.0/linux/Battery.h
htop-2.2.0/linux/LinuxCRT.c
htop-2.2.0/linux/IOPriorityPanel.h
htop-2.2.0/linux/LinuxProcess.h
htop-2.2.0/linux/LinuxCRT.h
htop-2.2.0/linux/IOPriority.c
htop-2.2.0/linux/Battery.c
htop-2.2.0/linux/IOPriority.h
htop-2.2.0/linux/Platform.h
htop-2.2.0/linux/Platform.c
htop-2.2.0/MemoryMeter.c
htop-2.2.0/TraceScreen.h
htop-2.2.0/openbsd/
htop-2.2.0/openbsd/Battery.h
htop-2.2.0/openbsd/OpenBSDCRT.h
htop-2.2.0/openbsd/OpenBSDCRT.c
htop-2.2.0/openbsd/OpenBSDProcessList.h
htop-2.2.0/openbsd/OpenBSDProcess.c
htop-2.2.0/openbsd/OpenBSDProcess.h
htop-2.2.0/openbsd/Battery.c
htop-2.2.0/openbsd/Platform.h
htop-2.2.0/openbsd/OpenBSDProcessList.c
htop-2.2.0/openbsd/Platform.c
htop-2.2.0/MainPanel.h
htop-2.2.0/CPUMeter.c
htop-2.2.0/DisplayOptionsPanel.c
htop-2.2.0/ColumnsPanel.c
htop-2.2.0/Makefile.am
htop-2.2.0/autogen.sh
htop-2.2.0/Panel.c
htop-2.2.0/CategoriesPanel.c
htop-2.2.0/Affinity.h
htop-2.2.0/RichString.h
htop-2.2.0/SignalsPanel.h
htop-2.2.0/TraceScreen.c
htop-2.2.0/htop.c
htop-2.2.0/ProcessList.h
htop-2.2.0/ColorsPanel.h
htop-2.2.0/RichString.c
htop-2.2.0/XAlloc.c
htop-2.2.0/htop.desktop
htop-2.2.0/htop.h
htop-2.2.0/darwin/
htop-2.2.0/darwin/DarwinProcess.h
htop-2.2.0/darwin/DarwinProcessList.c
htop-2.2.0/darwin/DarwinCRT.c
htop-2.2.0/darwin/DarwinCRT.h
htop-2.2.0/darwin/Battery.h
htop-2.2.0/darwin/DarwinProcess.c
htop-2.2.0/darwin/Battery.c
htop-2.2.0/darwin/DarwinProcessList.h
htop-2.2.0/darwin/Platform.h
htop-2.2.0/darwin/Platform.c
htop-2.2.0/depcomp
htop-2.2.0/Panel.h
htop-2.2.0/AffinityPanel.h
htop-2.2.0/CPUMeter.h
htop-2.2.0/UptimeMeter.h
htop-2.2.0/Meter.h
htop-2.2.0/Hashtable.h
htop-2.2.0/CategoriesPanel.h
htop-2.2.0/HostnameMeter.h
htop-2.2.0/missing
htop-2.2.0/config.guess
htop-2.2.0/Object.h
htop-2.2.0/Object.c
htop-2.2.0/StringUtils.c
htop-2.2.0/TasksMeter.c
htop-2.2.0/ClockMeter.c
htop-2.2.0/SwapMeter.c
htop-2.2.0/CRT.h
htop-2.2.0/Process.c
htop-2.2.0/ScreenManager.c
htop-2.2.0/Process.h
htop-2.2.0/Makefile.in
htop-2.2.0/FunctionBar.c
htop-2.2.0/README
htop-2.2.0/BatteryMeter.h
htop-2.2.0/COPYING
htop-2.2.0/MainPanel.c
# file extraction

[mo@mos-computer ~]$ cd htop-2.2.0/
[mo@mos-computer htop-2.2.0]$ ls
aclocal.m4 DisplayOptionsPanel.h NEWS
Action.c dragonflybsd Object.c
Action.h EnvScreen.c Object.h
Affinity.c EnvScreen.h openbsd
Affinity.h freebsd OpenFilesScreen.c
AffinityPanel.c FunctionBar.c OpenFilesScreen.h
AffinityPanel.h FunctionBar.h Panel.c
AUTHORS Hashtable.c Panel.h
autogen.sh Hashtable.h Process.c
AvailableColumnsPanel.c Header.c Process.h
AvailableColumnsPanel.h Header.h ProcessList.c
AvailableMetersPanel.c HostnameMeter.c ProcessList.h
AvailableMetersPanel.h HostnameMeter.h README
BatteryMeter.c htop.1 RichString.c
BatteryMeter.h htop.1.in RichString.h
CategoriesPanel.c htop.c ScreenManager.c
CategoriesPanel.h htop.desktop ScreenManager.h
ChangeLog htop.h scripts
CheckItem.c htop.png Settings.c
CheckItem.h IncSet.c Settings.h
ClockMeter.c IncSet.h SignalsPanel.c
ClockMeter.h InfoScreen.c SignalsPanel.h
ColorsPanel.c InfoScreen.h solaris
ColorsPanel.h INSTALL StringUtils.c
ColumnsPanel.c install-sh StringUtils.h
ColumnsPanel.h linux SwapMeter.c
compile ListItem.c SwapMeter.h
config.guess ListItem.h TasksMeter.c
config.h LoadAverageMeter.c TasksMeter.h
config.h.in LoadAverageMeter.h TraceScreen.c
config.sub MainPanel.c TraceScreen.h
configure MainPanel.h unsupported
configure.ac Makefile.am UptimeMeter.c
COPYING Makefile.in UptimeMeter.h
CPUMeter.c MemoryMeter.c UsersTable.c
CPUMeter.h MemoryMeter.h UsersTable.h
CRT.c Meter.c Vector.c
CRT.h Meter.h Vector.h
darwin MetersPanel.c XAlloc.c
depcomp MetersPanel.h XAlloc.h
DisplayOptionsPanel.c missing
[mo@mos-computer htop-2.2.0]$ ./configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for ceil in -lm... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for ANSI C header files... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for strings.h... (cached) yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking execinfo.h usability... yes
checking execinfo.h presence... yes
checking for execinfo.h... yes
checking whether sys/types.h defines makedev... yes
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
checking for an ANSI C-conforming const... yes
checking for pid_t... yes
checking for uid_t in sys/types.h... yes
checking whether closedir returns void... no
checking return type of signal handlers... void
checking whether lstat correctly handles trailing slash... yes
checking whether stat accepts an empty string... no
checking for memmove... yes
checking for strncasecmp... yes
checking for strstr... yes
checking for strdup... yes
checking whether gcc -std=c99 option works... yes
checking if compiler supports -Wextra... yes
checking for addnwstr in -lncursesw6... no
checking for addnwstr in -lncursesw... no
checking for addnwstr in -lncurses... no
configure: error: You may want to use --disable-unicode or install libncursesw.
# install missing libs / dependences
[mo@mos-computer htop-2.2.0]$ sudo yum -y install ncurses-devel
[sudo] password for mo:
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* epel: epel.01link.hk
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Resolving Dependencies
--> Running transaction check
---> Package ncurses-devel.x86_64 0:5.9-14.20130511.el7_4 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
ncurses-devel x86_64 5.9-14.20130511.el7_4 base 712 k

Transaction Summary
================================================================================
Install 1 Package

Total download size: 712 k
Installed size: 2.1 M
Downloading packages:
ncurses-devel-5.9-14.20130511.el7_4.x86_64.rpm | 712 kB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : ncurses-devel-5.9-14.20130511.el7_4.x86_64 1/1
Verifying : ncurses-devel-5.9-14.20130511.el7_4.x86_64 1/1

Installed:
ncurses-devel.x86_64 0:5.9-14.20130511.el7_4

Complete!
[mo@mos-computer htop-2.2.0]$ make
./scripts/MakeHeader.py CategoriesPanel.c
./scripts/MakeHeader.py MainPanel.c
./scripts/MakeHeader.py DisplayOptionsPanel.c
./scripts/MakeHeader.py Header.c
./scripts/MakeHeader.py htop.c
./scripts/MakeHeader.py ProcessList.c
./scripts/MakeHeader.py SignalsPanel.c
./scripts/MakeHeader.py StringUtils.c
./scripts/MakeHeader.py TraceScreen.c
./scripts/MakeHeader.py OpenFilesScreen.c
./scripts/MakeHeader.py Action.c
./scripts/MakeHeader.py InfoScreen.c
./scripts/MakeHeader.py linux/IOPriorityPanel.c
./scripts/MakeHeader.py linux/Battery.c
make all-am
make[1]: Entering directory `/home/mo/htop-2.2.0'
depbase=`echo AvailableMetersPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT AvailableMetersPanel.o -MD -MP -MF $depbase.Tpo -c -o AvailableMetersPanel.o AvailableMetersPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo CategoriesPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT CategoriesPanel.o -MD -MP -MF $depbase.Tpo -c -o CategoriesPanel.o CategoriesPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo CheckItem.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT CheckItem.o -MD -MP -MF $depbase.Tpo -c -o CheckItem.o CheckItem.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo ClockMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT ClockMeter.o -MD -MP -MF $depbase.Tpo -c -o ClockMeter.o ClockMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo ColorsPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT ColorsPanel.o -MD -MP -MF $depbase.Tpo -c -o ColorsPanel.o ColorsPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo ColumnsPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT ColumnsPanel.o -MD -MP -MF $depbase.Tpo -c -o ColumnsPanel.o ColumnsPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo CPUMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT CPUMeter.o -MD -MP -MF $depbase.Tpo -c -o CPUMeter.o CPUMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo CRT.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT CRT.o -MD -MP -MF $depbase.Tpo -c -o CRT.o CRT.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo MainPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT MainPanel.o -MD -MP -MF $depbase.Tpo -c -o MainPanel.o MainPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo DisplayOptionsPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT DisplayOptionsPanel.o -MD -MP -MF $depbase.Tpo -c -o DisplayOptionsPanel.o DisplayOptionsPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo FunctionBar.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT FunctionBar.o -MD -MP -MF $depbase.Tpo -c -o FunctionBar.o FunctionBar.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Hashtable.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Hashtable.o -MD -MP -MF $depbase.Tpo -c -o Hashtable.o Hashtable.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Header.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Header.o -MD -MP -MF $depbase.Tpo -c -o Header.o Header.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo htop.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT htop.o -MD -MP -MF $depbase.Tpo -c -o htop.o htop.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo ListItem.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT ListItem.o -MD -MP -MF $depbase.Tpo -c -o ListItem.o ListItem.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo LoadAverageMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT LoadAverageMeter.o -MD -MP -MF $depbase.Tpo -c -o LoadAverageMeter.o LoadAverageMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo MemoryMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT MemoryMeter.o -MD -MP -MF $depbase.Tpo -c -o MemoryMeter.o MemoryMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Meter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Meter.o -MD -MP -MF $depbase.Tpo -c -o Meter.o Meter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo MetersPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT MetersPanel.o -MD -MP -MF $depbase.Tpo -c -o MetersPanel.o MetersPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Object.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Object.o -MD -MP -MF $depbase.Tpo -c -o Object.o Object.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Panel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Panel.o -MD -MP -MF $depbase.Tpo -c -o Panel.o Panel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo BatteryMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT BatteryMeter.o -MD -MP -MF $depbase.Tpo -c -o BatteryMeter.o BatteryMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Process.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Process.o -MD -MP -MF $depbase.Tpo -c -o Process.o Process.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo ProcessList.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT ProcessList.o -MD -MP -MF $depbase.Tpo -c -o ProcessList.o ProcessList.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo RichString.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT RichString.o -MD -MP -MF $depbase.Tpo -c -o RichString.o RichString.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo ScreenManager.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT ScreenManager.o -MD -MP -MF $depbase.Tpo -c -o ScreenManager.o ScreenManager.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Settings.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Settings.o -MD -MP -MF $depbase.Tpo -c -o Settings.o Settings.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo SignalsPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT SignalsPanel.o -MD -MP -MF $depbase.Tpo -c -o SignalsPanel.o SignalsPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo StringUtils.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT StringUtils.o -MD -MP -MF $depbase.Tpo -c -o StringUtils.o StringUtils.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo SwapMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT SwapMeter.o -MD -MP -MF $depbase.Tpo -c -o SwapMeter.o SwapMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo TasksMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT TasksMeter.o -MD -MP -MF $depbase.Tpo -c -o TasksMeter.o TasksMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo UptimeMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT UptimeMeter.o -MD -MP -MF $depbase.Tpo -c -o UptimeMeter.o UptimeMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo TraceScreen.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT TraceScreen.o -MD -MP -MF $depbase.Tpo -c -o TraceScreen.o TraceScreen.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo UsersTable.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT UsersTable.o -MD -MP -MF $depbase.Tpo -c -o UsersTable.o UsersTable.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Vector.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Vector.o -MD -MP -MF $depbase.Tpo -c -o Vector.o Vector.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo AvailableColumnsPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT AvailableColumnsPanel.o -MD -MP -MF $depbase.Tpo -c -o AvailableColumnsPanel.o AvailableColumnsPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo AffinityPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT AffinityPanel.o -MD -MP -MF $depbase.Tpo -c -o AffinityPanel.o AffinityPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo HostnameMeter.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT HostnameMeter.o -MD -MP -MF $depbase.Tpo -c -o HostnameMeter.o HostnameMeter.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo OpenFilesScreen.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT OpenFilesScreen.o -MD -MP -MF $depbase.Tpo -c -o OpenFilesScreen.o OpenFilesScreen.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Affinity.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Affinity.o -MD -MP -MF $depbase.Tpo -c -o Affinity.o Affinity.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo IncSet.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT IncSet.o -MD -MP -MF $depbase.Tpo -c -o IncSet.o IncSet.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo Action.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT Action.o -MD -MP -MF $depbase.Tpo -c -o Action.o Action.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo EnvScreen.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT EnvScreen.o -MD -MP -MF $depbase.Tpo -c -o EnvScreen.o EnvScreen.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo InfoScreen.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT InfoScreen.o -MD -MP -MF $depbase.Tpo -c -o InfoScreen.o InfoScreen.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo XAlloc.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT XAlloc.o -MD -MP -MF $depbase.Tpo -c -o XAlloc.o XAlloc.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo linux/Platform.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT linux/Platform.o -MD -MP -MF $depbase.Tpo -c -o linux/Platform.o linux/Platform.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo linux/IOPriorityPanel.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT linux/IOPriorityPanel.o -MD -MP -MF $depbase.Tpo -c -o linux/IOPriorityPanel.o linux/IOPriorityPanel.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo linux/IOPriority.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT linux/IOPriority.o -MD -MP -MF $depbase.Tpo -c -o linux/IOPriority.o linux/IOPriority.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo linux/LinuxProcess.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT linux/LinuxProcess.o -MD -MP -MF $depbase.Tpo -c -o linux/LinuxProcess.o linux/LinuxProcess.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo linux/LinuxProcessList.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT linux/LinuxProcessList.o -MD -MP -MF $depbase.Tpo -c -o linux/LinuxProcessList.o linux/LinuxProcessList.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo linux/LinuxCRT.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT linux/LinuxCRT.o -MD -MP -MF $depbase.Tpo -c -o linux/LinuxCRT.o linux/LinuxCRT.c &&\
mv -f $depbase.Tpo $depbase.Po
depbase=`echo linux/Battery.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -DNDEBUG -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -MT linux/Battery.o -MD -MP -MF $depbase.Tpo -c -o linux/Battery.o linux/Battery.c &&\
mv -f $depbase.Tpo $depbase.Po
gcc -pedantic -Wall -Wextra -std=c99 -D_XOPEN_SOURCE_EXTENDED -DSYSCONFDIR=\"/usr/local/etc\" -I"./linux" -rdynamic -g -O2 -o htop AvailableMetersPanel.o CategoriesPanel.o CheckItem.o ClockMeter.o ColorsPanel.o ColumnsPanel.o CPUMeter.o CRT.o MainPanel.o DisplayOptionsPanel.o FunctionBar.o Hashtable.o Header.o htop.o ListItem.o LoadAverageMeter.o MemoryMeter.o Meter.o MetersPanel.o Object.o Panel.o BatteryMeter.o Process.o ProcessList.o RichString.o ScreenManager.o Settings.o SignalsPanel.o StringUtils.o SwapMeter.o TasksMeter.o UptimeMeter.o TraceScreen.o UsersTable.o Vector.o AvailableColumnsPanel.o AffinityPanel.o HostnameMeter.o OpenFilesScreen.o Affinity.o IncSet.o Action.o EnvScreen.o InfoScreen.o XAlloc.o linux/Platform.o linux/IOPriorityPanel.o linux/IOPriority.o linux/LinuxProcess.o linux/LinuxProcessList.o linux/LinuxCRT.o linux/Battery.o -lncursesw -ltinfo -lm
make[1]: Leaving directory `/home/mo/htop-2.2.0'
[mo@mos-computer htop-2.2.0]$ sudo make install
./scripts/MakeHeader.py CategoriesPanel.c
./scripts/MakeHeader.py MainPanel.c
./scripts/MakeHeader.py DisplayOptionsPanel.c
./scripts/MakeHeader.py Header.c
./scripts/MakeHeader.py htop.c
./scripts/MakeHeader.py ProcessList.c
./scripts/MakeHeader.py SignalsPanel.c
./scripts/MakeHeader.py StringUtils.c
./scripts/MakeHeader.py TraceScreen.c
./scripts/MakeHeader.py OpenFilesScreen.c
./scripts/MakeHeader.py Action.c
./scripts/MakeHeader.py InfoScreen.c
./scripts/MakeHeader.py linux/IOPriorityPanel.c
./scripts/MakeHeader.py linux/Battery.c
make install-am
make[1]: Entering directory `/home/mo/htop-2.2.0'
./scripts/MakeHeader.py Header.c
./scripts/MakeHeader.py ProcessList.c
./scripts/MakeHeader.py Action.c
./scripts/MakeHeader.py MainPanel.c
./scripts/MakeHeader.py SignalsPanel.c
./scripts/MakeHeader.py CategoriesPanel.c
./scripts/MakeHeader.py DisplayOptionsPanel.c
./scripts/MakeHeader.py StringUtils.c
./scripts/MakeHeader.py linux/Battery.c
./scripts/MakeHeader.py TraceScreen.c
./scripts/MakeHeader.py InfoScreen.c
./scripts/MakeHeader.py OpenFilesScreen.c
./scripts/MakeHeader.py linux/IOPriorityPanel.c
make[2]: Entering directory `/home/mo/htop-2.2.0'
./scripts/MakeHeader.py Header.c
./scripts/MakeHeader.py ProcessList.c
./scripts/MakeHeader.py Action.c
./scripts/MakeHeader.py MainPanel.c
./scripts/MakeHeader.py SignalsPanel.c
./scripts/MakeHeader.py CategoriesPanel.c
./scripts/MakeHeader.py DisplayOptionsPanel.c
./scripts/MakeHeader.py StringUtils.c
./scripts/MakeHeader.py linux/Battery.c
./scripts/MakeHeader.py TraceScreen.c
./scripts/MakeHeader.py InfoScreen.c
./scripts/MakeHeader.py OpenFilesScreen.c
./scripts/MakeHeader.py linux/IOPriorityPanel.c
/usr/bin/mkdir -p '/usr/local/bin'
/usr/bin/install -c htop '/usr/local/bin'
/usr/bin/mkdir -p '/usr/local/share/applications'
/usr/bin/install -c -m 644 htop.desktop '/usr/local/share/applications'
/usr/bin/mkdir -p '/usr/local/share/man/man1'
/usr/bin/install -c -m 644 htop.1 '/usr/local/share/man/man1'
/usr/bin/mkdir -p '/usr/local/share/pixmaps'
/usr/bin/install -c -m 644 htop.png '/usr/local/share/pixmaps'
make[2]: Leaving directory `/home/mo/htop-2.2.0'
make[1]: Leaving directory `/home/mo/htop-2.2.0'
# now the software is installed and ready to use, always located in /usr/local/bin
[mo@mos-computer htop-2.2.0]$ ls /usr/local/bin/
htop
[mo@mos-computer htop-2.2.0]$ htop

# try install rar and unrar now
# there is a easy way to get zipped package from websites: wget
# source code for rar: https://www.rarlab.com/rar/rarlinux-x64-5.7.0.tar.gz
[mo@mos-computer ~]$ wget https://www.rarlab.com/rar/rarlinux-x64-5.7.0.tar.gz
[mo@mos-computer ~]$ tar -zxvf rarlinux-x64-5.7.0.tar.gz
rar/
rar/order.htm
rar/acknow.txt
rar/readme.txt
rar/default.sfx
rar/license.txt
rar/rarfiles.lst
rar/whatsnew.txt
rar/makefile
rar/rar
rar/unrar
rar/rar.txt
[mo@mos-computer ~]$ ls
compression htop-2.2.0.tar.gz nohup.out repeat.txt
Desktop Music number.txt results.txt
Documents name_sorted.txt output_find Templates
Downloads name.txt Pictures test
errors.log newfile Public unique.txt
file-copy.txt new_folder rar Videos
grep_log newly_created_file rarlinux-x64-5.7.0.tar.gz
htop-2.2.0 node redirect
[mo@mos-computer ~]$ cd rar
[mo@mos-computer rar]$ ls
acknow.txt license.txt order.htm rarfiles.lst readme.txt whatsnew.txt
default.sfx makefile rar rar.txt unrar
[mo@mos-computer rar]$ make
mkdir -p /usr/local/bin
mkdir -p /usr/local/lib
cp rar unrar /usr/local/bin
cp: cannot create regular file ‘/usr/local/bin/rar’: Permission denied
cp: cannot create regular file ‘/usr/local/bin/unrar’: Permission denied
make: *** [install] Error 1
[mo@mos-computer rar]$ sudo make
mkdir -p /usr/local/bin
mkdir -p /usr/local/lib
cp rar unrar /usr/local/bin
cp rarfiles.lst /etc
cp default.sfx /usr/local/lib
[mo@mos-computer rar]$ ls /usr/local/bin
htop rar unrar
[mo@mos-computer rar]$ echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/mo/.local/bin:/home/mo/bin
# use of rar and unrar
[mo@mos-computer ~]$ cd compression/
[mo@mos-computer compression]$ ls
batch batch.tar.bz2 batch.tar.gz batch.zip
[mo@mos-computer compression]$ rar a batch.rar batch

RAR 5.70 Copyright (c) 1993-2019 Alexander Roshal 25 Feb 2019
Trial version Type 'rar -?' for help

Evaluation copy. Please register.

Creating archive batch.rar

Adding batch/material.jpg OK
Adding batch/Sketches.pdf OK
Adding batch/test.py OK
Adding batch OK
Done
[mo@mos-computer compression]$ ls
batch batch.rar batch.tar.bz2 batch.tar.gz batch.zip
[mo@mos-computer compression]$ unrar e batch.rar

UNRAR 5.70 freeware Copyright (c) 1993-2019 Alexander Roshal


Extracting from batch.rar

Extracting material.jpg OK
Extracting Sketches.pdf OK
Extracting test.py OK
All OK
# only view the content in rar file: unrar l archive.rar