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.147.73.117
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 /
sbin /
[ HOME SHELL ]
Name
Size
Permission
Action
ModemManager
1.83
MB
-rwxr-xr-x
a2disconf
15.89
KB
-rwxr-xr-x
a2dismod
15.89
KB
-rwxr-xr-x
a2dissite
15.89
KB
-rwxr-xr-x
a2enconf
15.89
KB
-rwxr-xr-x
a2enmod
15.89
KB
-rwxr-xr-x
a2ensite
15.89
KB
-rwxr-xr-x
a2query
9.64
KB
-rwxr-xr-x
aa-remove-unknown
3
KB
-rwxr-xr-x
aa-status
8.63
KB
-rwxr-xr-x
aa-teardown
139
B
-rwxr-xr-x
accessdb
14.38
KB
-rwxr-xr-x
add-shell
860
B
-rwxr-xr-x
addgnupghome
3
KB
-rwxr-xr-x
addgroup
36.9
KB
-rwxr-xr-x
adduser
36.9
KB
-rwxr-xr-x
agetty
67.38
KB
-rwxr-xr-x
apache2
692.07
KB
-rwxr-xr-x
apache2ctl
7.06
KB
-rwxr-xr-x
apachectl
7.06
KB
-rwxr-xr-x
apparmor_parser
1.46
MB
-rwxr-xr-x
apparmor_status
8.63
KB
-rwxr-xr-x
applygnupgdefaults
2.17
KB
-rwxr-xr-x
arp
69.3
KB
-rwxr-xr-x
arpd
78.27
KB
-rwxr-xr-x
arptables
215.32
KB
-rwxr-xr-x
arptables-nft
215.32
KB
-rwxr-xr-x
arptables-nft-restore
215.32
KB
-rwxr-xr-x
arptables-nft-save
215.32
KB
-rwxr-xr-x
arptables-restore
215.32
KB
-rwxr-xr-x
arptables-save
215.32
KB
-rwxr-xr-x
atd
30.01
KB
-rwxr-xr-x
badblocks
34.32
KB
-rwxr-xr-x
bcache-super-show
14.15
KB
-rwxr-xr-x
biosdecode
27.2
KB
-rwxr-xr-x
blkdeactivate
14.49
KB
-rwxr-xr-x
blkdiscard
34.23
KB
-rwxr-xr-x
blkid
118.26
KB
-rwxr-xr-x
blkmapd
34.15
KB
-rwxr-xr-x
blkzone
70.23
KB
-rwxr-xr-x
blockdev
66.23
KB
-rwxr-xr-x
bridge
102.3
KB
-rwxr-xr-x
cache_check
1.29
MB
-rwxr-xr-x
cache_dump
1.29
MB
-rwxr-xr-x
cache_metadata_size
1.29
MB
-rwxr-xr-x
cache_repair
1.29
MB
-rwxr-xr-x
cache_restore
1.29
MB
-rwxr-xr-x
cache_writeback
1.29
MB
-rwxr-xr-x
capsh
30.3
KB
-rwxr-xr-x
cfdisk
102.59
KB
-rwxr-xr-x
cgdisk
206.48
KB
-rwxr-xr-x
chcpu
46.23
KB
-rwxr-xr-x
check_forensic
952
B
-rwxr-xr-x
chgpasswd
66.2
KB
-rwxr-xr-x
chmem
62.23
KB
-rwxr-xr-x
chpasswd
58.2
KB
-rwxr-xr-x
chroot
42.34
KB
-rwxr-xr-x
cpgr
60.34
KB
-rwxr-xr-x
cppw
60.34
KB
-rwxr-xr-x
crda
9.99
KB
-rwxr-xr-x
cron
54.63
KB
-rwxr-xr-x
cryptdisks_start
1.51
KB
-rwxr-xr-x
cryptdisks_stop
844
B
-rwxr-xr-x
cryptsetup
135.54
KB
-rwxr-xr-x
cryptsetup-reencrypt
105.32
KB
-rwxr-xr-x
ctrlaltdel
38.23
KB
-rwxr-xr-x
debugfs
225.8
KB
-rwxr-xr-x
delgroup
16.11
KB
-rwxr-xr-x
deluser
16.11
KB
-rwxr-xr-x
depmod
170.34
KB
-rwxr-xr-x
devlink
150.47
KB
-rwxr-xr-x
dhclient
508.98
KB
-rwxr-xr-x
dhclient-script
15.92
KB
-rwxr-xr-x
dmeventd
50.23
KB
-rwxr-xr-x
dmidecode
119
KB
-rwxr-xr-x
dmsetup
171.02
KB
-rwxr-xr-x
dmstats
171.02
KB
-rwxr-xr-x
dosfsck
58.08
KB
-rwxr-xr-x
dosfslabel
54.08
KB
-rwxr-xr-x
dpkg-preconfigure
3.58
KB
-rwxr-xr-x
dpkg-reconfigure
4.34
KB
-rwxr-xr-x
dumpe2fs
30.38
KB
-rwxr-xr-x
e2freefrag
18.38
KB
-rwxr-xr-x
e2fsck
327.21
KB
-rwxr-xr-x
e2image
42.38
KB
-rwxr-xr-x
e2label
106.55
KB
-rwxr-xr-x
e2mmpstatus
30.38
KB
-rwxr-xr-x
e2scrub
7.13
KB
-rwxr-xr-x
e2scrub_all
5.27
KB
-rwxr-xr-x
e2undo
22.38
KB
-rwxr-xr-x
e4crypt
30.38
KB
-rwxr-xr-x
e4defrag
34.3
KB
-rwxr-xr-x
ebtables
215.32
KB
-rwxr-xr-x
ebtables-nft
215.32
KB
-rwxr-xr-x
ebtables-nft-restore
215.32
KB
-rwxr-xr-x
ebtables-nft-save
215.32
KB
-rwxr-xr-x
ebtables-restore
215.32
KB
-rwxr-xr-x
ebtables-save
215.32
KB
-rwxr-xr-x
era_check
1.29
MB
-rwxr-xr-x
era_dump
1.29
MB
-rwxr-xr-x
era_invalidate
1.29
MB
-rwxr-xr-x
era_restore
1.29
MB
-rwxr-xr-x
ethtool
375.05
KB
-rwxr-xr-x
faillock
14.15
KB
-rwxr-xr-x
fatlabel
54.08
KB
-rwxr-xr-x
fdformat
34.23
KB
-rwxr-xr-x
fdisk
150.27
KB
-rwxr-xr-x
filefrag
18.33
KB
-rwxr-xr-x
findfs
14.23
KB
-rwxr-xr-x
fixparts
74.48
KB
-rwxr-xr-x
fsadm
23.54
KB
-rwxr-xr-x
fsck
54.27
KB
-rwxr-xr-x
fsck.btrfs
1.16
KB
-rwxr-xr-x
fsck.cramfs
38.26
KB
-rwxr-xr-x
fsck.ext2
327.21
KB
-rwxr-xr-x
fsck.ext3
327.21
KB
-rwxr-xr-x
fsck.ext4
327.21
KB
-rwxr-xr-x
fsck.fat
58.08
KB
-rwxr-xr-x
fsck.minix
122.25
KB
-rwxr-xr-x
fsck.msdos
58.08
KB
-rwxr-xr-x
fsck.vfat
58.08
KB
-rwxr-xr-x
fsck.xfs
1.92
KB
-rwxr-xr-x
fsfreeze
14.23
KB
-rwxr-xr-x
fstab-decode
14.3
KB
-rwxr-xr-x
fstrim
70.23
KB
-rwxr-xr-x
gdisk
210.48
KB
-rwxr-xr-x
genl
82.29
KB
-rwxr-xr-x
getcap
14.3
KB
-rwxr-xr-x
getpcaps
14.3
KB
-rwxr-xr-x
getty
67.38
KB
-rwxr-xr-x
groupadd
90.95
KB
-rwxr-xr-x
groupdel
86.77
KB
-rwxr-xr-x
groupmems
62.24
KB
-rwxr-xr-x
groupmod
94.86
KB
-rwxr-xr-x
grpck
62.18
KB
-rwxr-xr-x
grpconv
58.05
KB
-rwxr-xr-x
grpunconv
58.05
KB
-rwxr-xr-x
grub-bios-setup
909.34
KB
-rwxr-xr-x
grub-install
1.11
MB
-rwxr-xr-x
grub-macbless
897.03
KB
-rwxr-xr-x
grub-mkconfig
8.54
KB
-rwxr-xr-x
grub-mkdevicemap
215.7
KB
-rwxr-xr-x
grub-probe
905.28
KB
-rwxr-xr-x
grub-reboot
4.73
KB
-rwxr-xr-x
grub-set-default
3.47
KB
-rwxr-xr-x
halt
973.23
KB
-rwxr-xr-x
hdparm
140.34
KB
-rwxr-xr-x
httxt2dbm
14.15
KB
-rwxr-xr-x
hwclock
102.35
KB
-rwxr-xr-x
iconvconfig
30.4
KB
-rwxr-xr-x
ifconfig
85.11
KB
-rwxr-xr-x
init
1.55
MB
-rwxr-xr-x
insmod
170.34
KB
-rwxr-xr-x
installkernel
2.58
KB
-rwxr-xr-x
integritysetup
60.23
KB
-rwxr-xr-x
invoke-rc.d
16.64
KB
-rwxr-xr-x
ip
597.62
KB
-rwxr-xr-x
ip6tables
96.97
KB
-rwxr-xr-x
ip6tables-apply
6.89
KB
-rwxr-xr-x
ip6tables-legacy
96.97
KB
-rwxr-xr-x
ip6tables-legacy-restore
96.97
KB
-rwxr-xr-x
ip6tables-legacy-save
96.97
KB
-rwxr-xr-x
ip6tables-nft
215.32
KB
-rwxr-xr-x
ip6tables-nft-restore
215.32
KB
-rwxr-xr-x
ip6tables-nft-save
215.32
KB
-rwxr-xr-x
ip6tables-restore
96.97
KB
-rwxr-xr-x
ip6tables-restore-translate
215.32
KB
-rwxr-xr-x
ip6tables-save
96.97
KB
-rwxr-xr-x
ip6tables-translate
215.32
KB
-rwxr-xr-x
ipmaddr
17.99
KB
-rwxr-xr-x
iptables
96.97
KB
-rwxr-xr-x
iptables-apply
6.89
KB
-rwxr-xr-x
iptables-legacy
96.97
KB
-rwxr-xr-x
iptables-legacy-restore
96.97
KB
-rwxr-xr-x
iptables-legacy-save
96.97
KB
-rwxr-xr-x
iptables-nft
215.32
KB
-rwxr-xr-x
iptables-nft-restore
215.32
KB
-rwxr-xr-x
iptables-nft-save
215.32
KB
-rwxr-xr-x
iptables-restore
96.97
KB
-rwxr-xr-x
iptables-restore-translate
215.32
KB
-rwxr-xr-x
iptables-save
96.97
KB
-rwxr-xr-x
iptables-translate
215.32
KB
-rwxr-xr-x
iptunnel
25.99
KB
-rwxr-xr-x
irqbalance
62.92
KB
-rwxr-xr-x
irqbalance-ui
34.38
KB
-rwxr-xr-x
iscsi-iname
18.15
KB
-rwxr-xr-x
iscsi_discovery
5.16
KB
-rwxr-xr-x
iscsiadm
394.1
KB
-rwxr-xr-x
iscsid
410.3
KB
-rwxr-xr-x
iscsistart
366.29
KB
-rwxr-xr-x
isosize
30.23
KB
-rwxr-xr-x
iucode-tool
54.18
KB
-rwxr-xr-x
iucode_tool
54.18
KB
-rwxr-xr-x
iw
262.82
KB
-rwxr-xr-x
kbdrate
13.99
KB
-rwxr-xr-x
key.dns_resolver
30.39
KB
-rwxr-xr-x
killall5
26.38
KB
-rwxr-xr-x
kpartx
46.16
KB
-rwxr-xr-x
ldattach
34.23
KB
-rwxr-xr-x
ldconfig
387
B
-rwxr-xr-x
ldconfig.real
1
MB
-rwxr-xr-x
locale-gen
4.3
KB
-rwxr-xr-x
logrotate
82.09
KB
-rwxr-xr-x
logsave
14.16
KB
-rwxr-xr-x
losetup
110.34
KB
-rwxr-xr-x
lsmod
170.34
KB
-rwxr-xr-x
luksformat
3.32
KB
-rwxr-xr-x
lvchange
2.73
MB
-rwxr-xr-x
lvconvert
2.73
MB
-rwxr-xr-x
lvcreate
2.73
MB
-rwxr-xr-x
lvdisplay
2.73
MB
-rwxr-xr-x
lvextend
2.73
MB
-rwxr-xr-x
lvm
2.73
MB
-rwxr-xr-x
lvmconfig
2.73
MB
-rwxr-xr-x
lvmdiskscan
2.73
MB
-rwxr-xr-x
lvmdump
10.07
KB
-rwxr-xr-x
lvmpolld
232.05
KB
-rwxr-xr-x
lvmsadc
2.73
MB
-rwxr-xr-x
lvmsar
2.73
MB
-rwxr-xr-x
lvreduce
2.73
MB
-rwxr-xr-x
lvremove
2.73
MB
-rwxr-xr-x
lvrename
2.73
MB
-rwxr-xr-x
lvresize
2.73
MB
-rwxr-xr-x
lvs
2.73
MB
-rwxr-xr-x
lvscan
2.73
MB
-rwxr-xr-x
make-bcache
22.23
KB
-rwxr-xr-x
make-ssl-cert
3.78
KB
-rwxr-xr-x
mdadm
589.65
KB
-rwxr-xr-x
mdmon
325.49
KB
-rwxr-xr-x
mii-tool
26.46
KB
-rwxr-xr-x
mkdosfs
34.5
KB
-rwxr-xr-x
mke2fs
134.62
KB
-rwxr-xr-x
mkfs
14.23
KB
-rwxr-xr-x
mkfs.bfs
34.23
KB
-rwxr-xr-x
mkfs.btrfs
451.53
KB
-rwxr-xr-x
mkfs.cramfs
42.16
KB
-rwxr-xr-x
mkfs.ext2
134.62
KB
-rwxr-xr-x
mkfs.ext3
134.62
KB
-rwxr-xr-x
mkfs.ext4
134.62
KB
-rwxr-xr-x
mkfs.fat
34.5
KB
-rwxr-xr-x
mkfs.minix
106.23
KB
-rwxr-xr-x
mkfs.msdos
34.5
KB
-rwxr-xr-x
mkfs.ntfs
86.27
KB
-rwxr-xr-x
mkfs.vfat
34.5
KB
-rwxr-xr-x
mkfs.xfs
366.24
KB
-rwxr-xr-x
mkhomedir_helper
22.17
KB
-rwxr-xr-x
mkinitramfs
11.55
KB
-rwxr-xr-x
mklost+found
14.3
KB
-rwxr-xr-x
mkntfs
86.27
KB
-rwxr-xr-x
mkswap
106.23
KB
-rwxr-xr-x
modinfo
170.34
KB
-rwxr-xr-x
modprobe
170.34
KB
-rwxr-xr-x
mount.fuse
14.15
KB
-rwxr-xr-x
mount.lowntfs-3g
118.86
KB
-rwxr-xr-x
mount.nfs
118.84
KB
-rwsr-xr-x
mount.nfs4
118.84
KB
-rwsr-xr-x
mount.ntfs
158.89
KB
-rwxr-xr-x
mount.ntfs-3g
158.89
KB
-rwxr-xr-x
mount.vmhgfs
46.48
KB
-rwxr-xr-x
mountstats
35.02
KB
-rwxr-xr-x
mpathpersist
31.05
KB
-rwxr-xr-x
multipath
34.15
KB
-rwxr-xr-x
multipathd
126.2
KB
-rwxr-xr-x
mysqld
64.23
MB
-rwxr-xr-x
nameif
18.14
KB
-rwxr-xr-x
netplan
798
B
-rwxr-xr-x
newusers
98.8
KB
-rwxr-xr-x
nfnl_osf
18.3
KB
-rwxr-xr-x
nfsidmap
22.26
KB
-rwxr-xr-x
nfsiostat
23.35
KB
-rwxr-xr-x
nfsstat
37.12
KB
-rwxr-xr-x
nologin
14.3
KB
-rwxr-xr-x
ntfsclone
58.27
KB
-rwxr-xr-x
ntfscp
42.26
KB
-rwxr-xr-x
ntfslabel
34.26
KB
-rwxr-xr-x
ntfsresize
78.27
KB
-rwxr-xr-x
ntfsundelete
54.26
KB
-rwxr-xr-x
on_ac_power
2.18
KB
-rwxr-xr-x
osd_login
2.53
KB
-rwxr-xr-x
overlayroot-chroot
2.45
KB
-rwxr-xr-x
ownership
14.45
KB
-rwxr-xr-x
pam-auth-update
19.86
KB
-rwxr-xr-x
pam_extrausers_chkpwd
42.16
KB
-rwxr-sr-x
pam_extrausers_update
42.16
KB
-rwxr-xr-x
pam_getenv
2.82
KB
-rwxr-xr-x
pam_tally
14.16
KB
-rwxr-xr-x
pam_tally2
18.16
KB
-rwxr-xr-x
pam_timestamp_check
14.15
KB
-rwxr-xr-x
parted
86.25
KB
-rwxr-xr-x
partprobe
14.23
KB
-rwxr-xr-x
pdata_tools
1.29
MB
-rwxr-xr-x
phpdismod
7.11
KB
-rwxr-xr-x
phpenmod
7.11
KB
-rwxr-xr-x
phpquery
6.24
KB
-rwxr-xr-x
pivot_root
14.23
KB
-rwxr-xr-x
plipconfig
14
KB
-rwxr-xr-x
plymouthd
146.41
KB
-rwxr-xr-x
popcon-largest-unused
543
B
-rwxr-xr-x
popularity-contest
5.23
KB
-rwxr-xr-x
poweroff
973.23
KB
-rwxr-xr-x
pvchange
2.73
MB
-rwxr-xr-x
pvck
2.73
MB
-rwxr-xr-x
pvcreate
2.73
MB
-rwxr-xr-x
pvdisplay
2.73
MB
-rwxr-xr-x
pvmove
2.73
MB
-rwxr-xr-x
pvremove
2.73
MB
-rwxr-xr-x
pvresize
2.73
MB
-rwxr-xr-x
pvs
2.73
MB
-rwxr-xr-x
pvscan
2.73
MB
-rwxr-xr-x
pwck
58.17
KB
-rwxr-xr-x
pwconv
54.05
KB
-rwxr-xr-x
pwunconv
54.05
KB
-rwxr-xr-x
rarp
40.45
KB
-rwxr-xr-x
raw
14.23
KB
-rwxr-xr-x
readprofile
22.26
KB
-rwxr-xr-x
reboot
973.23
KB
-rwxr-xr-x
regdbdump
9.99
KB
-rwxr-xr-x
remove-shell
904
B
-rwxr-xr-x
request-key
26.39
KB
-rwxr-xr-x
resize2fs
66.38
KB
-rwxr-xr-x
rmmod
170.34
KB
-rwxr-xr-x
rmt
58.55
KB
-rwxr-xr-x
rmt-tar
58.55
KB
-rwxr-xr-x
route
64.3
KB
-rwxr-xr-x
rpc.gssd
82.49
KB
-rwxr-xr-x
rpc.idmapd
42.67
KB
-rwxr-xr-x
rpc.statd
86.93
KB
-rwxr-xr-x
rpc.svcgssd
42.41
KB
-rwxr-xr-x
rpcbind
58.55
KB
-rwxr-xr-x
rpcdebug
18.23
KB
-rwxr-xr-x
rpcinfo
34.46
KB
-rwxr-xr-x
rsyslogd
710.2
KB
-rwxr-xr-x
rtacct
48.29
KB
-rwxr-xr-x
rtcwake
46.23
KB
-rwxr-xr-x
rtmon
78.24
KB
-rwxr-xr-x
runlevel
973.23
KB
-rwxr-xr-x
runuser
66.23
KB
-rwxr-xr-x
service
9.04
KB
-rwxr-xr-x
setcap
14.3
KB
-rwxr-xr-x
setvesablank
14.07
KB
-rwxr-xr-x
setvtrgb
14.13
KB
-rwxr-xr-x
sfdisk
138.23
KB
-rwxr-xr-x
sgdisk
190.48
KB
-rwxr-xr-x
shadowconfig
885
B
-rwxr-xr-x
showmount
22.41
KB
-rwxr-xr-x
shutdown
973.23
KB
-rwxr-xr-x
slattach
44.45
KB
-rwxr-xr-x
sm-notify
58.43
KB
-rwxr-xr-x
split-logfile
2.36
KB
-rwxr-xr-x
sshd
863.79
KB
-rwxr-xr-x
start-statd
838
B
-rwxr-xr-x
start-stop-daemon
47.32
KB
-rwxr-xr-x
sulogin
50.23
KB
-rwxr-xr-x
swaplabel
18.23
KB
-rwxr-xr-x
swapoff
22.23
KB
-rwxr-xr-x
swapon
50.23
KB
-rwxr-xr-x
switch_root
14.23
KB
-rwxr-xr-x
sysctl
30.23
KB
-rwxr-xr-x
tarcat
936
B
-rwxr-xr-x
tc
529.45
KB
-rwxr-xr-x
tcpdump
1019.76
KB
-rwxr-xr-x
telinit
973.23
KB
-rwxr-xr-x
thermald
670.6
KB
-rwxr-xr-x
thin_check
1.29
MB
-rwxr-xr-x
thin_delta
1.29
MB
-rwxr-xr-x
thin_dump
1.29
MB
-rwxr-xr-x
thin_ls
1.29
MB
-rwxr-xr-x
thin_metadata_size
1.29
MB
-rwxr-xr-x
thin_repair
1.29
MB
-rwxr-xr-x
thin_restore
1.29
MB
-rwxr-xr-x
thin_rmap
1.29
MB
-rwxr-xr-x
thin_trim
1.29
MB
-rwxr-xr-x
tipc
126.23
KB
-rwxr-xr-x
tune2fs
106.55
KB
-rwxr-xr-x
tzconfig
106
B
-rwxr-xr-x
ufw
4.82
KB
-rwxr-xr-x
umount.nfs
118.84
KB
-rwsr-xr-x
umount.nfs4
118.84
KB
-rwsr-xr-x
umount.udisks2
14.3
KB
-rwxr-xr-x
unix_chkpwd
42.15
KB
-rwxr-sr-x
unix_update
42.15
KB
-rwxr-xr-x
update-ca-certificates
5.29
KB
-rwxr-xr-x
update-grub
64
B
-rwxr-xr-x
update-grub-gfxpayload
301
B
-rwxr-xr-x
update-grub2
64
B
-rwxr-xr-x
update-info-dir
1.66
KB
-rwxr-xr-x
update-initramfs
7.25
KB
-rwxr-xr-x
update-locale
2.99
KB
-rwxr-xr-x
update-mime
9.18
KB
-rwxr-xr-x
update-passwd
34.56
KB
-rwxr-xr-x
update-pciids
1.71
KB
-rwxr-xr-x
update-rc.d
16.76
KB
-rwxr-xr-x
upgrade-from-grub-legacy
1.49
KB
-rwxr-xr-x
usb_modeswitch
59.66
KB
-rwxr-xr-x
usb_modeswitch_dispatcher
54.32
KB
-rwxr-xr-x
usbmuxd
86.57
KB
-rwxr-xr-x
useradd
143.71
KB
-rwxr-xr-x
userdel
98.89
KB
-rwxr-xr-x
usermod
139.49
KB
-rwxr-xr-x
uuidd
42.3
KB
-rwxr-xr-x
validlocale
1.73
KB
-rwxr-xr-x
vcstime
13.99
KB
-rwxr-xr-x
veritysetup
51.82
KB
-rwxr-xr-x
vgcfgbackup
2.73
MB
-rwxr-xr-x
vgcfgrestore
2.73
MB
-rwxr-xr-x
vgchange
2.73
MB
-rwxr-xr-x
vgck
2.73
MB
-rwxr-xr-x
vgconvert
2.73
MB
-rwxr-xr-x
vgcreate
2.73
MB
-rwxr-xr-x
vgdisplay
2.73
MB
-rwxr-xr-x
vgexport
2.73
MB
-rwxr-xr-x
vgextend
2.73
MB
-rwxr-xr-x
vgimport
2.73
MB
-rwxr-xr-x
vgimportclone
2.73
MB
-rwxr-xr-x
vgmerge
2.73
MB
-rwxr-xr-x
vgmknodes
2.73
MB
-rwxr-xr-x
vgreduce
2.73
MB
-rwxr-xr-x
vgremove
2.73
MB
-rwxr-xr-x
vgrename
2.73
MB
-rwxr-xr-x
vgs
2.73
MB
-rwxr-xr-x
vgscan
2.73
MB
-rwxr-xr-x
vgsplit
2.73
MB
-rwxr-xr-x
vigr
68.55
KB
-rwxr-xr-x
vipw
68.55
KB
-rwxr-xr-x
visudo
218.2
KB
-rwxr-xr-x
vpddecode
18.58
KB
-rwxr-xr-x
wipefs
46.23
KB
-rwxr-xr-x
xfs_admin
1.38
KB
-rwxr-xr-x
xfs_bmap
695
B
-rwxr-xr-x
xfs_copy
90.28
KB
-rwxr-xr-x
xfs_db
620.09
KB
-rwxr-xr-x
xfs_estimate
14.01
KB
-rwxr-xr-x
xfs_freeze
800
B
-rwxr-xr-x
xfs_fsr
42.02
KB
-rwxr-xr-x
xfs_growfs
34.14
KB
-rwxr-xr-x
xfs_info
1.26
KB
-rwxr-xr-x
xfs_io
187.34
KB
-rwxr-xr-x
xfs_logprint
74.15
KB
-rwxr-xr-x
xfs_mdrestore
30.02
KB
-rwxr-xr-x
xfs_metadump
782
B
-rwxr-xr-x
xfs_mkfile
1.02
KB
-rwxr-xr-x
xfs_ncheck
685
B
-rwxr-xr-x
xfs_quota
86.01
KB
-rwxr-xr-x
xfs_repair
563.15
KB
-rwxr-xr-x
xfs_rtcp
17.99
KB
-rwxr-xr-x
xfs_scrub
102.11
KB
-rwxr-xr-x
xfs_scrub_all
5.86
KB
-rwxr-xr-x
xfs_spaceman
42.15
KB
-rwxr-xr-x
xtables-legacy-multi
96.97
KB
-rwxr-xr-x
xtables-monitor
215.32
KB
-rwxr-xr-x
xtables-nft-multi
215.32
KB
-rwxr-xr-x
zerofree
9.99
KB
-rwxr-xr-x
zic
62.29
KB
-rwxr-xr-x
zramctl
114.34
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : update-rc.d
#! /usr/bin/perl # vim: ft=perl # # update-rc.d Update the links in /etc/rc[0-9S].d/ # use strict; use warnings; # NB: All Perl modules used here must be in perl-base. Specifically, depending # on modules in perl-modules is not okay! See bug #716923 my $initd = "/etc/init.d"; my $etcd = "/etc/rc"; # Print usage message and die. sub usage { print STDERR "update-rc.d: error: @_\n" if ($#_ >= 0); print STDERR <<EOF; usage: update-rc.d [-f] <basename> remove update-rc.d [-f] <basename> defaults update-rc.d [-f] <basename> defaults-disabled update-rc.d <basename> disable|enable [S|2|3|4|5] -f: force The disable|enable API is not stable and might change in the future. EOF exit (1); } exit main(@ARGV); sub info { print STDOUT "update-rc.d: @_\n"; } sub warning { print STDERR "update-rc.d: warning: @_\n"; } sub error { print STDERR "update-rc.d: error: @_\n"; exit (1); } sub error_code { my $rc = shift; print STDERR "update-rc.d: error: @_\n"; exit ($rc); } sub make_path { my ($path) = @_; my @dirs = (); my @path = split /\//, $path; map { push @dirs, $_; mkdir join('/', @dirs), 0755; } @path; } # Given a script name, return any runlevels except 0 or 6 in which the # script is enabled. If that gives nothing and the script is not # explicitly disabled, return 6 if the script is disabled in runlevel # 0 or 6. sub script_runlevels { my ($scriptname) = @_; my @links=<"/etc/rc[S12345].d/S[0-9][0-9]$scriptname">; if (@links) { return map(substr($_, 7, 1), @links); } elsif (! <"/etc/rc[S12345].d/K[0-9][0-9]$scriptname">) { @links=<"/etc/rc[06].d/K[0-9][0-9]$scriptname">; return ("6") if (@links); } else { return ; } } # Map the sysvinit runlevel to that of openrc. sub openrc_rlconv { my %rl_table = ( "S" => "sysinit", "1" => "recovery", "2" => "default", "3" => "default", "4" => "default", "5" => "default", "6" => "off" ); my %seen; # return unique runlevels return grep !$seen{$_}++, map($rl_table{$_}, @_); } sub systemd_reload { if (-d "/run/systemd/system") { system("systemctl", "daemon-reload"); } } # Creates the necessary links to enable/disable a SysV init script (fallback if # no insserv/rc-update exists) sub make_sysv_links { my ($scriptname, $action) = @_; # for "remove" we cannot rely on the init script still being present, as # this gets called in postrm for purging. Just remove all symlinks. if ("remove" eq $action) { unlink($_) for glob("/etc/rc?.d/[SK][0-9][0-9]$scriptname"); return; } # if the service already has any links, do not touch them # numbers we don't care about, but enabled/disabled state we do return if glob("/etc/rc?.d/[SK][0-9][0-9]$scriptname"); # for "defaults", parse Default-{Start,Stop} and create these links my ($lsb_start_ref, $lsb_stop_ref) = parse_def_start_stop("/etc/init.d/$scriptname"); my $start = $action eq "defaults-disabled" ? "K" : "S"; foreach my $lvl (@$lsb_start_ref) { make_path("/etc/rc$lvl.d"); my $l = "/etc/rc$lvl.d/${start}01$scriptname"; symlink("../init.d/$scriptname", $l); } foreach my $lvl (@$lsb_stop_ref) { make_path("/etc/rc$lvl.d"); my $l = "/etc/rc$lvl.d/K01$scriptname"; symlink("../init.d/$scriptname", $l); } } # Creates the necessary links to enable/disable the service (equivalent of an # initscript) in systemd. sub make_systemd_links { my ($scriptname, $action) = @_; # If called by systemctl (via systemd-sysv-install), do nothing to avoid # an endless loop. if (defined($ENV{_SKIP_SYSTEMD_NATIVE}) && $ENV{_SKIP_SYSTEMD_NATIVE} == 1) { return; } # If systemctl is available, let's use that to create the symlinks. if (-x "/bin/systemctl") { # Set this env var to avoid loop in systemd-sysv-install. local $ENV{SYSTEMCTL_SKIP_SYSV} = 1; # Use --quiet to mimic the old update-rc.d behaviour. system("systemctl", "--quiet", "$action", "$scriptname"); return; } # In addition to the insserv call we also enable/disable the service # for systemd by creating the appropriate symlink in case there is a # native systemd service. In case systemd is not installed we do this # on our own instead of using systemctl. my $service_path; if (-f "/etc/systemd/system/$scriptname.service") { $service_path = "/etc/systemd/system/$scriptname.service"; } elsif (-f "/lib/systemd/system/$scriptname.service") { $service_path = "/lib/systemd/system/$scriptname.service"; } if (defined($service_path)) { my $changed_sth; open my $fh, '<', $service_path or error("unable to read $service_path"); while (<$fh>) { chomp; if (/^\s*WantedBy=(.+)$/i) { my $wants_dir = "/etc/systemd/system/$1.wants"; my $service_link = "$wants_dir/$scriptname.service"; if ("enable" eq $action) { make_path($wants_dir); symlink($service_path, $service_link); } else { unlink($service_link) if -e $service_link; } } } close($fh); } } sub create_sequence { my $force = (@_); my $insserv = "/usr/lib/insserv/insserv"; # Fallback for older insserv package versions [2014-04-16] $insserv = "/sbin/insserv" if ( -x "/sbin/insserv"); # If insserv is not configured it is not fully installed my $insserv_installed = -x $insserv && -e "/etc/insserv.conf"; my @opts; push(@opts, '-f') if $force; # Add force flag if initscripts is not installed # This enables inistcripts-less systems to not fail when a facility is missing unshift(@opts, '-f') unless is_initscripts_installed(); my $openrc_installed = -x "/sbin/openrc"; my $sysv_insserv ={}; $sysv_insserv->{remove} = sub { my ($scriptname) = @_; if ( -f "/etc/init.d/$scriptname" ) { return system($insserv, @opts, "-r", $scriptname) >> 8; } else { # insserv removes all dangling symlinks, no need to tell it # what to look for. my $rc = system($insserv, @opts) >> 8; error_code($rc, "insserv rejected the script header") if $rc; } }; $sysv_insserv->{defaults} = sub { my ($scriptname) = @_; if ( -f "/etc/init.d/$scriptname" ) { my $rc = system($insserv, @opts, $scriptname) >> 8; error_code($rc, "insserv rejected the script header") if $rc; } else { error("initscript does not exist: /etc/init.d/$scriptname"); } }; $sysv_insserv->{defaults_disabled} = sub { my ($scriptname) = @_; return if glob("/etc/rc?.d/[SK][0-9][0-9]$scriptname"); if ( -f "/etc/init.d/$scriptname" ) { my $rc = system($insserv, @opts, $scriptname) >> 8; error_code($rc, "insserv rejected the script header") if $rc; } else { error("initscript does not exist: /etc/init.d/$scriptname"); } sysv_toggle("disable", $scriptname); }; $sysv_insserv->{toggle} = sub { my ($action, $scriptname) = (shift, shift); sysv_toggle($action, $scriptname, @_); # Call insserv to resequence modified links my $rc = system($insserv, @opts, $scriptname) >> 8; error_code($rc, "insserv rejected the script header") if $rc; }; my $sysv_plain = {}; $sysv_plain->{remove} = sub { my ($scriptname) = @_; make_sysv_links($scriptname, "remove"); }; $sysv_plain->{defaults} = sub { my ($scriptname) = @_; make_sysv_links($scriptname, "defaults"); }; $sysv_plain->{defaults_disabled} = sub { my ($scriptname) = @_; make_sysv_links($scriptname, "defaults-disabled"); }; $sysv_plain->{toggle} = sub { my ($action, $scriptname) = (shift, shift); sysv_toggle($action, $scriptname, @_); }; my $systemd = {}; $systemd->{remove} = sub { systemd_reload; }; $systemd->{defaults} = sub { systemd_reload; }; $systemd->{defaults_disabled} = sub { systemd_reload; }; $systemd->{toggle} = sub { my ($action, $scriptname) = (shift, shift); make_systemd_links($scriptname, $action); systemd_reload; }; # Should we check exit codeS? my $openrc = {}; $openrc->{remove} = sub { my ($scriptname) = @_; system("rc-update", "-qqa", "delete", $scriptname); }; $openrc->{defaults} = sub { my ($scriptname) = @_; # OpenRC does not distinguish halt and reboot. They are handled # by /etc/init.d/transit instead. return if ("halt" eq $scriptname || "reboot" eq $scriptname); # no need to consider default disabled runlevels # because everything is disabled by openrc by default my @rls=script_runlevels($scriptname); if ( @rls ) { system("rc-update", "add", $scriptname, openrc_rlconv(@rls)); } }; $openrc->{defaults_disabled} = sub { # In openrc everything is disabled by default }; $openrc->{toggle} = sub { my ($action, $scriptname) = (shift, shift); my (@toggle_lvls, $start_lvls, $stop_lvls, @symlinks); my $lsb_header = lsb_header_for_script($scriptname); # Extra arguments to disable|enable action are runlevels. If none # given parse LSB info for Default-Start value. if ($#_ >= 0) { @toggle_lvls = @_; } else { ($start_lvls, $stop_lvls) = parse_def_start_stop($lsb_header); @toggle_lvls = @$start_lvls; if ($#toggle_lvls < 0) { error("$scriptname Default-Start contains no runlevels, aborting."); } } my %openrc_act = ( "disable" => "del", "enable" => "add" ); system("rc-update", $openrc_act{$action}, $scriptname, openrc_rlconv(@toggle_lvls)) }; my @sequence; if ($insserv_installed) { push @sequence, $sysv_insserv; } else { push @sequence, $sysv_plain; } # OpenRC has to be after sysv_{insserv,plain} because it depends on them to synchronize # states. if ($openrc_installed) { push @sequence, $openrc; } push @sequence, $systemd; return @sequence; } ## Dependency based sub main { my @args = @_; my $scriptname; my $action; my $force = 0; while($#args >= 0 && ($_ = $args[0]) =~ /^-/) { shift @args; if (/^-f$/) { $force = 1; next } if (/^-h|--help$/) { usage(); } usage("unknown option"); } usage("not enough arguments") if ($#args < 1); my @sequence = create_sequence($force); $scriptname = shift @args; $action = shift @args; if ("remove" eq $action) { foreach my $init (@sequence) { $init->{remove}->($scriptname); } } elsif ("defaults" eq $action || "start" eq $action || "stop" eq $action) { # All start/stop/defaults arguments are discarded so emit a # message if arguments have been given and are in conflict # with Default-Start/Default-Stop values of LSB comment. if ("start" eq $action || "stop" eq $action) { cmp_args_with_defaults($scriptname, $action, @args); } foreach my $init (@sequence) { $init->{defaults}->($scriptname); } } elsif ("defaults-disabled" eq $action) { foreach my $init (@sequence) { $init->{defaults_disabled}->($scriptname); } } elsif ("disable" eq $action || "enable" eq $action) { foreach my $init (@sequence) { $init->{toggle}->($action, $scriptname, @args); } } else { usage(); } } sub parse_def_start_stop { my $script = shift; my (%lsb, @def_start_lvls, @def_stop_lvls); open my $fh, '<', $script or error("unable to read $script"); while (<$fh>) { chomp; if (m/^### BEGIN INIT INFO\s*$/) { $lsb{'begin'}++; } elsif (m/^### END INIT INFO\s*$/) { $lsb{'end'}++; last; } elsif ($lsb{'begin'} and not $lsb{'end'}) { if (m/^# Default-Start:\s*(\S?.*)$/) { @def_start_lvls = split(' ', $1); } if (m/^# Default-Stop:\s*(\S?.*)$/) { @def_stop_lvls = split(' ', $1); } } } close($fh); return (\@def_start_lvls, \@def_stop_lvls); } sub lsb_header_for_script { my $name = shift; foreach my $file ("/etc/insserv/overrides/$name", "/etc/init.d/$name", "/usr/share/insserv/overrides/$name") { return $file if -s $file; } error("cannot find a LSB script for $name"); } sub cmp_args_with_defaults { my ($name, $act) = (shift, shift); my ($lsb_start_ref, $lsb_stop_ref, $arg_str, $lsb_str); my (@arg_start_lvls, @arg_stop_lvls, @lsb_start_lvls, @lsb_stop_lvls); ($lsb_start_ref, $lsb_stop_ref) = parse_def_start_stop("/etc/init.d/$name"); @lsb_start_lvls = @$lsb_start_ref; @lsb_stop_lvls = @$lsb_stop_ref; return if (!@lsb_start_lvls and !@lsb_stop_lvls); warning "start and stop actions are no longer supported; falling back to defaults"; my $start = $act eq 'start' ? 1 : 0; my $stop = $act eq 'stop' ? 1 : 0; # The legacy part of this program passes arguments starting with # "start|stop NN x y z ." but the insserv part gives argument list # starting with sequence number (ie. strips off leading "start|stop") # Start processing arguments immediately after the first seq number. my $argi = $_[0] eq $act ? 2 : 1; while (defined $_[$argi]) { my $arg = $_[$argi]; # Runlevels 0 and 6 are always stop runlevels if ($arg eq 0 or $arg eq 6) { $start = 0; $stop = 1; } elsif ($arg eq 'start') { $start = 1; $stop = 0; $argi++; next; } elsif ($arg eq 'stop') { $start = 0; $stop = 1; $argi++; next; } elsif ($arg eq '.') { next; } push(@arg_start_lvls, $arg) if $start; push(@arg_stop_lvls, $arg) if $stop; } continue { $argi++; } if ($#arg_start_lvls != $#lsb_start_lvls or join("\0", sort @arg_start_lvls) ne join("\0", sort @lsb_start_lvls)) { $arg_str = @arg_start_lvls ? "@arg_start_lvls" : "none"; $lsb_str = @lsb_start_lvls ? "@lsb_start_lvls" : "none"; warning "start runlevel arguments ($arg_str) do not match", "$name Default-Start values ($lsb_str)"; } if ($#arg_stop_lvls != $#lsb_stop_lvls or join("\0", sort @arg_stop_lvls) ne join("\0", sort @lsb_stop_lvls)) { $arg_str = @arg_stop_lvls ? "@arg_stop_lvls" : "none"; $lsb_str = @lsb_stop_lvls ? "@lsb_stop_lvls" : "none"; warning "stop runlevel arguments ($arg_str) do not match", "$name Default-Stop values ($lsb_str)"; } } sub sysv_toggle { my ($act, $name) = (shift, shift); my (@toggle_lvls, $start_lvls, $stop_lvls, @symlinks); my $lsb_header = lsb_header_for_script($name); # Extra arguments to disable|enable action are runlevels. If none # given parse LSB info for Default-Start value. if ($#_ >= 0) { @toggle_lvls = @_; } else { ($start_lvls, $stop_lvls) = parse_def_start_stop($lsb_header); @toggle_lvls = @$start_lvls; if ($#toggle_lvls < 0) { error("$name Default-Start contains no runlevels, aborting."); } } # Find symlinks in rc.d directories. Refuse to modify links in runlevels # not used for normal system start sequence. for my $lvl (@toggle_lvls) { if ($lvl !~ /^[S2345]$/) { warning("$act action will have no effect on runlevel $lvl"); next; } push(@symlinks, $_) for glob("/etc/rc$lvl.d/[SK][0-9][0-9]$name"); } if (!@symlinks) { error("no runlevel symlinks to modify, aborting!"); } # Toggle S/K bit of script symlink. for my $cur_lnk (@symlinks) { my $sk; my @new_lnk = split(//, $cur_lnk); if ("disable" eq $act) { $sk = rindex($cur_lnk, '/S') + 1; next if $sk < 1; $new_lnk[$sk] = 'K'; } else { $sk = rindex($cur_lnk, '/K') + 1; next if $sk < 1; $new_lnk[$sk] = 'S'; } rename($cur_lnk, join('', @new_lnk)) or error($!); } } # Try to determine if initscripts is installed sub is_initscripts_installed { # Check if mountkernfs is available. We cannot make inferences # using the running init system because we may be running in a # chroot return glob('/etc/rcS.d/S??mountkernfs.sh'); }
Close