/
usr
/
sbin
/
/usr/sbin
mkdir
upload
Name
Size
Mode
Actions
accessdb
15792
0755
edit
dl
rm
addgnupghome
3079
0755
edit
dl
rm
addpart
15520
0755
edit
dl
rm
adduser
141144
0755
edit
dl
rm
agetty
58072
0755
edit
dl
rm
alternatives
40544
0755
edit
dl
rm
anacron
40464
0755
edit
dl
rm
apachectl
4808
0755
edit
dl
rm
applygnupgdefaults
2221
0755
edit
dl
rm
arp
64728
0755
edit
dl
rm
arping
27904
0755
edit
dl
rm
arptables
236960
0755
edit
dl
rm
arptables-nft
236960
0755
edit
dl
rm
arptables-nft-restore
236960
0755
edit
dl
rm
arptables-nft-save
236960
0755
edit
dl
rm
arptables-restore
236960
0755
edit
dl
rm
arptables-save
236960
0755
edit
dl
rm
atd
32008
0755
edit
dl
rm
atrun
70
0755
edit
dl
rm
auditctl
52824
0755
edit
dl
rm
auditd
140336
0755
edit
dl
rm
augenrules
4146
0755
edit
dl
rm
aureport
123192
0755
edit
dl
rm
ausearch
123160
0755
edit
dl
rm
autrace
19632
0750
edit
dl
rm
avcstat
15720
0755
edit
dl
rm
badblocks
36200
0755
edit
dl
rm
blkdeactivate
16355
0555
edit
dl
rm
blkdiscard
23760
0755
edit
dl
rm
blkid
52848
0755
edit
dl
rm
blkmapd
40360
0755
edit
dl
rm
blkzone
36304
0755
edit
dl
rm
blockdev
32168
0755
edit
dl
rm
bridge
134088
0755
edit
dl
rm
cache_check
3046296
0755
edit
dl
rm
cache_dump
3046296
0755
edit
dl
rm
cache_metadata_size
3046296
0755
edit
dl
rm
cache_repair
3046296
0755
edit
dl
rm
cache_restore
3046296
0755
edit
dl
rm
cache_writeback
3046296
0755
edit
dl
rm
capsh
31960
0755
edit
dl
rm
cfdisk
98656
0755
edit
dl
rm
chcpu
32176
0755
edit
dl
rm
chgpasswd
61200
0755
edit
dl
rm
chkconfig
44832
0755
edit
dl
rm
chpasswd
56968
0755
edit
dl
rm
chronyd
382544
0755
edit
dl
rm
chroot
40504
0755
edit
dl
rm
clock
61200
0755
edit
dl
rm
consoletype
15648
0755
edit
dl
rm
convertquota
70664
0755
edit
dl
rm
cracklib-check
15472
0755
edit
dl
rm
cracklib-format
255
0755
edit
dl
rm
cracklib-packer
15472
0755
edit
dl
rm
cracklib-unpacker
15464
0755
edit
dl
rm
create-cracklib-dict
994
0755
edit
dl
rm
crond
77992
0755
edit
dl
rm
ctrlaltdel
15552
0755
edit
dl
rm
ctstat
24160
0755
edit
dl
rm
dcb
96960
0755
edit
dl
rm
ddns-confgen
27912
0755
edit
dl
rm
debugfs
238624
0755
edit
dl
rm
delpart
15480
0755
edit
dl
rm
depmod
169544
0755
edit
dl
rm
devlink
169816
0755
edit
dl
rm
dmeventd
53032
0555
edit
dl
rm
dmfilemapd
23856
0555
edit
dl
rm
dmsetup
160536
0555
edit
dl
rm
dmstats
160536
0555
edit
dl
rm
dnssec-cds
48816
0755
edit
dl
rm
dnssec-checkds
924
0755
edit
dl
rm
dnssec-coverage
926
0755
edit
dl
rm
dnssec-dsfromkey
40384
0755
edit
dl
rm
dnssec-importkey
36288
0755
edit
dl
rm
dnssec-keyfromlabel
40368
0755
edit
dl
rm
dnssec-keygen
48584
0755
edit
dl
rm
dnssec-keymgr
922
0755
edit
dl
rm
dnssec-revoke
32168
0755
edit
dl
rm
dnssec-settime
48576
0755
edit
dl
rm
dnssec-signzone
98184
0755
edit
dl
rm
dnssec-verify
32200
0755
edit
dl
rm
dosfsck
86592
0755
edit
dl
rm
dosfslabel
40976
0755
edit
dl
rm
dovecot
147480
0755
edit
dl
rm
dovecot_cpshutdown
3344
0755
edit
dl
rm
dpll
49312
0755
edit
dl
rm
dumpe2fs
32040
0755
edit
dl
rm
e2freefrag
15552
0755
edit
dl
rm
e2fsck
364632
0755
edit
dl
rm
e2image
44456
0755
edit
dl
rm
e2label
106968
0755
edit
dl
rm
e2mmpstatus
32040
0755
edit
dl
rm
e2undo
23712
0755
edit
dl
rm
e4crypt
32048
0755
edit
dl
rm
e4defrag
32008
0755
edit
dl
rm
ebtables
236960
0755
edit
dl
rm
ebtables-nft
236960
0755
edit
dl
rm
ebtables-nft-restore
236960
0755
edit
dl
rm
ebtables-nft-save
236960
0755
edit
dl
rm
ebtables-restore
236960
0755
edit
dl
rm
ebtables-save
236960
0755
edit
dl
rm
ebtables-translate
236960
0755
edit
dl
rm
edquota
91648
0755
edit
dl
rm
efibootdump
24440
0755
edit
dl
rm
efibootmgr
46264
0755
edit
dl
rm
era_check
3046296
0755
edit
dl
rm
era_dump
3046296
0755
edit
dl
rm
era_invalidate
3046296
0755
edit
dl
rm
era_restore
3046296
0755
edit
dl
rm
ether-wake
51448
0755
edit
dl
rm
ethtool
1012696
0755
edit
dl
rm
exicyclog
11365
0755
edit
dl
rm
exigrep
11710
0755
edit
dl
rm
exim
1728848
4755
edit
dl
rm
eximstats
152546
0755
edit
dl
rm
exim_checkaccess
4943
0755
edit
dl
rm
exim_dbmbuild
23040
0755
edit
dl
rm
exim_dumpdb
41872
0755
edit
dl
rm
exim_fixdb
46360
0755
edit
dl
rm
exim_lock
23328
0755
edit
dl
rm
exim_tidydb
33472
0755
edit
dl
rm
exinext
8217
0755
edit
dl
rm
exiqgrep
6739
0755
edit
dl
rm
exiqsumm
6443
0755
edit
dl
rm
exiwhat
4524
0755
edit
dl
rm
exportfs
70112
0755
edit
dl
rm
faillock
23736
0755
edit
dl
rm
fatlabel
40976
0755
edit
dl
rm
fcgistarter
25304
0755
edit
dl
rm
fdformat
23744
0755
edit
dl
rm
fdisk
114760
0755
edit
dl
rm
filefrag
19680
0755
edit
dl
rm
findfs
15520
0755
edit
dl
rm
firewalld
9989
0755
edit
dl
rm
fix-info-dir
8037
0755
edit
dl
rm
fixfiles
12387
0755
edit
dl
rm
fsadm
24602
0555
edit
dl
rm
fsck
44592
0755
edit
dl
rm
fsck.cramfs
32128
0755
edit
dl
rm
fsck.ext2
364632
0755
edit
dl
rm
fsck.ext3
364632
0755
edit
dl
rm
fsck.ext4
364632
0755
edit
dl
rm
fsck.fat
86592
0755
edit
dl
rm
fsck.minix
57048
0755
edit
dl
rm
fsck.msdos
86592
0755
edit
dl
rm
fsck.vfat
86592
0755
edit
dl
rm
fsck.xfs
2598
0755
edit
dl
rm
fsfreeze
15512
0755
edit
dl
rm
fstrim
44544
0755
edit
dl
rm
fuser
42072
0755
edit
dl
rm
g13-syshelp
90728
0755
edit
dl
rm
genhomedircon
32808
0755
edit
dl
rm
genhostid
15648
0755
edit
dl
rm
genl
133272
0755
edit
dl
rm
getcap
15496
0755
edit
dl
rm
getenforce
15640
0755
edit
dl
rm
getpcaps
15488
0755
edit
dl
rm
getpidprevcon
15656
0755
edit
dl
rm
getpolicyload
15648
0755
edit
dl
rm
getsebool
15664
0755
edit
dl
rm
groupadd
70424
0755
edit
dl
rm
groupdel
66080
0755
edit
dl
rm
groupmems
57112
0755
edit
dl
rm
groupmod
74504
0755
edit
dl
rm
grpck
61192
0755
edit
dl
rm
grpconv
52800
0755
edit
dl
rm
grpunconv
52768
0755
edit
dl
rm
grub2-bios-setup
1749904
0755
edit
dl
rm
grub2-get-kernel-settings
2746
0755
edit
dl
rm
grub2-install
2068520
0755
edit
dl
rm
grub2-macbless
1728872
0755
edit
dl
rm
grub2-mkconfig
9431
0755
edit
dl
rm
grub2-probe
1745984
0755
edit
dl
rm
grub2-reboot
4814
0755
edit
dl
rm
grub2-set-bootflag
15456
4755
edit
dl
rm
grub2-set-default
3538
0755
edit
dl
rm
grub2-set-password
2809
0755
edit
dl
rm
grub2-setpassword
2809
0755
edit
dl
rm
grub2-switch-to-blscfg
9024
0755
edit
dl
rm
grubby
260
0755
edit
dl
rm
gssproxy
127888
0755
edit
dl
rm
halt
305576
0755
edit
dl
rm
htcacheclean
54072
0755
edit
dl
rm
httpd
1139720
0755
edit
dl
rm
hwclock
61200
0755
edit
dl
rm
iconvconfig
32432
0755
edit
dl
rm
ifconfig
80880
0755
edit
dl
rm
ifdown
1097
0755
edit
dl
rm
ifenslave
24304
0755
edit
dl
rm
ifstat
40552
0755
edit
dl
rm
ifup
1066
0755
edit
dl
rm
imunify-notifier
10325616
0755
edit
dl
rm
init
98040
0755
edit
dl
rm
insmod
169544
0755
edit
dl
rm
install-info
109256
0755
edit
dl
rm
installkernel
323
0755
edit
dl
rm
intel_sdsi
22968
0755
edit
dl
rm
ip
792904
0755
edit
dl
rm
ip6tables
236960
0755
edit
dl
rm
ip6tables-nft
236960
0755
edit
dl
rm
ip6tables-nft-restore
236960
0755
edit
dl
rm
ip6tables-nft-save
236960
0755
edit
dl
rm
ip6tables-restore
236960
0755
edit
dl
rm
ip6tables-restore-translate
236960
0755
edit
dl
rm
ip6tables-save
236960
0755
edit
dl
rm
ip6tables-translate
236960
0755
edit
dl
rm
ipmaddr
19912
0755
edit
dl
rm
ipset
15640
0755
edit
dl
rm
ipset-translate
15640
0755
edit
dl
rm
iptables
236960
0755
edit
dl
rm
iptables-nft
236960
0755
edit
dl
rm
iptables-nft-restore
236960
0755
edit
dl
rm
iptables-nft-save
236960
0755
edit
dl
rm
iptables-restore
236960
0755
edit
dl
rm
iptables-restore-translate
236960
0755
edit
dl
rm
iptables-save
236960
0755
edit
dl
rm
iptables-translate
236960
0755
edit
dl
rm
iptunnel
19968
0755
edit
dl
rm
irqbalance
65992
0755
edit
dl
rm
irqbalance-ui
40536
0755
edit
dl
rm
kexec
197216
0755
edit
dl
rm
key.dns_resolver
32104
0755
edit
dl
rm
kpartx
48664
0755
edit
dl
rm
lchage
23720
0755
edit
dl
rm
ldattach
27880
0755
edit
dl
rm
ldconfig
1176464
0755
edit
dl
rm
lgroupadd
15480
0755
edit
dl
rm
lgroupdel
15472
0755
edit
dl
rm
lgroupmod
23680
0755
edit
dl
rm
lid
19592
0755
edit
dl
rm
lnewusers
23680
0755
edit
dl
rm
lnstat
24160
0755
edit
dl
rm
load_policy
15480
0755
edit
dl
rm
logrotate
97960
0755
edit
dl
rm
logsave
15552
0755
edit
dl
rm
losetup
73816
0755
edit
dl
rm
lpasswd
23680
0755
edit
dl
rm
lshw
874064
0755
edit
dl
rm
lsmod
169544
0755
edit
dl
rm
lspci
99912
0755
edit
dl
rm
luseradd
23680
0755
edit
dl
rm
luserdel
15480
0755
edit
dl
rm
lusermod
23688
0755
edit
dl
rm
lvchange
2831072
0555
edit
dl
rm
lvconvert
2831072
0555
edit
dl
rm
lvcreate
2831072
0555
edit
dl
rm
lvdisplay
2831072
0555
edit
dl
rm
lvextend
2831072
0555
edit
dl
rm
lvm
2831072
0555
edit
dl
rm
lvmconfig
2831072
0555
edit
dl
rm
lvmdevices
2831072
0555
edit
dl
rm
lvmdiskscan
2831072
0555
edit
dl
rm
lvmdump
10378
0555
edit
dl
rm
lvmpolld
215344
0555
edit
dl
rm
lvmsadc
2831072
0555
edit
dl
rm
lvmsar
2831072
0555
edit
dl
rm
lvm_import_vdo
23708
0555
edit
dl
rm
lvreduce
2831072
0555
edit
dl
rm
lvremove
2831072
0555
edit
dl
rm
lvrename
2831072
0555
edit
dl
rm
lvresize
2831072
0555
edit
dl
rm
lvs
2831072
0555
edit
dl
rm
lvscan
2831072
0555
edit
dl
rm
makedumpfile
442208
0755
edit
dl
rm
matchpathcon
15680
0755
edit
dl
rm
mii-diag
24776
0755
edit
dl
rm
mii-tool
28448
0755
edit
dl
rm
mkdict
255
0755
edit
dl
rm
mkdosfs
53768
0755
edit
dl
rm
mkdumprd
12418
0755
edit
dl
rm
mke2fs
135712
0755
edit
dl
rm
mkfs
15536
0755
edit
dl
rm
mkfs.cramfs
36224
0755
edit
dl
rm
mkfs.ext2
135712
0755
edit
dl
rm
mkfs.ext3
135712
0755
edit
dl
rm
mkfs.ext4
135712
0755
edit
dl
rm
mkfs.fat
53768
0755
edit
dl
rm
mkfs.minix
44600
0755
edit
dl
rm
mkfs.msdos
53768
0755
edit
dl
rm
mkfs.vfat
53768
0755
edit
dl
rm
mkfs.xfs
461592
0755
edit
dl
rm
mkhomedir_helper
23768
0755
edit
dl
rm
mklost+found
15480
0755
edit
dl
rm
mksquashfs
202360
0755
edit
dl
rm
mkswap
48640
0755
edit
dl
rm
modinfo
169544
0755
edit
dl
rm
modprobe
169544
0755
edit
dl
rm
modsec-sdbm-util
34368
0750
edit
dl
rm
mount.fuse
15704
0755
edit
dl
rm
mount.fuse3
19832
0755
edit
dl
rm
mount.nfs
102936
4755
edit
dl
rm
mount.nfs4
102936
4755
edit
dl
rm
mountstats
43519
0755
edit
dl
rm
mysqld
56687576
0755
edit
dl
rm
named
558104
0755
edit
dl
rm
named-checkconf
40344
0755
edit
dl
rm
named-checkzone
40288
0755
edit
dl
rm
named-compilezone
40288
0755
edit
dl
rm
named-journalprint
15496
0755
edit
dl
rm
named-nzd2nzf
15480
0755
edit
dl
rm
nameif
15952
0755
edit
dl
rm
NetworkManager
3893928
0755
edit
dl
rm
newusers
90832
0755
edit
dl
rm
nfsconf
40816
0755
edit
dl
rm
nfsdcld
57208
0755
edit
dl
rm
nfsdclddb
10230
0755
edit
dl
rm
nfsdclnts
9271
0755
edit
dl
rm
nfsdcltrack
40872
0755
edit
dl
rm
nfsidmap
23856
0755
edit
dl
rm
nfsiostat
23910
0755
edit
dl
rm
nfsref
44560
0755
edit
dl
rm
nfsstat
39192
0755
edit
dl
rm
nft
27824
0755
edit
dl
rm
nologin
15520
0755
edit
dl
rm
nscd
166856
0755
edit
dl
rm
nsec3hash
15560
0755
edit
dl
rm
nstat
32088
0755
edit
dl
rm
packer
15472
0755
edit
dl
rm
pam_console_apply
44552
0755
edit
dl
rm
pam_namespace_helper
471
0755
edit
dl
rm
pam_timestamp_check
15496
4755
edit
dl
rm
paperconfig
4173
0755
edit
dl
rm
parted
98704
0755
edit
dl
rm
partprobe
15704
0755
edit
dl
rm
partx
61200
0755
edit
dl
rm
pdata_tools
3046296
0755
edit
dl
rm
pdns_server
6162800
0755
edit
dl
rm
pidof
23888
0755
edit
dl
rm
ping
91472
0755
edit
dl
rm
ping6
91472
0755
edit
dl
rm
pivot_root
15520
0755
edit
dl
rm
plipconfig
15720
0755
edit
dl
rm
poweroff
305576
0755
edit
dl
rm
pure-authd
23568
0755
edit
dl
rm
pure-certd
23472
0755
edit
dl
rm
pure-config.pl
4755
0755
edit
dl
rm
pure-ftpd
181376
0755
edit
dl
rm
pure-ftpwho
27216
0755
edit
dl
rm
pure-mrtginfo
14896
0755
edit
dl
rm
pure-quotacheck
23104
0755
edit
dl
rm
pure-uploadscript
23376
0755
edit
dl
rm
pvchange
2831072
0555
edit
dl
rm
pvck
2831072
0555
edit
dl
rm
pvcreate
2831072
0555
edit
dl
rm
pvdisplay
2831072
0555
edit
dl
rm
pvmove
2831072
0555
edit
dl
rm
pvremove
2831072
0555
edit
dl
rm
pvresize
2831072
0555
edit
dl
rm
pvs
2831072
0555
edit
dl
rm
pvscan
2831072
0555
edit
dl
rm
pwck
56936
0755
edit
dl
rm
pwconv
48584
0755
edit
dl
rm
pwhistory_helper
19656
0755
edit
dl
rm
pwunconv
48544
0755
edit
dl
rm
quotacheck
95864
0755
edit
dl
rm
quotaoff
58032
0755
edit
dl
rm
quotaon
58032
0755
edit
dl
rm
quotastats
15704
0755
edit
dl
rm
rdisc
32112
0755
edit
dl
rm
rdma
119872
0755
edit
dl
rm
readprofile
23824
0755
edit
dl
rm
reboot
305576
0755
edit
dl
rm
repquota
79416
0755
edit
dl
rm
request-key
27944
0755
edit
dl
rm
resize2fs
69264
0755
edit
dl
rm
resizepart
23960
0755
edit
dl
rm
restorecon
23744
0755
edit
dl
rm
restorecon_xattr
15488
0755
edit
dl
rm
rfkill
32096
0755
edit
dl
rm
rmmod
169544
0755
edit
dl
rm
rndc
44288
0755
edit
dl
rm
rndc-confgen
23816
0755
edit
dl
rm
rotatelogs
39048
0755
edit
dl
rm
route
67352
0755
edit
dl
rm
rpc.gssd
90224
0755
edit
dl
rm
rpc.idmapd
48880
0755
edit
dl
rm
rpc.mountd
135736
0755
edit
dl
rm
rpc.nfsd
40960
0755
edit
dl
rm
rpc.statd
82728
0755
edit
dl
rm
rpcbind
61328
0755
edit
dl
rm
rpcctl
9645
0755
edit
dl
rm
rpcdebug
19104
0755
edit
dl
rm
rpcinfo
36432
0755
edit
dl
rm
rsyslogd
826240
0755
edit
dl
rm
rtacct
30048
0755
edit
dl
rm
rtcwake
36104
0755
edit
dl
rm
rtkitctl
15608
0755
edit
dl
rm
rtmon
129080
0755
edit
dl
rm
rtstat
24160
0755
edit
dl
rm
runlevel
305576
0755
edit
dl
rm
runq
1728848
4755
edit
dl
rm
runuser
56944
0755
edit
dl
rm
sasldblistusers2
15640
0755
edit
dl
rm
saslpasswd2
15608
0755
edit
dl
rm
sefcontext_compile
74120
0755
edit
dl
rm
selabel_digest
15680
0755
edit
dl
rm
selabel_get_digests_all_partial_matches
15696
0755
edit
dl
rm
selabel_lookup
15672
0755
edit
dl
rm
selabel_lookup_best_match
15680
0755
edit
dl
rm
selabel_partial_match
15672
0755
edit
dl
rm
selinuxconlist
15672
0755
edit
dl
rm
selinuxdefcon
15672
0755
edit
dl
rm
selinuxenabled
15640
0755
edit
dl
rm
selinuxexeccon
15656
0755
edit
dl
rm
selinux_check_access
15680
0755
edit
dl
rm
semanage
41614
0755
edit
dl
rm
semodule
32808
0755
edit
dl
rm
sendmail
18512
2755
edit
dl
rm
service
4623
0755
edit
dl
rm
sestatus
23680
0755
edit
dl
rm
setcap
15488
0755
edit
dl
rm
setenforce
15664
0755
edit
dl
rm
setfiles
23744
0755
edit
dl
rm
setpci
32104
0755
edit
dl
rm
setquota
83536
0755
edit
dl
rm
setsebool
19608
0755
edit
dl
rm
sfdisk
106480
0755
edit
dl
rm
showmount
15848
0755
edit
dl
rm
shutdown
305576
0755
edit
dl
rm
slattach
38472
0755
edit
dl
rm
sm-notify
53016
0755
edit
dl
rm
smartctl
874328
0755
edit
dl
rm
smartd
630240
0755
edit
dl
rm
ss
134472
0755
edit
dl
rm
sshd
416664
0755
edit
dl
rm
sssd
73328
0755
edit
dl
rm
sss_cache
36096
0755
edit
dl
rm
start-statd
1027
0755
edit
dl
rm
start-stop-daemon
49816
0755
edit
dl
rm
suexec
38504
4755
edit
dl
rm
sulogin
44440
0755
edit
dl
rm
sw-engine-fpm
25314680
0755
edit
dl
rm
swaplabel
19648
0755
edit
dl
rm
swapoff
23824
0755
edit
dl
rm
swapon
44352
0755
edit
dl
rm
switch_root
23760
0755
edit
dl
rm
sysctl
32248
0755
edit
dl
rm
tc
655456
0755
edit
dl
rm
tcpdump
1340256
0755
edit
dl
rm
tcpslice
28048
0755
edit
dl
rm
telinit
305576
0755
edit
dl
rm
thin_check
3046296
0755
edit
dl
rm
thin_delta
3046296
0755
edit
dl
rm
thin_dump
3046296
0755
edit
dl
rm
thin_ls
3046296
0755
edit
dl
rm
thin_metadata_pack
3046296
0755
edit
dl
rm
thin_metadata_size
3046296
0755
edit
dl
rm
thin_metadata_unpack
3046296
0755
edit
dl
rm
thin_migrate
3046296
0755
edit
dl
rm
thin_repair
3046296
0755
edit
dl
rm
thin_restore
3046296
0755
edit
dl
rm
thin_rmap
3046296
0755
edit
dl
rm
thin_trim
3046296
0755
edit
dl
rm
tipc
95024
0755
edit
dl
rm
tmpwatch
36896
0755
edit
dl
rm
tracepath
19680
0755
edit
dl
rm
tracepath6
19680
0755
edit
dl
rm
tsig-keygen
27912
0755
edit
dl
rm
tune2fs
106968
0755
edit
dl
rm
udevadm
601960
0755
edit
dl
rm
umount.nfs
102936
4755
edit
dl
rm
umount.nfs4
102936
4755
edit
dl
rm
unix_chkpwd
23848
4755
edit
dl
rm
unix_update
32080
0700
edit
dl
rm
unsquashfs
116536
0755
edit
dl
rm
update-alternatives
40544
0755
edit
dl
rm
update-pciids
1757
0755
edit
dl
rm
update-smart-drivedb
23885
0755
edit
dl
rm
useradd
141144
0755
edit
dl
rm
userdel
90968
0755
edit
dl
rm
usermod
132776
0755
edit
dl
rm
validatetrans
15656
0755
edit
dl
rm
vdpa
36736
0755
edit
dl
rm
vgcfgbackup
2831072
0555
edit
dl
rm
vgcfgrestore
2831072
0555
edit
dl
rm
vgchange
2831072
0555
edit
dl
rm
vgck
2831072
0555
edit
dl
rm
vgconvert
2831072
0555
edit
dl
rm
vgcreate
2831072
0555
edit
dl
rm
vgdisplay
2831072
0555
edit
dl
rm
vgexport
2831072
0555
edit
dl
rm
vgextend
2831072
0555
edit
dl
rm
vgimport
2831072
0555
edit
dl
rm
vgimportclone
2831072
0555
edit
dl
rm
vgimportdevices
2831072
0555
edit
dl
rm
vgmerge
2831072
0555
edit
dl
rm
vgmknodes
2831072
0555
edit
dl
rm
vgreduce
2831072
0555
edit
dl
rm
vgremove
2831072
0555
edit
dl
rm
vgrename
2831072
0555
edit
dl
rm
vgs
2831072
0555
edit
dl
rm
vgscan
2831072
0555
edit
dl
rm
vgsplit
2831072
0555
edit
dl
rm
vigr
59552
0755
edit
dl
rm
vipw
59552
0755
edit
dl
rm
visudo
273680
0755
edit
dl
rm
vmcore-dmesg
27952
0755
edit
dl
rm
weak-modules
34384
0755
edit
dl
rm
whmapi0
3478112
0755
edit
dl
rm
whmapi1
3478112
0755
edit
dl
rm
whmlogin
2390
0755
edit
dl
rm
wipefs
40224
0755
edit
dl
rm
xfs_admin
2178
0755
edit
dl
rm
xfs_bmap
699
0755
edit
dl
rm
xfs_copy
94840
0755
edit
dl
rm
xfs_db
725072
0755
edit
dl
rm
xfs_estimate
15528
0755
edit
dl
rm
xfs_freeze
804
0755
edit
dl
rm
xfs_fsr
44552
0755
edit
dl
rm
xfs_growfs
44680
0755
edit
dl
rm
xfs_info
1298
0755
edit
dl
rm
xfs_io
207456
0755
edit
dl
rm
xfs_logprint
90376
0755
edit
dl
rm
xfs_mdrestore
27936
0755
edit
dl
rm
xfs_metadump
786
0755
edit
dl
rm
xfs_mkfile
1044
0755
edit
dl
rm
xfs_ncheck
689
0755
edit
dl
rm
xfs_quota
94312
0755
edit
dl
rm
xfs_repair
702704
0755
edit
dl
rm
xfs_rtcp
19600
0755
edit
dl
rm
xfs_spaceman
44832
0755
edit
dl
rm
xqmstats
15696
0755
edit
dl
rm
xtables-monitor
236960
0755
edit
dl
rm
xtables-nft-multi
236960
0755
edit
dl
rm
zic
61056
0755
edit
dl
rm
zramctl
57208
0755
edit
dl
rm
Edit:
/usr/sbin/update-smart-drivedb
(23885B)
#!/usr/bin/sh # # smartmontools drive database update script # # Home page of code is: https://www.smartmontools.org # # Copyright (C) 2010-20 Christian Franke # # SPDX-License-Identifier: GPL-2.0-or-later # # $Id: update-smart-drivedb.in 5153 2020-12-30 14:09:46Z chrfranke $ # set -e # Set by config.status export PATH="/usr/local/bin:/usr/bin:/bin" PACKAGE="smartmontools" VERSION="7.2" prefix="/usr" exec_prefix="/usr" sbindir="/usr/sbin" datarootdir="${prefix}/share" datadir="/usr/share" drivedbdir="${datadir}/${PACKAGE}" # Download tools os_dltools="curl wget lynx svn" # drivedb.h update branch BRANCH="RELEASE_7_2_DRIVEDB" # Default drivedb location DRIVEDB="$drivedbdir/drivedb.h" # GnuPG used to verify signature (disabled if empty) GPG="gpg" # Smartctl used for syntax check SMARTCTL="$sbindir/smartctl" # PATH information for help and error messages #pathinfo='$PATH' pathinfo="'$PATH'" myname=$0 usage() { pathinfo=" $pathinfo" cat <<EOF smartmontools $VERSION drive database update script Usage: $myname [OPTIONS] [DESTFILE] -s SMARTCTL Use SMARTCTL for syntax check ('-s -' to disable) [default: $SMARTCTL] -t TOOL Use TOOL for download: $os_dltools [default: first one found in $pathinfo] -u LOCATION Use URL of LOCATION for download: github (GitHub mirror of SVN repository) sf (Sourceforge code browser) svn (SVN repository) [default] svni (SVN repository via HTTP instead of HTTPS) trac (Trac code browser) --trunk Download from SVN trunk (may require '--no-verify') --branch X.Y Download from branches/RELEASE_X_Y_DRIVEDB --cacert FILE Use CA certificates from FILE to verify the peer --capath DIR Use CA certificate files from DIR to verify the peer --insecure Don't abort download if certificate verification fails --no-verify Don't verify signature --export-key Print the OpenPGP/GPG public key block --dryrun Print download commands only -v Verbose output Updates $DRIVEDB or DESTFILE from branches/$BRANCH of smartmontools SVN repository. EOF exit 1 } error() { echo "$myname: $*" >&2 exit 1 } err_notfound() { case $1 in */*) error "$1: not found $2" ;; *) error "$1: not found in $pathinfo $2" ;; esac } warning() { echo "$myname: (Warning) $*" >&2 } selecturl() { case $1 in github) # https://github.com/smartmontools/smartmontools/raw/origin/$BRANCH/smartmontools/drivedb.h # https://github.com/smartmontools/smartmontools/raw/master/smartmontools/drivedb.h # redirected to: url='https://raw.githubusercontent.com/smartmontools/smartmontools/master/smartmontools/drivedb.h' ;; sf) url='https://sourceforge.net/p/smartmontools/code/HEAD/tree/trunk/smartmontools/drivedb.h?format=raw' ;; svn) url='https://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools/drivedb.h' ;; svni) url='http://svn.code.sf.net/p/smartmontools/code/trunk/smartmontools/drivedb.h' ;; trac) url='https://www.smartmontools.org/export/HEAD/trunk/smartmontools/drivedb.h' ;; *) usage ;; esac } inpath() { local d rc save rc=1 save=$IFS IFS=':' for d in $PATH; do test -f "$d/$1" || continue test -x "$d/$1" || continue rc=0 break done IFS=$save return $rc } vecho() { test -n "$q" || echo "$*" } # vrun COMMAND ARGS... vrun() { if [ -n "$dryrun" ]; then echo "$*" elif [ -n "$q" ]; then "$@" 2>/dev/null else echo "$*" "$@" fi } # vrun2 OUTFILE COMMAND ARGS... vrun2() { local f err rc f=$1; shift rc=0 if [ -n "$dryrun" ]; then echo "$* > $f" else vecho "$* > $f" err=`"$@" 2>&1 > $f` || rc=$? if [ -n "$err" ]; then vecho "$err" >&2 test $rc != 0 || rc=42 fi fi return $rc } # download URL FILE download() { local f u rc u=$1; f=$2 rc=0 case $tool in curl) # "Accept-Encoding" header avoids caching problems with svn URL vrun curl ${q:+-s} -f --max-redirs 0 \ -H "Accept-Encoding: identity" \ ${cacert:+--cacert "$cacert"} \ ${capath:+--capath "$capath"} \ ${insecure:+--insecure} \ -o "$f" "$u" || rc=$? ;; wget) # wget >= 1.16.1 sets "Accept-Encoding: identity" header by default vrun wget $q --max-redirect=0 \ ${cacert:+--ca-certificate="$cacert"} \ ${capath:+--ca-directory="$capath"} \ ${insecure:+--no-check-certificate} \ -O "$f" "$u" || rc=$? ;; lynx) test -z "$cacert" || vrun export SSL_CERT_FILE="$cacert" test -z "$capath" || vrun export SSL_CERT_DIR="$capath" # Check also stderr as lynx does not return != 0 on HTTP error vrun2 "$f" lynx -stderr -noredir -source "$u" || rc=$? ;; svn) vrun svn $q export \ --non-interactive --no-auth-cache \ ${cacert:+--config-option "servers:global:ssl-trust-default-ca=no"} \ ${cacert:+--config-option "servers:global:ssl-authority-files=$cacert"} \ ${insecure:+--trust-server-cert} \ "$u" "$f" || rc=$? ;; fetch) # FreeBSD vrun fetch $q --no-redirect \ ${cacert:+--ca-cert "$cacert"} \ ${capath:+--ca-path "$capath"} \ ${insecure:+--no-verify-hostname} \ -o "$f" "$u" || rc=$? ;; ftp) # OpenBSD vrun ftp \ ${cacert:+-S cafile="$cacert"} \ ${capath:+-S capath="$capath"} \ ${insecure:+-S dont} \ -o "$f" "$u" || rc=$? ;; *) error "$tool: unknown (internal error)" ;; esac return $rc } # check_file FILE FIRST_CHAR MIN_SIZE MAX_SIZE check_file() { local firstchar f maxsize minsize size test -z "$dryrun" || return 0 f=$1; firstchar=$2; minsize=$3; maxsize=$4 # Check first chars case `dd if="$f" bs=1 count=1 2>/dev/null` in $firstchar) ;; \<) echo "HTML error message"; return 1 ;; *) echo "unknown file contents"; return 1 ;; esac # Check file size size=`wc -c < "$f"` if test "$size" -lt $minsize; then echo "too small file size $size bytes" return 1 fi if test "$size" -gt $maxsize; then echo "too large file size $size bytes" return 1 fi return 0 } # unexpand_svn_id < INFILE > OUTFILE unexpand_svn_id() { sed 's,\$''Id'': drivedb\.h [0-9][0-9]* 2[-0-9]* [012][:0-9]*Z [a-z][a-z0-9]* \$,$''Id''$,' } # selectkey BRANCH selectkey() { case $1 in RELEASE_5_4[0-3]_DRIVEDB|RELEASE_6_[0-6]_DRIVEDB) # Smartmontools Signing Key (ext. to 2024) <smartmontools-database@listi.jpberlin.de> # Smartmontools Signing Key (through 2018) <smartmontools-database@listi.jpberlin.de> # Smartmontools Signing Key (through 2018) <smartmontools-database@lists.sourceforge.net> # Key ID DFD22559 public_key="\ -----BEGIN PGP PUBLIC KEY BLOCK----- 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 1TC5jSVOIEqOE4TwzRz1Y/dfqSU= =3Lcg -----END PGP PUBLIC KEY BLOCK----- " ;; RELEASE_7_[02]_DRIVEDB) # Smartmontools Signing Key (through 2025) <smartmontools-database@listi.jpberlin.de> # Smartmontools Signing Key (through 2020) <smartmontools-database@listi.jpberlin.de> # Key ID 721042C5 public_key="\ -----BEGIN PGP PUBLIC KEY BLOCK----- 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 90iSgZdt5cZgoH04weXCMwDugn/+Q3rzKvRUTrEfSOivJYg65D/mhbz6HoUTs4JD SstTYa9qNCwKQGRSeis4PAgu0hCpnDAhZuN3Ja5AFC2Wi2szQ7R+Zx/JucIBm5S4 U30W66MtsyUHeulSJ3AV3HrbFfnqu6zfQM4XLw7MpAtQUNJceS/lWfGIquAp3tY/ IjZIHwgZqKB3czWDhM83wBzCWgAmxyzIrpb4MBYJ5PGuCyC7R/YTdtPJXxsPQl2l znsX/9ssa4kBHAQTAQIABgUCX+CfSAAKCRDzh2PO39IlWVcuB/9UkLaPtGY4sDDV /A7qjSvSy93mv8gkaIj9dhqoZw+r7cLiEtX04Cz9PqocOFgCYJXKrufHNNkHke2A jE9EJfRKiPU/bkeWmrACvtrOd/DZbdmXfxTOekOr516D2ip/U8GBPw6zxfCQVot6 htpBpB6zzMDtzMOeLnkOxoxR4EMu5K6eJ48bHvG/lbGBByyfRzhtqPh6AAA9G1CC IdhNkaA5W1qums3N1mCXrTBnWyjaFhdnttGQfrMdHvTQ77HeL0c2axT2y5PYfrXY 2ZfZowYLEtFXRSTpDaJfgG+qem3N+pMv6SMOG/4CvlH4/3Hq0aCNvKcY5KUXfIgT xmc3/n/wtFNTbWFydG1vbnRvb2xzIFNpZ25pbmcgS2V5ICh0aHJvdWdoIDIwMjAp IDxzbWFydG1vbnRvb2xzLWRhdGFiYXNlQGxpc3RpLmpwYmVybGluLmRlPokCPgQT AQIAKAIbAwYLCQgHAwIGFQgCCQoLBBYCAwECHgECF4AFAl/gnzAFCQ0umpsACgkQ 6nSrJXIQQsVK7RAAqbZfT3wZEfJkw8MK2JlvgGWH76fHKn5ZoH5i0mA4AvN4QLbU 5Q20HmqHnO9mfAZQ6u4Tn/aFcYT7nlSsEsEmFX+s5QU2y6m2Tx9ThDbZ03ezREOS 0wNf0FOQunV9ZVPT/7cKIgWJa5mZy+LClor9OHllyGUfs9tKNzwxaHh1zBrCNJow Fi/1bkWy3iMc7vZhWHASwPSp64KHjB4UdMz2hV4pROiUhWi7BY0exIHyZrkcANMP Hhl9lP32ZvNbOy8osBdPUgXyK3HePD+ftcwJMkoc4mFQXYi9UY7NQpk7STRO10cx Kq/CgDDvYxbnViRjQoJ0sfwKCaOfsnY/gea7I0aCx8uNISYpHO9iMidd/tJ7+lgx NiKZTI0EppHYvkyMY15/NGb0gTJbYjuVYdbqDS9mnLuLQAjAX43+n9ND2NjX1o0q Z9bBqV2VFioNmnxKqGphhRFX9jEzTklieOjhpRrd8v9ljprT6vLFNpYpeLkel8om VFXrHxrfzKtVFcto5wqHVOcyZyE2zm1QmsS8qvWOTrNfY6p2q9MA2rysqdfgfvN7 pNDaXutK6ooQi6YlyyTA2ANnHFKa0ncRH+dg+5OF9rhNvM7RyaBXgxF7+5gnU5Gb VQRKbJ+LOtSKkj0pApR5AKSwyGslZ2bNVlKsADWhk5xj8QlHVlNWiht+i/6JARwE EwECAAYFAlwmhpwACgkQL83sC9OvGqsVOggAqLB5eQrUv8E9ikD6kJCito827bzD WF29yD7PvfhjXaz5in54jOVpwg3o9CsqIjjRW0/1bBVswC8ZL0sAdZ+GDSDMw5F2 IpkD77gjnFY79M/e6C9xYyxYzHC7emDPSz9IroOvdkkEgrB+OABKkaOCcS18P4Lk 3WNHaPw5c7aI0z1iJP52EmSfvB8r86mtUFJB+f15eD/4vaRfkZLFjF9FQ3kgEK1U +rV4s1O2bCFfP3WPDcc83NgwRUvtXmcSOSOIoXnemJzyJr+JnqCWVET4XWF6i20m RFXVEpWtf5AkJYgR3z/jW0djELbBWA/35bAnpXy5pDHv9NbZsTkBZxK/kokBHAQT AQIABgUCXCaGnQAKCRAY7NpGy/a6xn4lB/90tXTnZsgmoftol9uivfQrPdR88WmO ZLYmUeQAd1rqSFMxe+KzO/qLuU8s6OF4nznwL2cPfbGZxezM4PiYmAmbbEU/3gTO NwjVBBA0Gfimy/fITEezFtCigo1thkaJ195g/dqY+zE3Vt4rzC03j1vx8mUHRPU6 kkvKj8cP0j+XHX2xQDsTXTstfnom29wBmGnvSZ9HgcdL71e1VXJXwikmnO3P4J/1 C2LeCOlWrGqWZ2c0WBLKdJnsYUx7Dm/OvkkB4lF+zWp98zS8jS/5h+1apVgEzrdT MvT8ydTkUr7ObKGkIhK+L+Xo5BD+V9Qf6xKGYPwhhdj/E5/kyjULrm10iQEcBBMB AgAGBQJcJoadAAoJEPOHY87f0iVZfiUH/3yKS5wGvTeRInse8+W1WzKuto3XzqXL ngb9QXWw7nCwqmNS7PbzDnufQi2ThKrMfcK14WgNYABNZPU75I+6bcb0oCB5tloo IUEV/2Ut/5Hl/83zFFoNA/kQKVz8kIDqgRcxC+zY2VJ4eTKHyQDvXygVk8wnKTBa e3gX+CIZqJHPXiiygHlbl31Mi3G1Iaxu57dP6ocV0vX1dytKSwd4Rbviwwb4L76o /tVT9t3GwFM15uK1SqtnAaiaktEdMi3XI4d01H3VUVz/iR0XQbf13RZoEM6CJWms Q/qvYlwkbKOdlahjoHrFlkhADSBaO9N1OZp3OYDjziIujMdt2IPKnmM= =7MQk -----END PGP PUBLIC KEY BLOCK----- " ;; *) error "No known public key for branches/$1" ;; esac } # gpg_verify FILE.asc FILE gpg_verify() { local gnupgtmp out rc # Create temp home dir gnupgtmp="$tmpdir/.gnupg.$$.tmp" rm -f -r "$gnupgtmp" mkdir "$gnupgtmp" || exit 1 chmod 0700 "$gnupgtmp" # Import public key if ! out=`echo "$public_key" | "$GPG" --batch --no-tty --homedir="$gnupgtmp" --import 2>&1`; then echo "$out" >&2 exit 1 fi vecho "$out" # Verify rc=0 out=`"$GPG" --batch --no-tty --homedir="$gnupgtmp" --verify "$1" "$2" </dev/null 2>&1` || rc=1 if [ $rc = 0 ]; then vecho "$out" else # print gpg error always echo "$out" >&2 fi rm -f -r "$gnupgtmp" return $rc } # mv_all PREFIX OLD NEW mv_all() { mv "${1}${2}" "${1}${3}" mv "${1}${2}.raw" "${1}${3}.raw" mv "${1}${2}.raw.asc" "${1}${3}.raw.asc" } # Parse options smtctl=$SMARTCTL tool= urlid="svn" q="-q" dryrun= trunk= brnch=$BRANCH cacert= capath= insecure= no_verify= expkey= while true; do case $1 in -s) shift; test -n "$1" || usage smtctl=$1 ;; -t) shift case $1 in *\ *) usage ;; esac case " $os_dltools " in *\ $1\ *) ;; *) usage ;; esac tool=$1 ;; -u) shift; test -n "$1" || usage urlid=$1 ;; -v) q= ;; --dryrun) dryrun=t ;; --trunk) trunk=trunk ;; --branch) shift brnch=`echo "$1" | sed -n 's,^\([567]\)\.\([0-9][0-9]*\)$,RELEASE_\1_\2_DRIVEDB,p'` test -n "$brnch" || usage ;; --cacert) shift; test -n "$1" || usage cacert=$1 ;; --capath) shift; test -n "$1" || usage capath=$1 ;; --insecure) insecure=t ;; --no-verify) no_verify=t ;; --export-key) expkey=t ;; -*) usage ;; *) break ;; esac; shift; done if [ -n "$expkey" ]; then test $# = 0 || usage selectkey "$brnch" cat <<EOF $public_key EOF exit 0 fi case $# in 0) DEST=$DRIVEDB ;; 1) DEST=$1 ;; *) usage ;; esac selecturl "$urlid" if [ -z "$tool" ]; then # Find download tool in PATH for t in $os_dltools; do if inpath "$t"; then tool=$t break fi done test -n "$tool" || error "found none of '$os_dltools' in $pathinfo" fi # Check option compatibility case "$tool:$url" in svn:http*://svn.code.sf.net*) ;; svn:*) error "'-t svn' requires '-u svn' or '-u svni'" ;; esac case "$tool:${capath:+set}" in svn:set) warning "'--capath' is ignored if '-t svn' is used" ;; esac case "${insecure:-f}:$url" in t:http:*) insecure= ;; ?:https:*) ;; *) error "'-u svni' requires '--insecure'" ;; esac case "$tool:$insecure" in lynx:t) warning "'--insecure' is ignored if '-t lynx' is used" ;; esac # Check for smartctl if [ "$smtctl" != "-" ]; then "$smtctl" -V >/dev/null 2>&1 \ || err_notfound "$smtctl" "('-s -' to ignore)" fi # Check for GnuPG if [ -z "$no_verify" ]; then test -n "$GPG" \ || error "GnuPG is not available ('--no-verify' to ignore)" "$GPG" --version >/dev/null 2>&1 \ || err_notfound "$GPG" "('--no-verify' to ignore)" selectkey "$brnch" fi # Use destination directory as temp directory for gpg tmpdir=`dirname "$DEST"` # Adjust URLs src=`echo "$url" | sed -e "s,/trunk/,/branches/$brnch/," \ -e "s,/master/,/origin/$brnch/,"` src_asc=`echo "$src" | sed "s,/drivedb\.h,/drivedb.h.raw.asc,"` test -z "$trunk" || src=$url # Download test -n "$dryrun" || rm -f "$DEST.new" "$DEST.new.raw" "$DEST.new.raw.asc" vecho "Download ${trunk:-branches/$brnch}/drivedb.h with $tool" rc=0 download "$src" "$DEST.new" || rc=$? if [ $rc != 0 ]; then rm -f "$DEST.new" error "${trunk:-$brnch}/drivedb.h: download failed ($tool: exit $rc)" fi if ! errmsg=`check_file "$DEST.new" '/' 10000 1000000`; then mv "$DEST.new" "$DEST.error" error "$DEST.error: $errmsg" fi vecho "Download branches/$brnch/drivedb.h.raw.asc with $tool" rc=0 download "$src_asc" "$DEST.new.raw.asc" || rc=$? if [ $rc != 0 ]; then rm -f "$DEST.new" "$DEST.new.raw.asc" error "$brnch/drivedb.h.raw.asc: download failed ($tool: exit $rc)" fi if ! errmsg=`check_file "$DEST.new.raw.asc" '-' 200 2000`; then rm -f "$DEST.new" mv "$DEST.new.raw.asc" "$DEST.error.raw.asc" error "$DEST.error.raw.asc: $errmsg" fi test -z "$dryrun" || exit 0 # Create raw file with unexpanded SVN Id # (This assumes newlines are LF and not CR/LF) unexpand_svn_id < "$DEST.new" > "$DEST.new.raw" # Adjust timestamps and permissions touch "$DEST.new" "$DEST.new.raw" "$DEST.new.raw.asc" chmod 0644 "$DEST.new" "$DEST.new.raw" "$DEST.new.raw.asc" if [ -z "$no_verify" ]; then # Verify raw file if ! gpg_verify "$DEST.new.raw.asc" "$DEST.new.raw"; then mv_all "$DEST" ".new" ".error" test -n "$trunk" || error "$DEST.error.raw: *** BAD signature or outdated key ***" error "$DEST.error.raw: signature from branch no longer valid ('--no-verify' to ignore)" fi fi if [ "$smtctl" != "-" ]; then # Check syntax if ! "$smtctl" -B "$DEST.new" -P showall >/dev/null; then mv_all "$DEST" ".new" ".error" error "$DEST.error: rejected by $smtctl, probably no longer compatible" fi vecho "$smtctl: syntax OK" fi # Keep old file if identical, ignore missing Id keyword expansion in new file rm -f "$DEST.lastcheck" if [ -f "$DEST" ]; then if [ -f "$DEST.raw" ] && [ -f "$DEST.raw.asc" ]; then if cmp "$DEST.raw" "$DEST.new.raw" >/dev/null 2>&1 \ && cmp "$DEST.raw.asc" "$DEST.new.raw.asc" >/dev/null 2>&1 \ && { cmp "$DEST" "$DEST.new" >/dev/null 2>&1 \ || cmp "$DEST.raw" "$DEST.new" >/dev/null 2>&1; } then rm -f "$DEST.new" "$DEST.new.raw" "$DEST.new.raw.asc" touch "$DEST.lastcheck" echo "$DEST is already up to date" exit 0 fi mv_all "$DEST" "" ".old" else mv "$DEST" "$DEST.old" fi fi mv_all "$DEST" ".new" "" echo "$DEST updated from ${trunk:-branches/$brnch}${no_verify:+ (NOT VERIFIED)}"
Save
cmd:
run