OXIESEC PANEL
- Current Dir:
/
/
snap
/
core24
/
888
/
usr
/
sbin
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
03/18/2025 08:12:00 AM
rwxr-xr-x
📄
aa-load
38.75 KB
07/18/2024 06:28:46 PM
rwxr-xr-x
📄
aa-remove-unknown
3.15 KB
07/18/2024 06:28:46 PM
rwxr-xr-x
📄
aa-status
39.06 KB
07/18/2024 06:28:46 PM
rwxr-xr-x
📄
aa-teardown
137 bytes
04/12/2024 03:59:30 AM
rwxr-xr-x
📄
add-shell
1.03 KB
03/31/2024 08:47:33 AM
rwxr-xr-x
📄
agetty
59.56 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
apparmor_parser
1.55 MB
07/18/2024 06:28:46 PM
rwxr-xr-x
📄
apparmor_status
39.06 KB
07/18/2024 06:28:46 PM
rwxr-xr-x
📄
arpd
26.33 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
arptables
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
arptables-nft
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
arptables-nft-restore
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
arptables-nft-save
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
arptables-restore
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
arptables-save
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
badblocks
34.32 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
blkdeactivate
15.97 KB
11/27/2024 07:06:49 PM
rwxr-xr-x
📄
blkdiscard
22.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
blkid
54.41 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
blkzone
34.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
blockdev
34.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
bridge
108.49 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
capsh
57.09 KB
02/20/2025 03:49:57 PM
rwxr-xr-x
📄
cfdisk
94.73 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
chcpu
30.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
chgpasswd
58.32 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
chmem
34.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
chpasswd
54.43 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
chroot
38.51 KB
04/05/2024 02:36:57 PM
rwxr-xr-x
📄
cpgr
48.45 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
cppw
48.45 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
cryptdisks_start
1.51 KB
06/05/2024 01:46:49 PM
rwxr-xr-x
📄
cryptdisks_stop
844 bytes
06/05/2024 01:46:49 PM
rwxr-xr-x
📄
cryptsetup
225.9 KB
11/14/2024 03:44:47 AM
rwxr-xr-x
📄
ctrlaltdel
14.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
dcb
80.52 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
debugfs
225.87 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
depmod
170.24 KB
10/02/2024 12:40:49 PM
rwxr-xr-x
📄
devlink
150.86 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
dhcpcd
395.4 KB
05/07/2024 10:12:01 AM
rwxr-xr-x
📄
dmsetup
171.05 KB
11/27/2024 07:06:49 PM
rwxr-xr-x
📄
dmstats
171.05 KB
11/27/2024 07:06:49 PM
rwxr-xr-x
📄
dosfsck
78.38 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
dosfslabel
38.38 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
dumpe2fs
34.31 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e2freefrag
18.3 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e2fsck
364.34 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e2image
42.31 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e2label
110.56 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e2mmpstatus
34.31 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e2scrub
7.12 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e2scrub_all
5.27 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e2undo
22.3 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e4crypt
30.38 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
e4defrag
34.3 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
ebtables
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ebtables-nft
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ebtables-nft-restore
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ebtables-nft-save
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ebtables-restore
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ebtables-save
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ebtables-translate
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ethtool
651.68 KB
04/08/2024 03:57:18 PM
rwxr-xr-x
📄
faillock
22.31 KB
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
fatlabel
38.38 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
fdisk
114.42 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
filefrag
18.32 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
findfs
14.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
fsck
42.42 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
fsck.cramfs
30.44 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
fsck.ext2
364.34 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
fsck.ext3
364.34 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
fsck.ext4
364.34 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
fsck.fat
78.38 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
fsck.minix
54.41 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
fsck.msdos
78.38 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
fsck.vfat
78.38 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
fsfreeze
14.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
fstab-decode
14.3 KB
04/08/2024 04:20:36 PM
rwxr-xr-x
📄
fstrim
42.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
genl
120.58 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
getcap
14.3 KB
02/20/2025 03:49:57 PM
rwxr-xr-x
📄
getpcaps
14.3 KB
02/20/2025 03:49:57 PM
rwxr-xr-x
📄
getty
59.56 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
groupadd
71.13 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
groupdel
62.91 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
groupmems
58.34 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
groupmod
71.04 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
grpck
58.32 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
grpconv
50.16 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
grpunconv
50.16 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
halt
1.43 MB
02/21/2025 09:18:31 PM
rwxr-xr-x
📄
iconvconfig
34.47 KB
01/28/2025 05:07:37 PM
rwxr-xr-x
📄
init
98.45 KB
02/21/2025 09:18:31 PM
rwxr-xr-x
📄
insmod
170.24 KB
10/02/2024 12:40:49 PM
rwxr-xr-x
📄
installkernel
2.6 KB
03/31/2024 08:47:33 AM
rwxr-xr-x
📄
integritysetup
67.06 KB
11/14/2024 03:44:47 AM
rwxr-xr-x
📄
invoke-rc.d
16.13 KB
12/06/2023 07:46:52 AM
rwxr-xr-x
📄
ip
545.12 KB
01/26/2021 01:33:08 PM
rwxr-xr-x
📄
ip6tables
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-apply
6.89 KB
08/12/2023 10:33:39 PM
rwxr-xr-x
📄
ip6tables-legacy
92.95 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-legacy-restore
92.95 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-legacy-save
92.95 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-nft
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-nft-restore
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-nft-save
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-restore
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-restore-translate
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-save
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
ip6tables-translate
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-apply
6.89 KB
08/12/2023 10:33:39 PM
rwxr-xr-x
📄
iptables-legacy
92.95 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-legacy-restore
92.95 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-legacy-save
92.95 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-nft
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-nft-restore
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-nft-save
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-restore
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-restore-translate
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-save
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
iptables-translate
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
isosize
14.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
killall5
26.23 KB
04/08/2024 04:20:36 PM
rwxr-xr-x
📄
ldattach
26.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
ldconfig
387 bytes
01/28/2025 05:07:37 PM
rwxr-xr-x
📄
ldconfig.real
1 MB
01/28/2025 05:07:37 PM
rwxr-xr-x
📄
logsave
14.16 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
losetup
74.52 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
lsmod
170.24 KB
10/02/2024 12:40:49 PM
rwxr-xr-x
📄
mkdosfs
50.83 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
mke2fs
130.62 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
mkfs
14.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
mkfs.bfs
22.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
mkfs.cramfs
34.32 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
mkfs.ext2
130.62 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
mkfs.ext3
130.62 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
mkfs.ext4
130.62 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
mkfs.fat
50.83 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
mkfs.minix
42.39 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
mkfs.msdos
50.83 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
mkfs.vfat
50.83 KB
03/31/2024 08:49:11 AM
rwxr-xr-x
📄
mkhomedir_helper
22.34 KB
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
mklost+found
14.3 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
mkswap
50.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
modinfo
170.24 KB
10/02/2024 12:40:49 PM
rwxr-xr-x
📄
modprobe
170.24 KB
10/02/2024 12:40:49 PM
rwxr-xr-x
📄
netplan
802 bytes
10/14/2024 03:31:38 PM
rwxr-xr-x
📄
newusers
86.96 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
nfnl_osf
18.3 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
nologin
14.3 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
pam_extrausers_chkpwd
26.31 KB
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
pam_extrausers_update
34.31 KB
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
pam_namespace_helper
467 bytes
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
pam_timestamp_check
14.31 KB
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
pivot_root
14.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
plymouthd
146.57 KB
02/25/2025 05:47:08 AM
rwxr-xr-x
📄
poweroff
1.43 MB
02/21/2025 09:18:31 PM
rwxr-xr-x
📄
pwck
54.29 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
pwconv
46.16 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
pwhistory_helper
22.31 KB
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
pwunconv
46.16 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
readprofile
22.41 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
reboot
1.43 MB
02/21/2025 09:18:31 PM
rwxr-xr-x
📄
remove-shell
1.08 KB
03/31/2024 08:47:33 AM
rwxr-xr-x
📄
resize2fs
70.3 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
resolvconf
158.67 KB
02/21/2025 09:18:31 PM
rwxr-xr-x
📄
rfkill
30.23 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
rmmod
170.24 KB
10/02/2024 12:40:49 PM
rwxr-xr-x
📄
rmt
54.71 KB
04/08/2024 04:20:47 PM
rwxr-xr-x
📄
rmt-tar
54.71 KB
04/08/2024 04:20:47 PM
rwxr-xr-x
📄
rtacct
28.31 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
rtcwake
34.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
rtmon
116.52 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
runlevel
1.43 MB
02/21/2025 09:18:31 PM
rwxr-xr-x
📄
runuser
54.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
service
8.89 KB
12/06/2023 07:50:15 AM
rwxr-xr-x
📄
setcap
14.3 KB
02/20/2025 03:49:57 PM
rwxr-xr-x
📄
sfdisk
106.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
shadowconfig
2.22 KB
05/07/2024 01:44:18 PM
rwxr-xr-x
📄
shutdown
1.43 MB
02/21/2025 09:18:31 PM
rwxr-xr-x
📄
sshd
899.82 KB
02/11/2025 01:41:04 PM
rwxr-xr-x
📄
start-stop-daemon
47.49 KB
07/17/2024 09:09:50 AM
rwxr-xr-x
📄
sudo_logsrvd
248.5 KB
04/08/2024 02:50:39 PM
rwxr-xr-x
📄
sudo_sendlog
131.67 KB
04/08/2024 02:50:39 PM
rwxr-xr-x
📄
sulogin
42.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
swaplabel
18.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
swapoff
22.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
swapon
42.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
switch_root
22.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
sysctl
30.38 KB
09/26/2024 08:44:05 AM
rwxr-xr-x
📄
tarcat
936 bytes
01/01/2024 09:15:10 PM
rwxr-xr-x
📄
tc
630.08 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
telinit
1.43 MB
02/21/2025 09:18:31 PM
rwxr-xr-x
📄
tipc
90.52 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
tune2fs
110.56 KB
04/28/2024 11:44:46 PM
rwxr-xr-x
📄
ub-device-create
22.32 KB
09/26/2024 07:05:19 AM
rwxr-xr-x
📄
unix_chkpwd
30.31 KB
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
unix_update
34.31 KB
05/02/2024 10:20:13 PM
rwxr-xr-x
📄
update-ca-certificates
5.32 KB
02/04/2024 09:41:43 AM
rwxr-xr-x
📄
update-passwd
34.56 KB
04/08/2024 03:54:09 PM
rwxr-xr-x
📄
update-shells
3.89 KB
03/31/2024 08:47:33 AM
rwxr-xr-x
📄
useradd
139.88 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
userdel
91.01 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
usermod
127.65 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
vdpa
34.56 KB
03/31/2024 09:00:13 AM
rwxr-xr-x
📄
veritysetup
43.94 KB
11/14/2024 03:44:47 AM
rwxr-xr-x
📄
vigr
60.69 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
vipw
60.69 KB
05/30/2024 02:52:35 PM
rwxr-xr-x
📄
visudo
248.71 KB
04/08/2024 02:50:39 PM
rwxr-xr-x
📄
wipefs
38.38 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
📄
wpa_action
1.69 KB
12/25/2023 09:47:06 AM
rwxr-xr-x
📄
wpa_cli
140.31 KB
02/21/2025 09:03:52 PM
rwxr-xr-x
📄
wpa_supplicant
3.22 MB
02/21/2025 09:03:52 PM
rwxr-xr-x
📄
xtables-legacy-multi
92.95 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
xtables-monitor
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
xtables-nft-multi
219.16 KB
04/08/2024 03:59:59 PM
rwxr-xr-x
📄
zic
66.39 KB
01/28/2025 05:07:37 PM
rwxr-xr-x
📄
zramctl
54.52 KB
12/05/2024 02:26:54 AM
rwxr-xr-x
Editing: invoke-rc.d
Close
#!/bin/sh # vim: ft=sh # # invoke-rc.d.sysvinit - Executes initscript actions # # SysVinit /etc/rc?.d version for Debian's sysvinit package # # Copyright (C) 2000,2001 Henrique de Moraes Holschuh <hmh@debian.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, write to the Free Software Foundation, Inc., # 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. # Constants RUNLEVELHELPER=/sbin/runlevel POLICYHELPER=$DPKG_ROOT/usr/sbin/policy-rc.d INITDPREFIX=/etc/init.d/ RCDPREFIX=/etc/rc # Options BEQUIET= MODE= ACTION= FALLBACK= NOFALLBACK= FORCE= RETRY= RETURNFAILURE= RC= is_systemd= is_openrc= SKIP_SYSTEMD_NATIVE= # Shell options set +e dohelp () { # # outputs help and usage # cat <<EOF invoke-rc.d, Debian/SysVinit (/etc/rc?.d) initscript subsystem. Copyright (c) 2000,2001 Henrique de Moraes Holschuh <hmh@debian.org> Usage: invoke-rc.d [options] <basename> <action> [extra parameters] basename - Initscript ID, as per update-rc.d(8) action - Initscript action. Known actions are: start, [force-]stop, [try-]restart, [force-]reload, status WARNING: not all initscripts implement all of the above actions. extra parameters are passed as is to the initscript, following the action (first initscript parameter). Options: --quiet Quiet mode, no error messages are generated. --force Try to run the initscript regardless of policy and subsystem non-fatal errors. --try-anyway Try to run init script even if a non-fatal error is found. --disclose-deny Return status code 101 instead of status code 0 if initscript action is denied by local policy rules or runlevel constrains. --query Returns one of status codes 100-106, does not run the initscript. Implies --disclose-deny and --no-fallback. --no-fallback Ignores any fallback action requests by the policy layer. Warning: this is usually a very *bad* idea for any actions other than "start". --skip-systemd-native Exits before doing anything if a systemd environment is detected and the requested service is a native systemd unit. This is useful for maintainer scripts that want to defer systemd actions to deb-systemd-invoke --help Outputs help message to stdout EOF } printerror () { # # prints an error message # $* - error message # if test x${BEQUIET} = x ; then echo `basename $0`: "$*" >&2 fi } formataction () { # # formats a list in $* into $printaction # for human-friendly printing to stderr # and sets $naction to action or actions # printaction=`echo $* | sed 's/ /, /g'` if test $# -eq 1 ; then naction=action else naction=actions fi } querypolicy () { # # queries policy database # returns: $RC = 104 - ok, run # $RC = 101 - ok, do not run # other - exit with status $RC, maybe run if $RETRY # initial status of $RC is taken into account. # policyaction="${ACTION}" if test x${RC} = "x101" ; then if test "${ACTION}" = "start" || test "${ACTION}" = "restart" || test "${ACTION}" = "try-restart"; then policyaction="(${ACTION})" fi fi if test "x${POLICYHELPER}" != x && test -x "${POLICYHELPER}" ; then FALLBACK=`${POLICYHELPER} ${BEQUIET} ${INITSCRIPTID} "${policyaction}" ${RL}` RC=$? formataction ${ACTION} case ${RC} in 0) RC=104 ;; 1) RC=105 ;; 101) if test x${FORCE} != x ; then printerror Overriding policy-rc.d denied execution of ${printaction}. RC=104 else printerror policy-rc.d denied execution of ${printaction}. fi ;; esac if test x${MODE} != xquery ; then case ${RC} in 105) printerror policy-rc.d query returned \"behaviour undefined\", printerror assuming \"${printaction}\" is allowed. RC=104 ;; 106) formataction ${FALLBACK} if test x${FORCE} = x ; then if test x${NOFALLBACK} = x ; then ACTION="${FALLBACK}" printerror executing ${naction} \"${printaction}\" instead due to policy-rc.d request. RC=104 else printerror ignoring policy-rc.d fallback request: ${printaction}. RC=101 fi else printerror ignoring policy-rc.d fallback request: ${printaction}. RC=104 fi ;; esac fi case ${RC} in 100|101|102|103|104|105|106) ;; *) printerror WARNING: policy-rc.d returned unexpected error status ${RC}, 102 used instead. RC=102 ;; esac else if test ! -e "/sbin/init" ; then if test x${FORCE} != x ; then printerror "WARNING: No init system and policy-rc.d missing, but force specified so proceeding." else printerror "WARNING: No init system and policy-rc.d missing! Defaulting to block." RC=101 fi fi if test x${RC} = x ; then RC=104 fi fi return } verifyparameter () { # # Verifies if $1 is not null, and $# = 1 # if test $# -eq 0 ; then printerror syntax error: invalid empty parameter exit 103 elif test $# -ne 1 ; then printerror syntax error: embedded blanks are not allowed in \"$*\" exit 103 fi return } ## ## main ## ## Verifies command line arguments if test $# -eq 0 ; then printerror syntax error: missing required parameter, --help assumed dohelp exit 103 fi state=I while test $# -gt 0 && test ${state} != III ; do case "$1" in --help) dohelp exit 0 ;; --quiet) BEQUIET=--quiet ;; --force) FORCE=yes RETRY=yes ;; --try-anyway) RETRY=yes ;; --disclose-deny) RETURNFAILURE=yes ;; --query) MODE=query RETURNFAILURE=yes ;; --no-fallback) NOFALLBACK=yes ;; --skip-systemd-native) SKIP_SYSTEMD_NATIVE=yes ;; --*) printerror syntax error: unknown option \"$1\" exit 103 ;; *) case ${state} in I) verifyparameter $1 INITSCRIPTID=$1 ;; II) verifyparameter $1 ACTION=$1 ;; esac state=${state}I ;; esac shift done if test ${state} != III ; then printerror syntax error: missing required parameter exit 103 fi #NOTE: It may not be obvious, but "$@" from this point on must expand #to the extra initscript parameters, except inside functions. if test -d /run/systemd/system ; then is_systemd=1 UNIT="${INITSCRIPTID%.sh}.service" elif test -f /run/openrc/softlevel ; then is_openrc=1 elif test ! -f "${INITDPREFIX}${INITSCRIPTID}" ; then ## Verifies if the given initscript ID is known ## For sysvinit, this error is critical printerror unknown initscript, ${INITDPREFIX}${INITSCRIPTID} not found. fi ## Queries sysvinit for the current runlevel if [ ! -x ${RUNLEVELHELPER} ] || ! RL=`${RUNLEVELHELPER}`; then if [ -n "$is_systemd" ] && systemctl is-active --quiet sysinit.target; then # under systemd, the [2345] runlevels are only set upon reaching them; # if we are past sysinit.target (roughly equivalent to rcS), consider # this as runlevel 5 (this is only being used for validating rcN.d # symlinks, so the precise value does not matter much) RL=5 else printerror "could not determine current runlevel" # this usually fails in schroots etc., ignore failure (#823611) RL= fi fi # strip off previous runlevel RL=${RL#* } ## Running ${RUNLEVELHELPER} to get current runlevel do not work in ## the boot runlevel (scripts in /etc/rcS.d/), as /var/run/utmp ## contains runlevel 0 or 6 (written at shutdown) at that point. if test x${RL} = x0 || test x${RL} = x6 ; then if ps -fp 1 | grep -q 'init boot' ; then RL=S fi fi ## Handles shutdown sequences VERY safely ## i.e.: forget about policy, and do all we can to run the script. ## BTW, why the heck are we being run in a shutdown runlevel?! if test x${RL} = x0 || test x${RL} = x6 ; then FORCE=yes RETRY=yes POLICYHELPER= BEQUIET= printerror "-----------------------------------------------------" printerror "WARNING: 'invoke-rc.d ${INITSCRIPTID} ${ACTION}' called" printerror "during shutdown sequence." printerror "enabling safe mode: initscript policy layer disabled" printerror "-----------------------------------------------------" fi ## Verifies the existance of proper S??initscriptID and K??initscriptID ## *links* in the proper /etc/rc?.d/ directory verifyrclink () { # # verifies if parameters are non-dangling symlinks # all parameters are verified # doexit= while test $# -gt 0 ; do if test ! -L "$1" ; then printerror not a symlink: $1 doexit=102 fi if test ! -f "$1" ; then printerror dangling symlink: $1 doexit=102 fi shift done if test x${doexit} != x && test x${RETRY} = x; then exit ${doexit} fi return 0 } testexec () { # # returns true if any of the parameters is # executable (after following links) # while test $# -gt 0 ; do if test -x "$1" ; then return 0 fi shift done return 1 } RC= ### ### LOCAL POLICY: Enforce that the script/unit is enabled. For SysV init ### scripts, this needs a start entry in either runlevel S or current runlevel ### to allow start or restart. if [ -n "$is_systemd" ]; then case ${ACTION} in start|restart|try-restart) # If a package ships both init script and systemd service file, the # systemd unit will not be enabled by the time invoke-rc.d is called # (with current debhelper sequence). This would make systemctl is-enabled # report the wrong status, and then the service would not be started. # This check cannot be removed as long as we support not passing --skip-systemd-native if systemctl --quiet is-enabled "${UNIT}" 2>/dev/null || \ ls ${RCDPREFIX}[S2345].d/S[0-9][0-9]${INITSCRIPTID} >/dev/null 2>&1; then RC=104 elif systemctl --quiet is-active "${UNIT}" 2>/dev/null; then RC=104 else RC=101 fi ;; esac else # we do handle multiple links per runlevel # but we don't handle embedded blanks in link names :-( if test x${RL} != x ; then SLINK=`ls -d -Q ${RCDPREFIX}${RL}.d/S[0-9][0-9]${INITSCRIPTID} 2>/dev/null | xargs` KLINK=`ls -d -Q ${RCDPREFIX}${RL}.d/K[0-9][0-9]${INITSCRIPTID} 2>/dev/null | xargs` SSLINK=`ls -d -Q ${RCDPREFIX}S.d/S[0-9][0-9]${INITSCRIPTID} 2>/dev/null | xargs` verifyrclink ${SLINK} ${KLINK} ${SSLINK} fi case ${ACTION} in start|restart|try-restart) if testexec ${SLINK} ; then RC=104 elif testexec ${KLINK} ; then RC=101 elif testexec ${SSLINK} ; then RC=104 else RC=101 fi ;; esac fi # test if /etc/init.d/initscript is actually executable _executable= if [ -n "$is_systemd" ]; then _executable=1 elif testexec "${INITDPREFIX}${INITSCRIPTID}"; then _executable=1 fi if [ "$_executable" = "1" ]; then if test x${RC} = x && test x${MODE} = xquery ; then RC=105 fi # call policy layer querypolicy case ${RC} in 101|104) ;; *) if test x${MODE} != xquery ; then printerror policy-rc.d returned error status ${RC} if test x${RETRY} = x ; then exit ${RC} else RC=102 fi fi ;; esac else ### ### LOCAL INITSCRIPT POLICY: non-executable initscript; deny exec. ### (this is common sense, actually :^P ) ### RC=101 fi ## Handles --query if test x${MODE} = xquery ; then exit ${RC} fi setechoactions () { if test $# -gt 1 ; then echoaction=true else echoaction= fi } getnextaction () { saction=$1 shift ACTION="$@" } ## Executes initscript ## note that $ACTION is a space-separated list of actions ## to be attempted in order until one suceeds. if test x${FORCE} != x || test ${RC} -eq 104 ; then if [ -n "$is_systemd" ] || testexec "${INITDPREFIX}${INITSCRIPTID}" ; then RC=102 setechoactions ${ACTION} while test ! -z "${ACTION}" ; do getnextaction ${ACTION} if test ! -z ${echoaction} ; then printerror executing initscript action \"${saction}\"... fi if [ -n "$is_systemd" ]; then if [ "$SKIP_SYSTEMD_NATIVE" = yes ] ; then case $(systemctl show --value --property SourcePath "${UNIT}") in /etc/init.d/*) ;; *) # We were asked to skip native systemd units, and this one was not generated by the sysv generator # exit cleanly exit 0 ;; esac fi _state=$(systemctl -p LoadState show "${UNIT}" 2>/dev/null) case $saction in start|restart|try-restart) [ "$_state" != "LoadState=masked" ] || exit 0 systemctl $sctl_args "${saction}" "${UNIT}" && exit 0 ;; stop|status) systemctl $sctl_args "${saction}" "${UNIT}" && exit 0 ;; reload) [ "$_state" != "LoadState=masked" ] || exit 0 _canreload="$(systemctl -p CanReload show ${UNIT} 2>/dev/null)" # Don't block on reload requests during bootup and shutdown # from units/hooks and simply schedule the task. if ! systemctl --quiet is-system-running; then sctl_args="--no-block" fi if [ "$_canreload" = "CanReload=no" ]; then "${INITDPREFIX}${INITSCRIPTID}" "${saction}" "$@" && exit 0 else systemctl $sctl_args reload "${UNIT}" && exit 0 fi ;; force-stop) systemctl --signal=KILL kill "${UNIT}" && exit 0 ;; force-reload) [ "$_state" != "LoadState=masked" ] || exit 0 _canreload="$(systemctl -p CanReload show ${UNIT} 2>/dev/null)" if [ "$_canreload" = "CanReload=no" ]; then systemctl $sctl_args restart "${UNIT}" && exit 0 else systemctl $sctl_args reload "${UNIT}" && exit 0 fi ;; *) # We try to run non-standard actions by running # the init script directly. "${INITDPREFIX}${INITSCRIPTID}" "${saction}" "$@" && exit 0 ;; esac elif [ -n "$is_openrc" ]; then rc-service "${INITSCRIPTID}" "${saction}" && exit 0 else "${INITDPREFIX}${INITSCRIPTID}" "${saction}" "$@" && exit 0 fi RC=$? if test ! -z "${ACTION}" ; then printerror action \"${saction}\" failed, trying next action... fi done printerror initscript ${INITSCRIPTID}, action \"${saction}\" failed. if [ -n "$is_systemd" ] && [ "$saction" = start -o "$saction" = restart -o "$saction" = "try-restart" ]; then systemctl status --full --no-pager "${UNIT}" || true fi exit ${RC} fi exit 102 fi ## Handles --disclose-deny and denied "status" action (bug #381497) if test ${RC} -eq 101 && test x${RETURNFAILURE} = x ; then if test "x${ACTION%% *}" = "xstatus"; then printerror emulating initscript action \"status\", returning \"unknown\" RC=4 else RC=0 fi else formataction ${ACTION} printerror initscript ${naction} \"${printaction}\" not executed. fi exit ${RC}