Linux web-conference.aiou.edu.pk 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64
Apache/2.4.41 (Ubuntu)
: 172.16.50.247 | : 3.128.205.187
Cant Read [ /etc/named.conf ]
7.4.3-4ubuntu2.28
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
usr /
bin /
[ HOME SHELL ]
Name
Size
Permission
Action
NF
963
B
-rwxr-xr-x
VGAuthService
138.53
KB
-rwxr-xr-x
[
58.34
KB
-rwxr-xr-x
aa-enabled
30.52
KB
-rwxr-xr-x
aa-exec
34.52
KB
-rwxr-xr-x
ab
58.34
KB
-rwxr-xr-x
add-apt-repository
7.24
KB
-rwxr-xr-x
addpart
30.23
KB
-rwxr-xr-x
apport-bug
2.5
KB
-rwxr-xr-x
apport-cli
13.05
KB
-rwxr-xr-x
apport-collect
2.5
KB
-rwxr-xr-x
apport-unpack
2.02
KB
-rwxr-xr-x
apropos
55.21
KB
-rwxr-xr-x
apt
18.38
KB
-rwxr-xr-x
apt-add-repository
7.24
KB
-rwxr-xr-x
apt-cache
86.46
KB
-rwxr-xr-x
apt-cdrom
30.46
KB
-rwxr-xr-x
apt-config
26.38
KB
-rwxr-xr-x
apt-extracttemplates
26.47
KB
-rwxr-xr-x
apt-ftparchive
274.47
KB
-rwxr-xr-x
apt-get
46.46
KB
-rwxr-xr-x
apt-key
27.28
KB
-rwxr-xr-x
apt-mark
62.46
KB
-rwxr-xr-x
apt-sortpkgs
46.39
KB
-rwxr-xr-x
arch
38.37
KB
-rwxr-xr-x
at
54.26
KB
-rwsr-sr-x
atq
54.26
KB
-rwsr-sr-x
atrm
54.26
KB
-rwsr-sr-x
automat-visualize3
402
B
-rwxr-xr-x
awk
686.47
KB
-rwxr-xr-x
b2sum
58.37
KB
-rwxr-xr-x
base32
42.34
KB
-rwxr-xr-x
base64
42.34
KB
-rwxr-xr-x
basename
38.34
KB
-rwxr-xr-x
bash
1.13
MB
-rwxr-xr-x
bashbug
6.63
KB
-rwxr-xr-x
batch
152
B
-rwxr-xr-x
bc
98.7
KB
-rwxr-xr-x
boltctl
150.82
KB
-rwxr-xr-x
bootctl
62.34
KB
-rwxr-xr-x
bsd-from
14.15
KB
-rwxr-xr-x
bsd-write
14.15
KB
-rwxr-sr-x
btrfs
800.09
KB
-rwxr-xr-x
btrfs-convert
455.53
KB
-rwxr-xr-x
btrfs-find-root
423.59
KB
-rwxr-xr-x
btrfs-image
451.53
KB
-rwxr-xr-x
btrfs-map-logical
431.53
KB
-rwxr-xr-x
btrfs-select-super
431.53
KB
-rwxr-xr-x
btrfsck
800.09
KB
-rwxr-xr-x
btrfstune
427.53
KB
-rwxr-xr-x
bunzip2
38.23
KB
-rwxr-xr-x
busctl
86.34
KB
-rwxr-xr-x
busybox
2.07
MB
-rwxr-xr-x
byobu
8.17
KB
-rwxr-xr-x
byobu-config
996
B
-rwxr-xr-x
byobu-ctrl-a
4.66
KB
-rwxr-xr-x
byobu-disable
1.26
KB
-rwxr-xr-x
byobu-disable-prompt
1.31
KB
-rwxr-xr-x
byobu-enable
1.15
KB
-rwxr-xr-x
byobu-enable-prompt
1.42
KB
-rwxr-xr-x
byobu-export
1.32
KB
-rwxr-xr-x
byobu-janitor
6.29
KB
-rwxr-xr-x
byobu-keybindings
1.47
KB
-rwxr-xr-x
byobu-launch
3.25
KB
-rwxr-xr-x
byobu-launcher
1.87
KB
-rwxr-xr-x
byobu-launcher-install
2.4
KB
-rwxr-xr-x
byobu-launcher-uninstall
1.52
KB
-rwxr-xr-x
byobu-layout
3.27
KB
-rwxr-xr-x
byobu-prompt
1.13
KB
-rwxr-xr-x
byobu-quiet
1.38
KB
-rwxr-xr-x
byobu-reconnect-sockets
3.22
KB
-rwxr-xr-x
byobu-screen
8.17
KB
-rwxr-xr-x
byobu-select-backend
1.42
KB
-rwxr-xr-x
byobu-select-profile
5
KB
-rwxr-xr-x
byobu-select-session
1012
B
-rwxr-xr-x
byobu-shell
1.56
KB
-rwxr-xr-x
byobu-silent
1.28
KB
-rwxr-xr-x
byobu-status
5.87
KB
-rwxr-xr-x
byobu-status-detail
1.18
KB
-rwxr-xr-x
byobu-tmux
8.17
KB
-rwxr-xr-x
byobu-ugraph
4.56
KB
-rwxr-xr-x
byobu-ulevel
11.71
KB
-rwxr-xr-x
bzcat
38.23
KB
-rwxr-xr-x
bzcmp
2.17
KB
-rwxr-xr-x
bzdiff
2.17
KB
-rwxr-xr-x
bzegrep
3.69
KB
-rwxr-xr-x
bzexe
4.76
KB
-rwxr-xr-x
bzfgrep
3.69
KB
-rwxr-xr-x
bzgrep
3.69
KB
-rwxr-xr-x
bzip2
38.23
KB
-rwxr-xr-x
bzip2recover
18.15
KB
-rwxr-xr-x
bzless
1.27
KB
-rwxr-xr-x
bzmore
1.27
KB
-rwxr-xr-x
c_rehash
6.65
KB
-rwxr-xr-x
cal
36.95
KB
-rwxr-xr-x
calendar
34.63
KB
-rwxr-xr-x
captoinfo
90.41
KB
-rwxr-xr-x
cat
42.4
KB
-rwxr-xr-x
catchsegv
3.25
KB
-rwxr-xr-x
catman
38.69
KB
-rwxr-xr-x
cautious-launcher
853
B
-rwxr-xr-x
cftp3
380
B
-rwxr-xr-x
chage
82.53
KB
-rwxr-sr-x
chardet3
389
B
-rwxr-xr-x
chardetect3
389
B
-rwxr-xr-x
chattr
14.31
KB
-rwxr-xr-x
chcon
70.34
KB
-rwxr-xr-x
check-language-support
2.71
KB
-rwxr-xr-x
checkgid
14.15
KB
-rwxr-xr-x
chfn
83.07
KB
-rwsr-xr-x
chgrp
70.34
KB
-rwxr-xr-x
chmod
62.37
KB
-rwxr-xr-x
choom
50.23
KB
-rwxr-xr-x
chown
70.34
KB
-rwxr-xr-x
chrt
38.23
KB
-rwxr-xr-x
chsh
51.8
KB
-rwsr-xr-x
chvt
14.07
KB
-rwxr-xr-x
ckbcomp
146.39
KB
-rwxr-xr-x
ckeygen3
386
B
-rwxr-xr-x
cksum
38.34
KB
-rwxr-xr-x
clear
14.31
KB
-rwxr-xr-x
clear_console
14.23
KB
-rwxr-xr-x
cloud-id
396
B
-rwxr-xr-x
cloud-init
400
B
-rwxr-xr-x
cloud-init-per
2.06
KB
-rwxr-xr-x
cmp
50.09
KB
-rwxr-xr-x
codepage
13.99
KB
-rwxr-xr-x
col
18.15
KB
-rwxr-xr-x
col1
963
B
-rwxr-xr-x
col2
963
B
-rwxr-xr-x
col3
963
B
-rwxr-xr-x
col4
963
B
-rwxr-xr-x
col5
963
B
-rwxr-xr-x
col6
963
B
-rwxr-xr-x
col7
963
B
-rwxr-xr-x
col8
963
B
-rwxr-xr-x
col9
963
B
-rwxr-xr-x
colcrt
14.15
KB
-rwxr-xr-x
colrm
14.15
KB
-rwxr-xr-x
column
14.16
KB
-rwxr-xr-x
comm
42.37
KB
-rwxr-xr-x
compose
18.05
KB
-rwxr-xr-x
conch3
382
B
-rwxr-xr-x
corelist
14.73
KB
-rwxr-xr-x
cp
150.37
KB
-rwxr-xr-x
cpan
7.96
KB
-rwxr-xr-x
cpan5.30-x86_64-linux-gnu
7.98
KB
-rwxr-xr-x
cpio
161.63
KB
-rwxr-xr-x
crontab
42.7
KB
-rwxr-sr-x
csplit
54.37
KB
-rwxr-xr-x
ctail
960
B
-rwxr-xr-x
ctstat
30.51
KB
-rwxr-xr-x
curl
234.23
KB
-rwxr-xr-x
cut
46.37
KB
-rwxr-xr-x
cvtsudoers
266.7
KB
-rwxr-xr-x
dash
126.77
KB
-rwxr-xr-x
date
106.37
KB
-rwxr-xr-x
dbus-cleanup-sockets
14.14
KB
-rwxr-xr-x
dbus-daemon
243.2
KB
-rwxr-xr-x
dbus-monitor
30.14
KB
-rwxr-xr-x
dbus-run-session
14.14
KB
-rwxr-xr-x
dbus-send
30.14
KB
-rwxr-xr-x
dbus-update-activation-environ...
14.14
KB
-rwxr-xr-x
dbus-uuidgen
14.14
KB
-rwxr-xr-x
dbxtool
26.3
KB
-rwxr-xr-x
dd
78.38
KB
-rwxr-xr-x
deallocvt
14.07
KB
-rwxr-xr-x
deb-systemd-helper
20.83
KB
-rwxr-xr-x
deb-systemd-invoke
4.33
KB
-rwxr-xr-x
debconf
2.79
KB
-rwxr-xr-x
debconf-apt-progress
11.27
KB
-rwxr-xr-x
debconf-communicate
608
B
-rwxr-xr-x
debconf-copydb
1.68
KB
-rwxr-xr-x
debconf-escape
647
B
-rwxr-xr-x
debconf-set-selections
2.87
KB
-rwxr-xr-x
debconf-show
1.78
KB
-rwxr-xr-x
debian-distro-info
22.89
KB
-rwxr-xr-x
delpart
30.23
KB
-rwxr-xr-x
delv
44.88
KB
-rwxr-xr-x
df
90.95
KB
-rwxr-xr-x
dfu-tool
106.3
KB
-rwxr-xr-x
dh_bash-completion
2.39
KB
-rwxr-xr-x
diff
214.34
KB
-rwxr-xr-x
diff3
66.21
KB
-rwxr-xr-x
dig
146.84
KB
-rwxr-xr-x
dir
138.81
KB
-rwxr-xr-x
dircolors
46.34
KB
-rwxr-xr-x
dirmngr
569.86
KB
-rwxr-xr-x
dirmngr-client
119.06
KB
-rwxr-xr-x
dirname
38.34
KB
-rwxr-xr-x
distro-info
22.89
KB
-rwxr-xr-x
dmesg
82.46
KB
-rwxr-xr-x
dnsdomainname
26.23
KB
-rwxr-xr-x
do-release-upgrade
9.99
KB
-rwxr-xr-x
domainname
26.23
KB
-rwxr-xr-x
dpkg
302.68
KB
-rwxr-xr-x
dpkg-deb
174.54
KB
-rwxr-xr-x
dpkg-divert
150.59
KB
-rwxr-xr-x
dpkg-maintscript-helper
20.03
KB
-rwxr-xr-x
dpkg-query
162.59
KB
-rwxr-xr-x
dpkg-split
122.48
KB
-rwxr-xr-x
dpkg-statoverride
62.27
KB
-rwxr-xr-x
dpkg-trigger
82.49
KB
-rwxr-xr-x
du
106.37
KB
-rwxr-xr-x
dumpkeys
174.52
KB
-rwxr-xr-x
eatmydata
2.74
KB
-rwxr-xr-x
ec2metadata
7.12
KB
-rwxr-xr-x
echo
38.34
KB
-rwxr-xr-x
ed
54.2
KB
-rwxr-xr-x
edit
18.05
KB
-rwxr-xr-x
editor
312.63
KB
-rwxr-xr-x
egrep
28
B
-rwxr-xr-x
eject
34.84
KB
-rwxr-xr-x
enc2xs
41.12
KB
-rwxr-xr-x
encguess
2.99
KB
-rwxr-xr-x
env
42.34
KB
-rwxr-xr-x
envsubst
42.23
KB
-rwxr-xr-x
eqn
201.5
KB
-rwxr-xr-x
ex
2.78
MB
-rwxr-xr-x
expand
42.37
KB
-rwxr-xr-x
expiry
30.58
KB
-rwxr-sr-x
expr
54.34
KB
-rwxr-xr-x
factor
78.37
KB
-rwxr-xr-x
faillog
22.59
KB
-rwxr-xr-x
fallocate
34.23
KB
-rwxr-xr-x
false
38.34
KB
-rwxr-xr-x
fcgistarter
14.15
KB
-rwxr-xr-x
fgconsole
14.07
KB
-rwxr-xr-x
fgrep
28
B
-rwxr-xr-x
file
26.47
KB
-rwxr-xr-x
finalrd
2.1
KB
-rwxr-xr-x
fincore
34.27
KB
-rwxr-xr-x
find
312.66
KB
-rwxr-xr-x
findmnt
71.41
KB
-rwxr-xr-x
flock
34.3
KB
-rwxr-xr-x
fmt
46.34
KB
-rwxr-xr-x
fold
42.34
KB
-rwxr-xr-x
free
26.23
KB
-rwxr-xr-x
from
14.15
KB
-rwxr-xr-x
ftp
106.7
KB
-rwxr-xr-x
funzip
26.15
KB
-rwxr-xr-x
fuser
39.24
KB
-rwxr-xr-x
fusermount
38.23
KB
-rwsr-xr-x
fwupdagent
186.3
KB
-rwxr-xr-x
fwupdate
82.43
KB
-rwxr-xr-x
fwupdmgr
186.3
KB
-rwxr-xr-x
fwupdtool
378.92
KB
-rwxr-xr-x
gapplication
22.38
KB
-rwxr-xr-x
gawk
686.47
KB
-rwxr-xr-x
gdbus
50.38
KB
-rwxr-xr-x
geqn
201.5
KB
-rwxr-xr-x
getconf
34.29
KB
-rwxr-xr-x
getent
38.65
KB
-rwxr-xr-x
getkeycodes
14.07
KB
-rwxr-xr-x
getopt
22.23
KB
-rwxr-xr-x
gettext
42.23
KB
-rwxr-xr-x
gettext.sh
4.52
KB
-rwxr-xr-x
ginstall-info
115.24
KB
-rwxr-xr-x
gio
90.4
KB
-rwxr-xr-x
gio-querymodules
14.3
KB
-rwxr-xr-x
git
2.98
MB
-rwxr-xr-x
git-receive-pack
2.98
MB
-rwxr-xr-x
git-shell
1.71
MB
-rwxr-xr-x
git-upload-archive
2.98
MB
-rwxr-xr-x
git-upload-pack
2.98
MB
-rwxr-xr-x
glib-compile-schemas
50.38
KB
-rwxr-xr-x
gpasswd
86.39
KB
-rwsr-xr-x
gpg
1.02
MB
-rwxr-xr-x
gpg-agent
409.04
KB
-rwxr-xr-x
gpg-connect-agent
163.16
KB
-rwxr-xr-x
gpg-wks-server
203.2
KB
-rwxr-xr-x
gpg-zip
3.43
KB
-rwxr-xr-x
gpgcompose
874.29
KB
-rwxr-xr-x
gpgconf
174.66
KB
-rwxr-xr-x
gpgparsemail
34.38
KB
-rwxr-xr-x
gpgsm
507.24
KB
-rwxr-xr-x
gpgsplit
86.76
KB
-rwxr-xr-x
gpgtar
151.63
KB
-rwxr-xr-x
gpgv
447.15
KB
-rwxr-xr-x
gpic
216.34
KB
-rwxr-xr-x
grep
194.47
KB
-rwxr-xr-x
gresource
22.3
KB
-rwxr-xr-x
groff
121.53
KB
-rwxr-xr-x
grog
2.71
KB
-rwxr-xr-x
grops
181.94
KB
-rwxr-xr-x
grotty
129.56
KB
-rwxr-xr-x
groups
38.34
KB
-rwxr-xr-x
growpart
23.95
KB
-rwxr-xr-x
grub-editenv
248.02
KB
-rwxr-xr-x
grub-file
780.38
KB
-rwxr-xr-x
grub-fstest
901.84
KB
-rwxr-xr-x
grub-glue-efi
243.86
KB
-rwxr-xr-x
grub-kbdcomp
1.64
KB
-rwxr-xr-x
grub-menulst2cfg
228.13
KB
-rwxr-xr-x
grub-mkfont
268.42
KB
-rwxr-xr-x
grub-mkimage
348.95
KB
-rwxr-xr-x
grub-mklayout
252.17
KB
-rwxr-xr-x
grub-mknetdir
401.56
KB
-rwxr-xr-x
grub-mkpasswd-pbkdf2
248.2
KB
-rwxr-xr-x
grub-mkrelpath
239.58
KB
-rwxr-xr-x
grub-mkrescue
954.3
KB
-rwxr-xr-x
grub-mkstandalone
477.86
KB
-rwxr-xr-x
grub-mount
728.8
KB
-rwxr-xr-x
grub-ntldr-img
38.24
KB
-rwxr-xr-x
grub-render-label
800.75
KB
-rwxr-xr-x
grub-script-check
271.7
KB
-rwxr-xr-x
grub-syslinux2cfg
741.27
KB
-rwxr-xr-x
gsettings
30.38
KB
-rwxr-xr-x
gtbl
138.51
KB
-rwxr-xr-x
gunzip
2.29
KB
-rwxr-xr-x
gzexe
6.3
KB
-rwxr-xr-x
gzip
95.21
KB
-rwxr-xr-x
h2ph
28.54
KB
-rwxr-xr-x
h2xs
59.44
KB
-rwxr-xr-x
hd
34.25
KB
-rwxr-xr-x
head
46.37
KB
-rwxr-xr-x
helpztags
2.46
KB
-rwxr-xr-x
hexdump
34.25
KB
-rwxr-xr-x
host
118.78
KB
-rwxr-xr-x
hostid
38.34
KB
-rwxr-xr-x
hostname
26.23
KB
-rwxr-xr-x
hostnamectl
26.22
KB
-rwxr-xr-x
htcacheclean
38.16
KB
-rwxr-xr-x
htdbm
26.15
KB
-rwxr-xr-x
htdigest
14.15
KB
-rwxr-xr-x
htop
184.87
KB
-rwxr-xr-x
htpasswd
26.15
KB
-rwxr-xr-x
hwe-support-status
10.58
KB
-rwxr-xr-x
i386
26.5
KB
-rwxr-xr-x
ibd2sdi
6.48
MB
-rwxr-xr-x
iconv
66.41
KB
-rwxr-xr-x
id
46.37
KB
-rwxr-xr-x
info
309.74
KB
-rwxr-xr-x
infobrowser
309.74
KB
-rwxr-xr-x
infocmp
62.38
KB
-rwxr-xr-x
infotocap
90.41
KB
-rwxr-xr-x
innochecksum
6.37
MB
-rwxr-xr-x
install
154.41
KB
-rwxr-xr-x
install-info
115.24
KB
-rwxr-xr-x
instmodsh
4.27
KB
-rwxr-xr-x
ionice
30.23
KB
-rwxr-xr-x
ip
597.62
KB
-rwxr-xr-x
ipcmk
34.3
KB
-rwxr-xr-x
ipcrm
34.23
KB
-rwxr-xr-x
ipcs
66.23
KB
-rwxr-xr-x
iptables-xml
96.97
KB
-rwxr-xr-x
ischroot
14.2
KB
-rwxr-xr-x
iscsiadm
394.1
KB
-rwxr-xr-x
join
54.37
KB
-rwxr-xr-x
journalctl
78.24
KB
-rwxr-xr-x
json_pp
4.56
KB
-rwxr-xr-x
jsondiff
1004
B
-rwxr-xr-x
jsonpatch
3.58
KB
-rwxr-xr-x
jsonpatch-jsondiff
1004
B
-rwxr-xr-x
jsonpointer
1.79
KB
-rwxr-xr-x
jsonschema
397
B
-rwxr-xr-x
kbd_mode
14.07
KB
-rwxr-xr-x
kbdinfo
14.07
KB
-rwxr-xr-x
kbxutil
174.97
KB
-rwxr-xr-x
keep-one-running
3.51
KB
-rwxr-xr-x
kernel-install
5.07
KB
-rwxr-xr-x
keyctl
42.38
KB
-rwxr-xr-x
keyring
385
B
-rwxr-xr-x
kill
30.23
KB
-rwxr-xr-x
killall
31.27
KB
-rwxr-xr-x
kmod
170.34
KB
-rwxr-xr-x
kmodsign
22.29
KB
-rwxr-xr-x
landscape-sysinfo
624
B
-rwxr-xr-x
last
50.23
KB
-rwxr-xr-x
lastb
50.23
KB
-rwxr-xr-x
lastlog
31.66
KB
-rwxr-xr-x
lcf
7.6
KB
-rwxr-xr-x
ldd
5.3
KB
-rwxr-xr-x
less
175.84
KB
-rwxr-xr-x
lessecho
14.31
KB
-rwxr-xr-x
lessfile
8.36
KB
-rwxr-xr-x
lesskey
23.72
KB
-rwxr-xr-x
lesspipe
8.36
KB
-rwxr-xr-x
lexgrog
98.95
KB
-rwxr-xr-x
libnetcfg
15.41
KB
-rwxr-xr-x
link
38.34
KB
-rwxr-xr-x
linux-boot-prober
1.54
KB
-rwxr-xr-x
linux-check-removal
3.99
KB
-rwxr-xr-x
linux-update-symlinks
6.17
KB
-rwxr-xr-x
linux-version
2.63
KB
-rwxr-xr-x
linux32
26.5
KB
-rwxr-xr-x
linux64
26.5
KB
-rwxr-xr-x
ln
74.38
KB
-rwxr-xr-x
lnstat
30.51
KB
-rwxr-xr-x
loadkeys
210.57
KB
-rwxr-xr-x
loadunimap
34.13
KB
-rwxr-xr-x
locale
57.56
KB
-rwxr-xr-x
locale-check
14.16
KB
-rwxr-xr-x
localectl
26.22
KB
-rwxr-xr-x
localedef
326.96
KB
-rwxr-xr-x
logger
50.82
KB
-rwxr-xr-x
login
55.77
KB
-rwxr-xr-x
loginctl
58.34
KB
-rwxr-xr-x
logname
38.34
KB
-rwxr-xr-x
logresolve
14.16
KB
-rwxr-xr-x
look
14.38
KB
-rwxr-xr-x
lorder
2.82
KB
-rwxr-xr-x
lowntfs-3g
118.86
KB
-rwxr-xr-x
ls
138.81
KB
-rwxr-xr-x
lsattr
14.31
KB
-rwxr-xr-x
lsb_release
3.55
KB
-rwxr-xr-x
lsblk
130.23
KB
-rwxr-xr-x
lscpu
98.23
KB
-rwxr-xr-x
lshw
841.2
KB
-rwxr-xr-x
lsinitramfs
706
B
-rwxr-xr-x
lsipc
94.23
KB
-rwxr-xr-x
lslocks
38.55
KB
-rwxr-xr-x
lslogins
66.23
KB
-rwxr-xr-x
lsmem
66.23
KB
-rwxr-xr-x
lsmod
170.34
KB
-rwxr-xr-x
lsns
50.23
KB
-rwxr-xr-x
lsof
171.63
KB
-rwxr-xr-x
lspci
91.95
KB
-rwxr-xr-x
lspgpot
1.06
KB
-rwxr-xr-x
lsusb
242.51
KB
-rwxr-xr-x
ltrace
301.33
KB
-rwxr-xr-x
lz4
186.23
KB
-rwxr-xr-x
lz4c
186.23
KB
-rwxr-xr-x
lz4cat
186.23
KB
-rwxr-xr-x
lzcat
78.5
KB
-rwxr-xr-x
lzcmp
6.48
KB
-rwxr-xr-x
lzdiff
6.48
KB
-rwxr-xr-x
lzegrep
5.76
KB
-rwxr-xr-x
lzfgrep
5.76
KB
-rwxr-xr-x
lzgrep
5.76
KB
-rwxr-xr-x
lzless
1.76
KB
-rwxr-xr-x
lzma
78.5
KB
-rwxr-xr-x
lzmainfo
14.23
KB
-rwxr-xr-x
lzmore
2.11
KB
-rwxr-xr-x
mailmail3
388
B
-rwxr-xr-x
man
116.83
KB
-rwxr-xr-x
man-recode
26.9
KB
-rwxr-xr-x
mandb
139.09
KB
-rwxr-xr-x
manifest
1.9
KB
-rwxr-xr-x
manpath
38.7
KB
-rwxr-xr-x
mapscrn
26.13
KB
-rwxr-xr-x
mawk
158.74
KB
-rwxr-xr-x
mcookie
34.3
KB
-rwxr-xr-x
md5sum
46.37
KB
-rwxr-xr-x
md5sum.textutils
46.37
KB
-rwxr-xr-x
mdig
50.4
KB
-rwxr-xr-x
mesg
14.23
KB
-rwxr-xr-x
migrate-pubring-from-classic-g...
2.99
KB
-rwxr-xr-x
miniterm
34.28
KB
-rwxr-xr-x
mk_modmap
15.78
KB
-rwxr-xr-x
mkdir
86.34
KB
-rwxr-xr-x
mkfifo
66.34
KB
-rwxr-xr-x
mknod
70.34
KB
-rwxr-xr-x
mksquashfs
205.96
KB
-rwxr-xr-x
mktemp
46.34
KB
-rwxr-xr-x
mmcli
257.27
KB
-rwxr-xr-x
more
42.15
KB
-rwxr-xr-x
mount
54.23
KB
-rwsr-xr-x
mountpoint
14.23
KB
-rwxr-xr-x
mt
86.78
KB
-rwxr-xr-x
mt-gnu
86.78
KB
-rwxr-xr-x
mtr
80.25
KB
-rwxr-xr-x
mtr-packet
38.38
KB
-rwxr-xr-x
mv
146.38
KB
-rwxr-xr-x
my_print_defaults
6.29
MB
-rwxr-xr-x
myisam_ftdump
6.58
MB
-rwxr-xr-x
myisamchk
6.69
MB
-rwxr-xr-x
myisamlog
6.53
MB
-rwxr-xr-x
myisampack
6.6
MB
-rwxr-xr-x
mysql
7.33
MB
-rwxr-xr-x
mysql_config_editor
6.31
MB
-rwxr-xr-x
mysql_migrate_keyring
7.24
MB
-rwxr-xr-x
mysql_secure_installation
7.16
MB
-rwxr-xr-x
mysql_ssl_rsa_setup
6.33
MB
-rwxr-xr-x
mysql_tzinfo_to_sql
6.23
MB
-rwxr-xr-x
mysql_upgrade
7.26
MB
-rwxr-xr-x
mysqladmin
7.17
MB
-rwxr-xr-x
mysqlanalyze
7.18
MB
-rwxr-xr-x
mysqlbinlog
7.62
MB
-rwxr-xr-x
mysqlcheck
7.18
MB
-rwxr-xr-x
mysqld_multi
26.73
KB
-rwxr-xr-x
mysqld_safe
28.45
KB
-rwxr-xr-x
mysqldump
7.25
MB
-rwxr-xr-x
mysqldumpslow
7.54
KB
-rwxr-xr-x
mysqlimport
7.17
MB
-rwxr-xr-x
mysqloptimize
7.18
MB
-rwxr-xr-x
mysqlpump
7.6
MB
-rwxr-xr-x
mysqlrepair
7.18
MB
-rwxr-xr-x
mysqlreport
38.1
KB
-rwxr-xr-x
mysqlshow
7.17
MB
-rwxr-xr-x
mysqlslap
7.18
MB
-rwxr-xr-x
namei
34.23
KB
-rwxr-xr-x
nano
312.63
KB
-rwxr-xr-x
nawk
686.47
KB
-rwxr-xr-x
nc
42.64
KB
-rwxr-xr-x
nc.openbsd
42.64
KB
-rwxr-xr-x
ncal
36.95
KB
-rwxr-xr-x
neqn
913
B
-rwxr-xr-x
netcat
42.64
KB
-rwxr-xr-x
netkit-ftp
106.7
KB
-rwxr-xr-x
netstat
154.58
KB
-rwxr-xr-x
networkctl
74.23
KB
-rwxr-xr-x
networkd-dispatcher
19.71
KB
-rwxr-xr-x
newgrp
43.73
KB
-rwsr-xr-x
ngettext
42.23
KB
-rwxr-xr-x
nice
42.34
KB
-rwxr-xr-x
nisdomainname
26.23
KB
-rwxr-xr-x
nl
42.43
KB
-rwxr-xr-x
nohup
42.34
KB
-rwxr-xr-x
nproc
42.34
KB
-rwxr-xr-x
nroff
3.22
KB
-rwxr-xr-x
nsenter
34.43
KB
-rwxr-xr-x
nslookup
122.81
KB
-rwxr-xr-x
nstat
78.23
KB
-rwxr-xr-x
nsupdate
78.63
KB
-rwxr-xr-x
ntfs-3g
158.89
KB
-rwxr-xr-x
ntfs-3g.probe
14.23
KB
-rwxr-xr-x
ntfscat
34.26
KB
-rwxr-xr-x
ntfscluster
38.26
KB
-rwxr-xr-x
ntfscmp
38.26
KB
-rwxr-xr-x
ntfsdecrypt
50.27
KB
-rwxr-xr-x
ntfsfallocate
38.27
KB
-rwxr-xr-x
ntfsfix
46.27
KB
-rwxr-xr-x
ntfsinfo
58.27
KB
-rwxr-xr-x
ntfsls
35.34
KB
-rwxr-xr-x
ntfsmove
38.26
KB
-rwxr-xr-x
ntfsrecover
118.26
KB
-rwxr-xr-x
ntfssecaudit
94.75
KB
-rwxr-xr-x
ntfstruncate
42.19
KB
-rwxr-xr-x
ntfsusermap
38.18
KB
-rwxr-xr-x
ntfswipe
54.79
KB
-rwxr-xr-x
numfmt
66.4
KB
-rwxr-xr-x
od
70.37
KB
-rwxr-xr-x
oem-getlogs
8.37
KB
-rwxr-xr-x
on_ac_power
2.18
KB
-rwxr-xr-x
openssl
735.68
KB
-rwxr-xr-x
openvt
22.43
KB
-rwxr-xr-x
os-prober
4.44
KB
-rwxr-xr-x
pager
175.84
KB
-rwxr-xr-x
partx
118.23
KB
-rwxr-xr-x
passwd
66.61
KB
-rwsr-xr-x
paste
42.37
KB
-rwxr-xr-x
pastebinit
16.13
KB
-rwxr-xr-x
patch
190.52
KB
-rwxr-xr-x
pathchk
38.34
KB
-rwxr-xr-x
pbget
2.51
KB
-rwxr-xr-x
pbput
2.51
KB
-rwxr-xr-x
pbputs
2.51
KB
-rwxr-xr-x
pdb3
61.27
KB
-rwxr-xr-x
pdb3.8
61.27
KB
-rwxr-xr-x
peekfd
14.15
KB
-rwxr-xr-x
perl
3.32
MB
-rwxr-xr-x
perl5.30-x86_64-linux-gnu
14.3
KB
-rwxr-xr-x
perl5.30.0
3.32
MB
-rwxr-xr-x
perlbug
45.28
KB
-rwxr-xr-x
perldoc
125
B
-rwxr-xr-x
perlivp
10.61
KB
-rwxr-xr-x
perlthanks
45.28
KB
-rwxr-xr-x
perror
7.62
MB
-rwxr-xr-x
pftp
106.7
KB
-rwxr-xr-x
pgrep
30.24
KB
-rwxr-xr-x
phar
14.54
KB
-rwxr-xr-x
phar.phar
14.54
KB
-rwxr-xr-x
phar.phar7.4
14.54
KB
-rwxr-xr-x
phar7.4
14.54
KB
-rwxr-xr-x
php
4.56
MB
-rwxr-xr-x
php7.4
4.56
MB
-rwxr-xr-x
pic
216.34
KB
-rwxr-xr-x
pico
312.63
KB
-rwxr-xr-x
piconv
8.16
KB
-rwxr-xr-x
pidof
26.38
KB
-rwxr-xr-x
pinentry
66.64
KB
-rwxr-xr-x
pinentry-curses
66.64
KB
-rwxr-xr-x
ping
71.07
KB
-rwxr-xr-x
ping4
71.07
KB
-rwxr-xr-x
ping6
71.07
KB
-rwxr-xr-x
pinky
42.37
KB
-rwxr-xr-x
pkaction
18.3
KB
-rwxr-xr-x
pkcheck
22.38
KB
-rwxr-xr-x
pkcon
74.3
KB
-rwxr-xr-x
pkexec
30.3
KB
-rwsr-xr-x
pkill
30.24
KB
-rwxr-xr-x
pkmon
22.3
KB
-rwxr-xr-x
pkttyagent
18.3
KB
-rwxr-xr-x
pl2pm
4.43
KB
-rwxr-xr-x
pldd
22.37
KB
-rwxr-xr-x
plymouth
50.15
KB
-rwxr-xr-x
pmap
34.24
KB
-rwxr-xr-x
pod2html
4.04
KB
-rwxr-xr-x
pod2man
14.68
KB
-rwxr-xr-x
pod2text
10.55
KB
-rwxr-xr-x
pod2usage
3.86
KB
-rwxr-xr-x
podchecker
3.57
KB
-rwxr-xr-x
podselect
2.47
KB
-rwxr-xr-x
pollinate
8.54
KB
-rwxr-xr-x
pr
74.43
KB
-rwxr-xr-x
preconv
66.51
KB
-rwxr-xr-x
print
18.05
KB
-rwxr-xr-x
printenv
38.34
KB
-rwxr-xr-x
printerbanner
22.15
KB
-rwxr-xr-x
printf
58.34
KB
-rwxr-xr-x
prlimit
38.74
KB
-rwxr-xr-x
prove
13.33
KB
-rwxr-xr-x
prtstat
22.23
KB
-rwxr-xr-x
ps
134.46
KB
-rwxr-xr-x
psfaddtable
21.99
KB
-rwxr-xr-x
psfgettable
21.99
KB
-rwxr-xr-x
psfstriptable
21.99
KB
-rwxr-xr-x
psfxtable
21.99
KB
-rwxr-xr-x
pslog
14.15
KB
-rwxr-xr-x
pstree
35.16
KB
-rwxr-xr-x
pstree.x11
35.16
KB
-rwxr-xr-x
ptar
3.47
KB
-rwxr-xr-x
ptardiff
2.57
KB
-rwxr-xr-x
ptargrep
4.29
KB
-rwxr-xr-x
ptx
78.4
KB
-rwxr-xr-x
purge-old-kernels
1.12
KB
-rwxr-xr-x
pwd
42.34
KB
-rwxr-xr-x
pwdx
14.23
KB
-rwxr-xr-x
py3clean
7.63
KB
-rwxr-xr-x
py3compile
11.84
KB
-rwxr-xr-x
py3versions
11.44
KB
-rwxr-xr-x
pydoc3
79
B
-rwxr-xr-x
pydoc3.8
79
B
-rwxr-xr-x
pygettext3
21.03
KB
-rwxr-xr-x
pygettext3.8
21.03
KB
-rwxr-xr-x
pyhtmlizer3
392
B
-rwxr-xr-x
pyjwt3
372
B
-rwxr-xr-x
python3
5.24
MB
-rwxr-xr-x
python3.8
5.24
MB
-rwxr-xr-x
rbash
1.13
MB
-rwxr-xr-x
rcp
114.3
KB
-rwxr-xr-x
rdma
130.23
KB
-rwxr-xr-x
readlink
50.34
KB
-rwxr-xr-x
realpath
50.37
KB
-rwxr-xr-x
red
89
B
-rwxr-xr-x
rename.ul
22.23
KB
-rwxr-xr-x
renice
14.23
KB
-rwxr-xr-x
rescan-scsi-bus.sh
38.15
KB
-rwxr-xr-x
reset
30.31
KB
-rwxr-xr-x
resizecons
22.13
KB
-rwxr-xr-x
resizepart
62.23
KB
-rwxr-xr-x
resolvectl
126.38
KB
-rwxr-xr-x
rev
14.23
KB
-rwxr-xr-x
rgrep
30
B
-rwxr-xr-x
rlogin
774.95
KB
-rwxr-xr-x
rm
70.37
KB
-rwxr-xr-x
rmdir
46.34
KB
-rwxr-xr-x
rnano
312.63
KB
-rwxr-xr-x
rotatelogs
26.23
KB
-rwxr-xr-x
routef
208
B
-rwxr-xr-x
routel
1.62
KB
-rwxr-xr-x
rpcinfo
34.46
KB
-rwxr-xr-x
rrsync
7.07
KB
-rwxr-xr-x
rsh
774.95
KB
-rwxr-xr-x
rsync
500.77
KB
-rwxr-xr-x
rtstat
30.51
KB
-rwxr-xr-x
run-mailcap
18.05
KB
-rwxr-xr-x
run-one
3.51
KB
-rwxr-xr-x
run-one-constantly
3.51
KB
-rwxr-xr-x
run-one-until-failure
3.51
KB
-rwxr-xr-x
run-one-until-success
3.51
KB
-rwxr-xr-x
run-parts
26.51
KB
-rwxr-xr-x
run-this-one
3.51
KB
-rwxr-xr-x
runcon
38.34
KB
-rwxr-xr-x
rview
2.78
MB
-rwxr-xr-x
rvim
2.78
MB
-rwxr-xr-x
savelog
10.24
KB
-rwxr-xr-x
sbattach
58.48
KB
-rwxr-xr-x
sbkeysync
66.7
KB
-rwxr-xr-x
sbsiglist
58.55
KB
-rwxr-xr-x
sbsign
58.55
KB
-rwxr-xr-x
sbvarsign
66.61
KB
-rwxr-xr-x
sbverify
62.48
KB
-rwxr-xr-x
scp
114.3
KB
-rwxr-xr-x
screen
463.16
KB
-rwxr-xr-x
screendump
13.99
KB
-rwxr-xr-x
script
54.23
KB
-rwxr-xr-x
scriptreplay
30.23
KB
-rwxr-xr-x
scsi_logging_level
8.38
KB
-rwxr-xr-x
scsi_mandat
3.52
KB
-rwxr-xr-x
scsi_readcap
1.3
KB
-rwxr-xr-x
scsi_ready
1.09
KB
-rwxr-xr-x
scsi_satl
3.77
KB
-rwxr-xr-x
scsi_start
1.25
KB
-rwxr-xr-x
scsi_stop
1.44
KB
-rwxr-xr-x
scsi_temperature
936
B
-rwxr-xr-x
sdiff
50.09
KB
-rwxr-xr-x
sed
118.45
KB
-rwxr-xr-x
see
18.05
KB
-rwxr-xr-x
select-editor
2.38
KB
-rwxr-xr-x
sensible-browser
1.2
KB
-rwxr-xr-x
sensible-editor
1.14
KB
-rwxr-xr-x
sensible-pager
452
B
-rwxr-xr-x
seq
50.34
KB
-rwxr-xr-x
setarch
26.5
KB
-rwxr-xr-x
setfont
46.13
KB
-rwxr-xr-x
setkeycodes
14.07
KB
-rwxr-xr-x
setleds
14.05
KB
-rwxr-xr-x
setlogcons
14.07
KB
-rwxr-xr-x
setmetamode
14.1
KB
-rwxr-xr-x
setpci
30.23
KB
-rwxr-xr-x
setpriv
46.23
KB
-rwxr-xr-x
setsid
14.23
KB
-rwxr-xr-x
setterm
46.23
KB
-rwxr-xr-x
setupcon
38.31
KB
-rwxr-xr-x
sftp
166.51
KB
-rwxr-xr-x
sg
43.73
KB
-rwsr-xr-x
sg_bg_ctl
14.35
KB
-rwxr-xr-x
sg_compare_and_write
22.76
KB
-rwxr-xr-x
sg_copy_results
23.15
KB
-rwxr-xr-x
sg_dd
50.17
KB
-rwxr-xr-x
sg_decode_sense
22.6
KB
-rwxr-xr-x
sg_emc_trespass
14.15
KB
-rwxr-xr-x
sg_format
35.13
KB
-rwxr-xr-x
sg_get_config
35.24
KB
-rwxr-xr-x
sg_get_lba_status
18.73
KB
-rwxr-xr-x
sg_ident
14.45
KB
-rwxr-xr-x
sg_inq
123.49
KB
-rwxr-xr-x
sg_logs
150.87
KB
-rwxr-xr-x
sg_luns
22.63
KB
-rwxr-xr-x
sg_map
18.15
KB
-rwxr-xr-x
sg_map26
26.55
KB
-rwxr-xr-x
sg_modes
45.62
KB
-rwxr-xr-x
sg_opcodes
34.85
KB
-rwxr-xr-x
sg_persist
35.93
KB
-rwxr-xr-x
sg_prevent
14.35
KB
-rwxr-xr-x
sg_raw
30.66
KB
-rwxr-xr-x
sg_rbuf
22.57
KB
-rwxr-xr-x
sg_rdac
18.16
KB
-rwxr-xr-x
sg_read
26.16
KB
-rwxr-xr-x
sg_read_attr
36.48
KB
-rwxr-xr-x
sg_read_block_limits
14.38
KB
-rwxr-xr-x
sg_read_buffer
26.82
KB
-rwxr-xr-x
sg_read_long
14.54
KB
-rwxr-xr-x
sg_readcap
22.63
KB
-rwxr-xr-x
sg_reassign
14.51
KB
-rwxr-xr-x
sg_referrals
14.51
KB
-rwxr-xr-x
sg_rep_zones
26.59
KB
-rwxr-xr-x
sg_requests
14.57
KB
-rwxr-xr-x
sg_reset
14.51
KB
-rwxr-xr-x
sg_reset_wp
14.45
KB
-rwxr-xr-x
sg_rmsn
14.35
KB
-rwxr-xr-x
sg_rtpg
14.45
KB
-rwxr-xr-x
sg_safte
22.54
KB
-rwxr-xr-x
sg_sanitize
26.85
KB
-rwxr-xr-x
sg_sat_identify
22.57
KB
-rwxr-xr-x
sg_sat_phy_event
18.85
KB
-rwxr-xr-x
sg_sat_read_gplog
18.57
KB
-rwxr-xr-x
sg_sat_set_features
18.54
KB
-rwxr-xr-x
sg_scan
18.16
KB
-rwxr-xr-x
sg_seek
18.73
KB
-rwxr-xr-x
sg_senddiag
27.04
KB
-rwxr-xr-x
sg_ses
119.77
KB
-rwxr-xr-x
sg_ses_microcode
31.23
KB
-rwxr-xr-x
sg_start
18.7
KB
-rwxr-xr-x
sg_stpg
22.57
KB
-rwxr-xr-x
sg_stream_ctl
22.54
KB
-rwxr-xr-x
sg_sync
14.51
KB
-rwxr-xr-x
sg_test_rwbuf
14.45
KB
-rwxr-xr-x
sg_timestamp
18.68
KB
-rwxr-xr-x
sg_turs
14.51
KB
-rwxr-xr-x
sg_unmap
22.6
KB
-rwxr-xr-x
sg_verify
18.73
KB
-rwxr-xr-x
sg_vpd
114.18
KB
-rwxr-xr-x
sg_wr_mode
22.57
KB
-rwxr-xr-x
sg_write_buffer
27.1
KB
-rwxr-xr-x
sg_write_long
14.6
KB
-rwxr-xr-x
sg_write_same
26.76
KB
-rwxr-xr-x
sg_write_verify
22.63
KB
-rwxr-xr-x
sg_write_x
55.45
KB
-rwxr-xr-x
sg_xcopy
42.16
KB
-rwxr-xr-x
sg_zone
14.65
KB
-rwxr-xr-x
sginfo
71.85
KB
-rwxr-xr-x
sgm_dd
34.16
KB
-rwxr-xr-x
sgp_dd
42.16
KB
-rwxr-xr-x
sh
126.77
KB
-rwxr-xr-x
sha1sum
50.37
KB
-rwxr-xr-x
sha224sum
58.37
KB
-rwxr-xr-x
sha256sum
58.37
KB
-rwxr-xr-x
sha384sum
66.37
KB
-rwxr-xr-x
sha512sum
66.37
KB
-rwxr-xr-x
shasum
9.74
KB
-rwxr-xr-x
showconsolefont
18.07
KB
-rwxr-xr-x
showkey
18.07
KB
-rwxr-xr-x
shred
62.37
KB
-rwxr-xr-x
shuf
58.34
KB
-rwxr-xr-x
skill
30.23
KB
-rwxr-xr-x
slabtop
22.23
KB
-rwxr-xr-x
sleep
38.34
KB
-rwxr-xr-x
slogin
774.95
KB
-rwxr-xr-x
snap
16.3
MB
-rwxr-xr-x
snapctl
6.26
MB
-rwxr-xr-x
snapfuse
46.29
KB
-rwxr-xr-x
snice
30.23
KB
-rwxr-xr-x
soelim
46.51
KB
-rwxr-xr-x
sort
114.63
KB
-rwxr-xr-x
sos
596
B
-rwxr-xr-x
sos-collector
1.04
KB
-rwxr-xr-x
sosreport
1.03
KB
-rwxr-xr-x
splain
18.7
KB
-rwxr-xr-x
split
58.77
KB
-rwxr-xr-x
splitfont
13.99
KB
-rwxr-xr-x
ss
164.84
KB
-rwxr-xr-x
ssh
774.95
KB
-rwxr-xr-x
ssh-add
362.28
KB
-rwxr-xr-x
ssh-agent
342.29
KB
-rwxr-sr-x
ssh-argv0
1.42
KB
-rwxr-xr-x
ssh-copy-id
10.41
KB
-rwxr-xr-x
ssh-import-id
409
B
-rwxr-xr-x
ssh-import-id-gh
785
B
-rwxr-xr-x
ssh-import-id-lp
785
B
-rwxr-xr-x
ssh-keygen
466.3
KB
-rwxr-xr-x
ssh-keyscan
454.3
KB
-rwxr-xr-x
stat
86.37
KB
-rwxr-xr-x
static-sh
2.07
MB
-rwxr-xr-x
stdbuf
50.34
KB
-rwxr-xr-x
strace
1.51
MB
-rwxr-xr-x
strace-log-merge
1.78
KB
-rwxr-xr-x
stty
82.37
KB
-rwxr-xr-x
su
66.23
KB
-rwsr-xr-x
sudo
162.16
KB
-rwsr-xr-x
sudoedit
162.16
KB
-rwsr-xr-x
sudoreplay
63
KB
-rwxr-xr-x
sum
46.34
KB
-rwxr-xr-x
symcryptrun
123.03
KB
-rwxr-xr-x
sync
38.34
KB
-rwxr-xr-x
systemctl
973.23
KB
-rwxr-xr-x
systemd
1.55
MB
-rwxr-xr-x
systemd-analyze
1.51
MB
-rwxr-xr-x
systemd-ask-password
14.34
KB
-rwxr-xr-x
systemd-cat
18.23
KB
-rwxr-xr-x
systemd-cgls
22.33
KB
-rwxr-xr-x
systemd-cgtop
38.24
KB
-rwxr-xr-x
systemd-delta
26.22
KB
-rwxr-xr-x
systemd-detect-virt
18.22
KB
-rwxr-xr-x
systemd-escape
22.22
KB
-rwxr-xr-x
systemd-hwdb
106.52
KB
-rwxr-xr-x
systemd-id128
22.22
KB
-rwxr-xr-x
systemd-inhibit
22.24
KB
-rwxr-xr-x
systemd-machine-id-setup
26.32
KB
-rwxr-xr-x
systemd-mount
50.45
KB
-rwxr-xr-x
systemd-notify
18.23
KB
-rwxr-xr-x
systemd-path
18.22
KB
-rwxr-xr-x
systemd-resolve
126.38
KB
-rwxr-xr-x
systemd-run
58.42
KB
-rwxr-xr-x
systemd-socket-activate
26.22
KB
-rwxr-xr-x
systemd-stdio-bridge
22.23
KB
-rwxr-xr-x
systemd-sysusers
54.52
KB
-rwxr-xr-x
systemd-tmpfiles
86.41
KB
-rwxr-xr-x
systemd-tty-ask-password-agent
30.22
KB
-rwxr-xr-x
systemd-umount
50.45
KB
-rwxr-xr-x
tabs
18.3
KB
-rwxr-xr-x
tac
42.34
KB
-rwxr-xr-x
tail
70.4
KB
-rwxr-xr-x
tar
437.61
KB
-rwxr-xr-x
taskset
34.23
KB
-rwxr-xr-x
tbl
138.51
KB
-rwxr-xr-x
tee
42.37
KB
-rwxr-xr-x
telnet
112.67
KB
-rwxr-xr-x
telnet.netkit
112.67
KB
-rwxr-xr-x
tempfile
14.02
KB
-rwxr-xr-x
test
54.34
KB
-rwxr-xr-x
tic
90.41
KB
-rwxr-xr-x
time
14.38
KB
-rwxr-xr-x
timedatectl
46.22
KB
-rwxr-xr-x
timeout
42.77
KB
-rwxr-xr-x
tkconch3
386
B
-rwxr-xr-x
tload
22.24
KB
-rwxr-xr-x
tmux
675.97
KB
-rwxr-xr-x
toe
22.3
KB
-rwxr-xr-x
top
126.05
KB
-rwxr-xr-x
touch
98.37
KB
-rwxr-xr-x
tput
26.34
KB
-rwxr-xr-x
tr
50.34
KB
-rwxr-xr-x
tracepath
18.15
KB
-rwxr-xr-x
traceroute6
26.15
KB
-rwxr-xr-x
traceroute6.iputils
26.15
KB
-rwxr-xr-x
trial3
382
B
-rwxr-xr-x
troff
735.91
KB
-rwxr-xr-x
true
38.34
KB
-rwxr-xr-x
truncate
42.34
KB
-rwxr-xr-x
tset
30.31
KB
-rwxr-xr-x
tsort
42.34
KB
-rwxr-xr-x
tty
38.34
KB
-rwxr-xr-x
twist3
382
B
-rwxr-xr-x
twistd3
384
B
-rwxr-xr-x
tzselect
15.02
KB
-rwxr-xr-x
ua
445
B
-rwxr-xr-x
ubuntu-advantage
445
B
-rwxr-xr-x
ubuntu-bug
2.5
KB
-rwxr-xr-x
ubuntu-core-launcher
151.45
KB
-rwsr-xr-x
ubuntu-distro-info
22.89
KB
-rwxr-xr-x
ubuntu-security-status
23.2
KB
-rwxr-xr-x
ucf
39.73
KB
-rwxr-xr-x
ucfq
18.91
KB
-rwxr-xr-x
ucfr
10.47
KB
-rwxr-xr-x
udevadm
931.2
KB
-rwxr-xr-x
udisksctl
58.38
KB
-rwxr-xr-x
ul
18.16
KB
-rwxr-xr-x
ulockmgr_server
18.15
KB
-rwxr-xr-x
umount
38.23
KB
-rwsr-xr-x
uname
38.37
KB
-rwxr-xr-x
unattended-upgrade
96.99
KB
-rwxr-xr-x
unattended-upgrades
96.99
KB
-rwxr-xr-x
uncompress
2.29
KB
-rwxr-xr-x
unexpand
42.37
KB
-rwxr-xr-x
unicode_start
2.7
KB
-rwxr-xr-x
unicode_stop
530
B
-rwxr-xr-x
uniq
50.37
KB
-rwxr-xr-x
unlink
38.34
KB
-rwxr-xr-x
unlz4
186.23
KB
-rwxr-xr-x
unlzma
78.5
KB
-rwxr-xr-x
unmkinitramfs
3.59
KB
-rwxr-xr-x
unshare
42.43
KB
-rwxr-xr-x
unsquashfs
112.12
KB
-rwxr-xr-x
unxz
78.5
KB
-rwxr-xr-x
unzip
182.29
KB
-rwxr-xr-x
unzipsfx
82.27
KB
-rwxr-xr-x
update-alternatives
54.41
KB
-rwxr-xr-x
update-mime-database
58.37
KB
-rwxr-xr-x
upower
22.15
KB
-rwxr-xr-x
uptime
14.23
KB
-rwxr-xr-x
usb-devices
4
KB
-rwxr-xr-x
usbhid-dump
30.38
KB
-rwxr-xr-x
usbreset
14.3
KB
-rwxr-xr-x
users
38.34
KB
-rwxr-xr-x
utmpdump
30.23
KB
-rwxr-xr-x
uuidgen
14.23
KB
-rwxr-xr-x
uuidparse
38.23
KB
-rwxr-xr-x
vcs-run
6.75
KB
-rwxr-xr-x
vdir
138.81
KB
-rwxr-xr-x
vi
2.78
MB
-rwxr-xr-x
view
2.78
MB
-rwxr-xr-x
vigpg
2.58
KB
-rwxr-xr-x
vim
2.78
MB
-rwxr-xr-x
vim.basic
2.78
MB
-rwxr-xr-x
vim.tiny
1.29
MB
-rwxr-xr-x
vimdiff
2.78
MB
-rwxr-xr-x
vimtutor
2.07
KB
-rwxr-xr-x
vm-support
10.37
KB
-rwxr-xr-x
vmhgfs-fuse
54.8
KB
-rwxr-xr-x
vmstat
38.25
KB
-rwxr-xr-x
vmtoolsd
74.56
KB
-rwxr-xr-x
vmware-alias-import
70.53
KB
-rwxr-xr-x
vmware-checkvm
14.38
KB
-rwxr-xr-x
vmware-hgfsclient
14.38
KB
-rwxr-xr-x
vmware-namespace-cmd
22.3
KB
-rwxr-xr-x
vmware-rpctool
30.3
KB
-rwxr-xr-x
vmware-toolbox-cmd
58.59
KB
-rwxr-xr-x
vmware-vgauth-cmd
18.3
KB
-rwxr-xr-x
vmware-vmblock-fuse
22.72
KB
-rwxr-xr-x
vmware-xferlogs
56.4
KB
-rwxr-xr-x
volname
14.15
KB
-rwxr-xr-x
w
22.23
KB
-rwxr-xr-x
w.procps
22.23
KB
-rwxr-xr-x
wall
34.23
KB
-rwxr-xr-x
watch
26.57
KB
-rwxr-xr-x
watchgnupg
18.3
KB
-rwxr-xr-x
wc
46.34
KB
-rwxr-xr-x
wdctl
34.23
KB
-rwxr-xr-x
wget
531.71
KB
-rwxr-xr-x
whatis
55.21
KB
-rwxr-xr-x
whereis
34.66
KB
-rwxr-xr-x
which
946
B
-rwxr-xr-x
whiptail
34.16
KB
-rwxr-xr-x
who
58.37
KB
-rwxr-xr-x
whoami
38.34
KB
-rwxr-xr-x
wifi-status
2.06
KB
-rwxr-xr-x
write
14.15
KB
-rwxr-sr-x
x86_64
26.5
KB
-rwxr-xr-x
xargs
74.37
KB
-rwxr-xr-x
xauth
54.97
KB
-rwxr-xr-x
xdg-user-dir
234
B
-rwxr-xr-x
xdg-user-dirs-update
26.07
KB
-rwxr-xr-x
xsubpp
5.04
KB
-rwxr-xr-x
xxd
18.27
KB
-rwxr-xr-x
xz
78.5
KB
-rwxr-xr-x
xzcat
78.5
KB
-rwxr-xr-x
xzcmp
6.48
KB
-rwxr-xr-x
xzdiff
6.48
KB
-rwxr-xr-x
xzegrep
5.76
KB
-rwxr-xr-x
xzfgrep
5.76
KB
-rwxr-xr-x
xzgrep
5.76
KB
-rwxr-xr-x
xzless
1.76
KB
-rwxr-xr-x
xzmore
2.11
KB
-rwxr-xr-x
yes
38.34
KB
-rwxr-xr-x
ypdomainname
26.23
KB
-rwxr-xr-x
zcat
1.94
KB
-rwxr-xr-x
zcmp
1.64
KB
-rwxr-xr-x
zdiff
5.76
KB
-rwxr-xr-x
zdump
26.21
KB
-rwxr-xr-x
zegrep
29
B
-rwxr-xr-x
zfgrep
29
B
-rwxr-xr-x
zforce
2.03
KB
-rwxr-xr-x
zgrep
7.91
KB
-rwxr-xr-x
zip
211.19
KB
-rwxr-xr-x
zipcloak
91.62
KB
-rwxr-xr-x
zipdetails
49.53
KB
-rwxr-xr-x
zipgrep
2.88
KB
-rwxr-xr-x
zipinfo
182.29
KB
-rwxr-xr-x
zipnote
87.39
KB
-rwxr-xr-x
zipsplit
91.39
KB
-rwxr-xr-x
zless
2.15
KB
-rwxr-xr-x
zmore
1.8
KB
-rwxr-xr-x
znew
4.47
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : dpkg-maintscript-helper
#!/bin/sh # # Copyright © 2007, 2011-2015 Guillem Jover <guillem@debian.org> # Copyright © 2010 Raphaël Hertzog <hertzog@debian.org> # Copyright © 2008 Joey Hess <joeyh@debian.org> # Copyright © 2005 Scott James Remnant (original implementation on www.dpkg.org) # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <https://www.gnu.org/licenses/>. # The conffile related functions are inspired by # https://wiki.debian.org/DpkgConffileHandling # This script is documented in dpkg-maintscript-helper(1) ## ## Functions to remove an obsolete conffile during upgrade ## rm_conffile() { local CONFFILE="$1" local LASTVERSION="$2" local PACKAGE="$3" if [ "$LASTVERSION" = "--" ]; then LASTVERSION="" PACKAGE="$DPKG_MAINTSCRIPT_PACKAGE${DPKG_MAINTSCRIPT_ARCH:+:$DPKG_MAINTSCRIPT_ARCH}" fi if [ "$PACKAGE" = "--" -o -z "$PACKAGE" ]; then PACKAGE="$DPKG_MAINTSCRIPT_PACKAGE${DPKG_MAINTSCRIPT_ARCH:+:$DPKG_MAINTSCRIPT_ARCH}" fi # Skip remaining parameters up to -- while [ "$1" != "--" -a $# -gt 0 ]; do shift; done [ $# -gt 0 ] || badusage "missing arguments after --" shift [ -n "$PACKAGE" ] || error "couldn't identify the package" [ -n "$1" ] || error "maintainer script parameters are missing" [ -n "$DPKG_MAINTSCRIPT_NAME" ] || \ error "environment variable DPKG_MAINTSCRIPT_NAME is required" [ -n "$DPKG_MAINTSCRIPT_PACKAGE" ] || \ error "environment variable DPKG_MAINTSCRIPT_PACKAGE is required" [ "${CONFFILE}" != "${CONFFILE#/}" ] || \ error "conffile '$CONFFILE' is not an absolute path" validate_optional_version "$LASTVERSION" debug "Executing $0 rm_conffile in $DPKG_MAINTSCRIPT_NAME" \ "of $DPKG_MAINTSCRIPT_PACKAGE" debug "CONFFILE=$CONFFILE PACKAGE=$PACKAGE" \ "LASTVERSION=$LASTVERSION ACTION=$1 PARAM=$2" case "$DPKG_MAINTSCRIPT_NAME" in preinst) if [ "$1" = "install" -o "$1" = "upgrade" ] && [ -n "$2" ] && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then prepare_rm_conffile "$CONFFILE" "$PACKAGE" fi ;; postinst) if [ "$1" = "configure" ] && [ -n "$2" ] && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then finish_rm_conffile "$CONFFILE" fi ;; postrm) if [ "$1" = "purge" ]; then rm -f "$CONFFILE.dpkg-bak" "$CONFFILE.dpkg-remove" \ "$CONFFILE.dpkg-backup" fi if [ "$1" = "abort-install" -o "$1" = "abort-upgrade" ] && [ -n "$2" ] && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then abort_rm_conffile "$CONFFILE" "$PACKAGE" fi ;; *) debug "$0 rm_conffile not required in $DPKG_MAINTSCRIPT_NAME" ;; esac } prepare_rm_conffile() { local CONFFILE="$1" local PACKAGE="$2" [ -e "$CONFFILE" ] || return 0 ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0 local md5sum old_md5sum md5sum="$(md5sum "$CONFFILE" | sed -e 's/ .*//')" old_md5sum="$(dpkg-query -W -f='${Conffiles}' "$PACKAGE" | \ sed -n -e "\\'^ $CONFFILE ' { s/ obsolete$//; s/.* //; p }")" if [ "$md5sum" != "$old_md5sum" ]; then mv -f "$CONFFILE" "$CONFFILE.dpkg-backup" else mv -f "$CONFFILE" "$CONFFILE.dpkg-remove" fi } finish_rm_conffile() { local CONFFILE="$1" if [ -e "$CONFFILE.dpkg-backup" ]; then echo "Obsolete conffile $CONFFILE has been modified by you." echo "Saving as $CONFFILE.dpkg-bak ..." mv -f "$CONFFILE.dpkg-backup" "$CONFFILE.dpkg-bak" fi if [ -e "$CONFFILE.dpkg-remove" ]; then echo "Removing obsolete conffile $CONFFILE ..." rm -f "$CONFFILE.dpkg-remove" fi } abort_rm_conffile() { local CONFFILE="$1" local PACKAGE="$2" ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0 if [ -e "$CONFFILE.dpkg-remove" ]; then echo "Reinstalling $CONFFILE that was moved away" mv "$CONFFILE.dpkg-remove" "$CONFFILE" fi if [ -e "$CONFFILE.dpkg-backup" ]; then echo "Reinstalling $CONFFILE that was backed-up" mv "$CONFFILE.dpkg-backup" "$CONFFILE" fi } ## ## Functions to rename a conffile during upgrade ## mv_conffile() { local OLDCONFFILE="$1" local NEWCONFFILE="$2" local LASTVERSION="$3" local PACKAGE="$4" if [ "$LASTVERSION" = "--" ]; then LASTVERSION="" PACKAGE="$DPKG_MAINTSCRIPT_PACKAGE${DPKG_MAINTSCRIPT_ARCH:+:$DPKG_MAINTSCRIPT_ARCH}" fi if [ "$PACKAGE" = "--" -o -z "$PACKAGE" ]; then PACKAGE="$DPKG_MAINTSCRIPT_PACKAGE${DPKG_MAINTSCRIPT_ARCH:+:$DPKG_MAINTSCRIPT_ARCH}" fi # Skip remaining parameters up to -- while [ "$1" != "--" -a $# -gt 0 ]; do shift; done [ $# -gt 0 ] || badusage "missing arguments after --" shift [ -n "$PACKAGE" ] || error "couldn't identify the package" [ -n "$1" ] || error "maintainer script parameters are missing" [ -n "$DPKG_MAINTSCRIPT_NAME" ] || \ error "environment variable DPKG_MAINTSCRIPT_NAME is required" [ -n "$DPKG_MAINTSCRIPT_PACKAGE" ] || \ error "environment variable DPKG_MAINTSCRIPT_PACKAGE is required" [ "${OLDCONFFILE}" != "${OLDCONFFILE#/}" ] || \ error "old-conffile '$OLDCONFFILE' is not an absolute path" [ "${NEWCONFFILE}" != "${NEWCONFFILE#/}" ] || \ error "new-conffile '$NEWCONFFILE' is not an absolute path" validate_optional_version "$LASTVERSION" debug "Executing $0 mv_conffile in $DPKG_MAINTSCRIPT_NAME" \ "of $DPKG_MAINTSCRIPT_PACKAGE" debug "CONFFILE=$OLDCONFFILE -> $NEWCONFFILE PACKAGE=$PACKAGE" \ "LASTVERSION=$LASTVERSION ACTION=$1 PARAM=$2" case "$DPKG_MAINTSCRIPT_NAME" in preinst) if [ "$1" = "install" -o "$1" = "upgrade" ] && [ -n "$2" ] && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then prepare_mv_conffile "$OLDCONFFILE" "$PACKAGE" fi ;; postinst) if [ "$1" = "configure" ] && [ -n "$2" ] && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then finish_mv_conffile "$OLDCONFFILE" "$NEWCONFFILE" "$PACKAGE" fi ;; postrm) if [ "$1" = "abort-install" -o "$1" = "abort-upgrade" ] && [ -n "$2" ] && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then abort_mv_conffile "$OLDCONFFILE" "$PACKAGE" fi ;; *) debug "$0 mv_conffile not required in $DPKG_MAINTSCRIPT_NAME" ;; esac } prepare_mv_conffile() { local CONFFILE="$1" local PACKAGE="$2" [ -e "$CONFFILE" ] || return 0 ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0 local md5sum old_md5sum md5sum="$(md5sum "$CONFFILE" | sed -e 's/ .*//')" old_md5sum="$(dpkg-query -W -f='${Conffiles}' "$PACKAGE" | \ sed -n -e "\\'^ $CONFFILE ' { s/ obsolete$//; s/.* //; p }")" if [ "$md5sum" = "$old_md5sum" ]; then mv -f "$CONFFILE" "$CONFFILE.dpkg-remove" fi } finish_mv_conffile() { local OLDCONFFILE="$1" local NEWCONFFILE="$2" local PACKAGE="$3" rm -f "$OLDCONFFILE.dpkg-remove" [ -e "$OLDCONFFILE" ] || return 0 ensure_package_owns_file "$PACKAGE" "$OLDCONFFILE" || return 0 echo "Preserving user changes to $NEWCONFFILE (renamed from $OLDCONFFILE)..." if [ -e "$NEWCONFFILE" ]; then mv -f "$NEWCONFFILE" "$NEWCONFFILE.dpkg-new" fi mv -f "$OLDCONFFILE" "$NEWCONFFILE" } abort_mv_conffile() { local CONFFILE="$1" local PACKAGE="$2" ensure_package_owns_file "$PACKAGE" "$CONFFILE" || return 0 if [ -e "$CONFFILE.dpkg-remove" ]; then echo "Reinstalling $CONFFILE that was moved away" mv "$CONFFILE.dpkg-remove" "$CONFFILE" fi } ## ## Functions to replace a symlink with a directory ## symlink_to_dir() { local SYMLINK="$1" local SYMLINK_TARGET="$2" local LASTVERSION="$3" local PACKAGE="$4" if [ "$LASTVERSION" = "--" ]; then LASTVERSION="" PACKAGE="$DPKG_MAINTSCRIPT_PACKAGE${DPKG_MAINTSCRIPT_ARCH:+:$DPKG_MAINTSCRIPT_ARCH}" fi if [ "$PACKAGE" = "--" -o -z "$PACKAGE" ]; then PACKAGE="$DPKG_MAINTSCRIPT_PACKAGE${DPKG_MAINTSCRIPT_ARCH:+:$DPKG_MAINTSCRIPT_ARCH}" fi # Skip remaining parameters up to -- while [ "$1" != "--" -a $# -gt 0 ]; do shift; done [ $# -gt 0 ] || badusage "missing arguments after --" shift [ -n "$DPKG_MAINTSCRIPT_NAME" ] || \ error "environment variable DPKG_MAINTSCRIPT_NAME is required" [ -n "$DPKG_MAINTSCRIPT_PACKAGE" ] || \ error "environment variable DPKG_MAINTSCRIPT_PACKAGE is required" [ -n "$PACKAGE" ] || error "cannot identify the package" [ -n "$SYMLINK" ] || error "symlink parameter is missing" [ "${SYMLINK#/}" = "$SYMLINK" ] && \ error "symlink pathname is not an absolute path" [ "${SYMLINK%/}" = "$SYMLINK" ] || \ error "symlink pathname ends with a slash" [ -n "$SYMLINK_TARGET" ] || error "original symlink target is missing" [ -n "$1" ] || error "maintainer script parameters are missing" validate_optional_version "$LASTVERSION" debug "Executing $0 symlink_to_dir in $DPKG_MAINTSCRIPT_NAME" \ "of $DPKG_MAINTSCRIPT_PACKAGE" debug "SYMLINK=$SYMLINK -> $SYMLINK_TARGET PACKAGE=$PACKAGE" \ "LASTVERSION=$LASTVERSION ACTION=$1 PARAM=$2" case "$DPKG_MAINTSCRIPT_NAME" in preinst) if [ "$1" = "install" -o "$1" = "upgrade" ] && [ -n "$2" ] && [ -h "$SYMLINK" ] && symlink_match "$SYMLINK" "$SYMLINK_TARGET" && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then mv -f "$SYMLINK" "${SYMLINK}.dpkg-backup" fi ;; postinst) # We cannot bail depending on the version, as here we only # know what was the last configured version, and we might # have been unpacked, then upgraded with an unpack and thus # never been configured before. if [ "$1" = "configure" ] && [ -h "${SYMLINK}.dpkg-backup" ] && symlink_match "${SYMLINK}.dpkg-backup" "$SYMLINK_TARGET" then rm -f "${SYMLINK}.dpkg-backup" fi ;; postrm) if [ "$1" = "purge" ] && [ -h "${SYMLINK}.dpkg-backup" ]; then rm -f "${SYMLINK}.dpkg-backup" fi if [ "$1" = "abort-install" -o "$1" = "abort-upgrade" ] && [ -n "$2" ] && [ ! -e "$SYMLINK" ] && [ -h "${SYMLINK}.dpkg-backup" ] && symlink_match "${SYMLINK}.dpkg-backup" "$SYMLINK_TARGET" && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then echo "Restoring backup of $SYMLINK ..." mv "${SYMLINK}.dpkg-backup" "$SYMLINK" fi ;; *) debug "$0 symlink_to_dir not required in $DPKG_MAINTSCRIPT_NAME" ;; esac } ## ## Functions to replace a directory with a symlink ## dir_to_symlink() { local PATHNAME="${1%/}" local SYMLINK_TARGET="$2" local LASTVERSION="$3" local PACKAGE="$4" if [ "$LASTVERSION" = "--" ]; then LASTVERSION="" PACKAGE="$DPKG_MAINTSCRIPT_PACKAGE${DPKG_MAINTSCRIPT_ARCH:+:$DPKG_MAINTSCRIPT_ARCH}" fi if [ "$PACKAGE" = "--" -o -z "$PACKAGE" ]; then PACKAGE="$DPKG_MAINTSCRIPT_PACKAGE${DPKG_MAINTSCRIPT_ARCH:+:$DPKG_MAINTSCRIPT_ARCH}" fi # Skip remaining parameters up to -- while [ "$1" != "--" -a $# -gt 0 ]; do shift; done [ $# -gt 0 ] || badusage "missing arguments after --" shift [ -n "$DPKG_MAINTSCRIPT_NAME" ] || \ error "environment variable DPKG_MAINTSCRIPT_NAME is required" [ -n "$DPKG_MAINTSCRIPT_PACKAGE" ] || \ error "environment variable DPKG_MAINTSCRIPT_PACKAGE is required" [ -n "$PACKAGE" ] || error "cannot identify the package" [ -n "$PATHNAME" ] || error "directory parameter is missing" [ "${PATHNAME#/}" = "$PATHNAME" ] && \ error "directory parameter is not an absolute path" [ -n "$SYMLINK_TARGET" ] || error "new symlink target is missing" [ -n "$1" ] || error "maintainer script parameters are missing" validate_optional_version "$LASTVERSION" debug "Executing $0 dir_to_symlink in $DPKG_MAINTSCRIPT_NAME" \ "of $DPKG_MAINTSCRIPT_PACKAGE" debug "PATHNAME=$PATHNAME SYMLINK_TARGET=$SYMLINK_TARGET" \ "PACKAGE=$PACKAGE LASTVERSION=$LASTVERSION ACTION=$1 PARAM=$2" case "$DPKG_MAINTSCRIPT_NAME" in preinst) if [ "$1" = "install" -o "$1" = "upgrade" ] && [ -n "$2" ] && [ ! -h "$PATHNAME" ] && [ -d "$PATHNAME" ] && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then prepare_dir_to_symlink "$PACKAGE" "$PATHNAME" fi ;; postinst) # We cannot bail depending on the version, as here we only # know what was the last configured version, and we might # have been unpacked, then upgraded with an unpack and thus # never been configured before. if [ "$1" = "configure" ] && [ -d "${PATHNAME}.dpkg-backup" ] && [ ! -h "$PATHNAME" ] && [ -d "$PATHNAME" ] && [ -f "$PATHNAME/.dpkg-staging-dir" ]; then finish_dir_to_symlink "$PATHNAME" "$SYMLINK_TARGET" fi ;; postrm) if [ "$1" = "purge" ] && [ -d "${PATHNAME}.dpkg-backup" ]; then rm -rf "${PATHNAME}.dpkg-backup" fi if [ "$1" = "abort-install" -o "$1" = "abort-upgrade" ] && [ -n "$2" ] && [ -d "${PATHNAME}.dpkg-backup" ] && [ \( ! -h "$PATHNAME" -a -d "$PATHNAME" -a \ -f "$PATHNAME/.dpkg-staging-dir" \) -o \ \( -h "$PATHNAME" -a \ \( "$(readlink "$PATHNAME")" = "$SYMLINK_TARGET" -o \ "$(readlink -f "$PATHNAME")" = "$SYMLINK_TARGET" \) \) ] && dpkg --compare-versions -- "$2" le-nl "$LASTVERSION"; then abort_dir_to_symlink "$PATHNAME" fi ;; *) debug "$0 dir_to_symlink not required in $DPKG_MAINTSCRIPT_NAME" ;; esac } prepare_dir_to_symlink() { local PACKAGE="$1" local PATHNAME="$2" local LINE # If there are conffiles we should not perform the switch. dpkg-query -W -f='${Conffiles}\n' "$PACKAGE" | while read -r LINE; do case "$LINE" in "$PATHNAME"/*) error "directory '$PATHNAME' contains conffiles," \ "cannot switch to symlink" ;; esac done # If there are locally created files or files owned by another package # we should not perform the switch. export DPKG_MAINTSCRIPT_HELPER_INTERNAL_API="$version" find "$PATHNAME" -print0 | \ xargs -0 -n1 "$0" _internal_pkg_must_own_file "$PACKAGE" || \ error "directory '$PATHNAME' contains files not owned by" \ "package $PACKAGE, cannot switch to symlink" unset DPKG_MAINTSCRIPT_HELPER_INTERNAL_API # At this point, we know that the directory either contains no files, # or only non-conffiles owned by the package. # # To do the switch we cannot simply replace it with the final symlink # just yet, because dpkg needs to remove any file present in the old # package that have disappeared in the new one, and we do not want to # lose files resolving to the same pathname in the symlink target. # # We cannot replace the directory with a staging symlink either, # because dpkg will update symlinks to their new target. # # So we need to create a staging directory, to avoid removing files # from other packages, and to trap any new files in the directory # to move them to their correct place later on. mv -f "$PATHNAME" "${PATHNAME}.dpkg-backup" mkdir "$PATHNAME" # Mark it as a staging directory, so that we can track things. touch "$PATHNAME/.dpkg-staging-dir" } finish_dir_to_symlink() { local PATHNAME="$1" local SYMLINK_TARGET="$2" # Move the contents of the staging directory to the symlink target, # as those are all new files installed between this package being # unpacked and configured. local ABS_SYMLINK_TARGET if [ "${SYMLINK_TARGET#/}" = "$SYMLINK_TARGET" ]; then ABS_SYMLINK_TARGET="$(dirname "$PATHNAME")/$SYMLINK_TARGET" else ABS_SYMLINK_TARGET="$SYMLINK_TARGET" fi rm "$PATHNAME/.dpkg-staging-dir" find "$PATHNAME" -mindepth 1 -maxdepth 1 -print0 | \ xargs -0 -i% mv -f "%" "$ABS_SYMLINK_TARGET/" # Remove the staging directory. rmdir "$PATHNAME" # Do the actual switch. ln -s "$SYMLINK_TARGET" "$PATHNAME" # We are left behind the old files owned by this package in the backup # directory, just remove it. rm -rf "${PATHNAME}.dpkg-backup" } abort_dir_to_symlink() { local PATHNAME="$1" echo "Restoring backup of $PATHNAME ..." if [ -h "$PATHNAME" ]; then rm -f "$PATHNAME" else # The staging directory must be empty, as no other package # should have been unpacked in between. rm -f "$PATHNAME/.dpkg-staging-dir" rmdir "$PATHNAME" fi mv "${PATHNAME}.dpkg-backup" "$PATHNAME" } # Common functions validate_optional_version() { local VERSION="$1" if [ -z "$VERSION" ]; then return fi if ! VERSIONCHECK=$(dpkg --validate-version -- "$VERSION" 2>&1); then error "$VERSIONCHECK" fi } ensure_package_owns_file() { local PACKAGE="$1" local FILE="$2" if ! dpkg-query -L "$PACKAGE" | grep -F -q -x "$FILE"; then debug "File '$FILE' not owned by package " \ "'$PACKAGE', skipping $command" return 1 fi return 0 } internal_pkg_must_own_file() { local PACKAGE="$1" local FILE="$2" if [ "$DPKG_MAINTSCRIPT_HELPER_INTERNAL_API" != "$version" ]; then error "internal API used by external command" fi if ! ensure_package_owns_file "$PACKAGE" "$FILE"; then error "file '$FILE' not owned by package '$PACKAGE'" fi return 0 } symlink_match() { local SYMLINK="$1" local SYMLINK_TARGET="$2" [ "$(readlink "$SYMLINK")" = "$SYMLINK_TARGET" ] || \ [ "$(readlink -f "$SYMLINK")" = "$SYMLINK_TARGET" ] } # Standard ANSI colors and attributes. COLOR_NORMAL='' COLOR_RESET='[0m' COLOR_BOLD='[1m' COLOR_BLACK='[30m' COLOR_RED='[31m' COLOR_GREEN='[32m' COLOR_YELLOW='[33m' COLOR_BLUE='[34m' COLOR_MAGENTA='[35m' COLOR_CYAN='[36m' COLOR_WHITE='[37m' COLOR_BOLD_BLACK='[1;30m' COLOR_BOLD_RED='[1;31m' COLOR_BOLD_GREEN='[1;32m' COLOR_BOLD_YELLOW='[1;33m' COLOR_BOLD_BLUE='[1;34m' COLOR_BOLD_MAGENTA='[1;35m' COLOR_BOLD_CYAN='[1;36m' COLOR_BOLD_WHITE='[1;37m' setup_colors() { : "${DPKG_COLORS=auto}" case "$DPKG_COLORS" in auto) if [ -t 1 ]; then USE_COLORS=yes else USE_COLORS=no fi ;; always) USE_COLORS=yes ;; *) USE_COLORS=no ;; esac if [ $USE_COLORS = yes ]; then COLOR_PROG="$COLOR_BOLD" COLOR_INFO="$COLOR_GREEN" COLOR_NOTICE="$COLOR_YELLOW" COLOR_WARN="$COLOR_BOLD_YELLOW" COLOR_ERROR="$COLOR_BOLD_RED" else COLOR_RESET="" fi FMT_PROG="$COLOR_PROG$PROGNAME$COLOR_RESET" } debug() { if [ -n "$DPKG_DEBUG" ]; then echo "DEBUG: $FMT_PROG: $*" >&2 fi } error() { echo "$FMT_PROG: ${COLOR_ERROR}error${COLOR_RESET}: $*" >&2 exit 1 } warning() { echo "$FMT_PROG: ${COLOR_WARN}warning${COLOR_RESET}: $*" >&2 } usage() { cat <<END Usage: $PROGNAME <command> <parameter>... -- <maintainer-script-parameter>... Commands: supports <command> Returns 0 (success) if the given command is supported, 1 otherwise. rm_conffile <conffile> [<last-version> [<package>]] Remove obsolete conffile. Must be called in preinst, postinst and postrm. mv_conffile <old-conf> <new-conf> [<last-version> [<package>]] Rename a conffile. Must be called in preinst, postinst and postrm. symlink_to_dir <pathname> <old-symlink-target> [<last-version> [<package>]] Replace a symlink with a directory. Must be called in preinst, postinst and postrm. dir_to_symlink <pathname> <new-symlink-target> [<last-version> [<package>]] Replace a directory with a symlink. Must be called in preinst, postinst and postrm. help Display this usage information. END } badusage() { echo "$FMT_PROG: ${COLOR_ERROR}error${COLOR_RESET}: $1" >&2 echo >&2 echo "Use '$PROGNAME help' for program usage information." >&2 exit 1 } # Main code set -e PROGNAME=$(basename "$0") version="1.19.7" setup_colors command="$1" [ $# -gt 0 ] || badusage "missing command" shift case "$command" in supports) case "$1" in rm_conffile|mv_conffile|symlink_to_dir|dir_to_symlink) code=0 ;; *) code=1 ;; esac if [ -z "$DPKG_MAINTSCRIPT_NAME" ]; then warning "environment variable DPKG_MAINTSCRIPT_NAME missing" code=1 fi if [ -z "$DPKG_MAINTSCRIPT_PACKAGE" ]; then warning "environment variable DPKG_MAINTSCRIPT_PACKAGE missing" code=1 fi exit $code ;; rm_conffile) rm_conffile "$@" ;; mv_conffile) mv_conffile "$@" ;; symlink_to_dir) symlink_to_dir "$@" ;; dir_to_symlink) dir_to_symlink "$@" ;; _internal_pkg_must_own_file) # This is an internal command, must not be used outside this program. internal_pkg_must_own_file "$@" ;; --help|help|-?) usage ;; --version) cat <<-END Debian $PROGNAME version $version. This is free software; see the GNU General Public License version 2 or later for copying conditions. There is NO warranty. END ;; *) badusage "command $command is unknown Hint: upgrading dpkg to a newer version might help." esac exit 0
Close