Skip to content

Commit 57a596a

Browse files
committed
6: etc/*
Signed-off-by: Jorgen Lundman <[email protected]>
1 parent bb8e0a5 commit 57a596a

15 files changed

+937
-0
lines changed

etc/launchd.d/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
zpool-import-all.sh

etc/launchd.d/Makefile.am

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
2+
noinst_launch_d_DATA = \
3+
%D%/zpool-import-all.sh.in
4+
noinst_launch_ddir = \
5+
$(launchdscriptdir)/
6+
7+
do_subst = -$(SED) -e 's,@bindir\@,$(bindir),g' \
8+
-e 's,@runstatedir\@,$(runstatedir),g' \
9+
-e 's,@sbindir\@,$(sbindir),g' \
10+
-e 's,@sysconfdir\@,$(sysconfdir),g' \
11+
-e 's,@launchdscriptdir\@,$(launchdscriptdir),g'
12+
13+
CLEANFILES += %D%/zpool-import-all.sh
14+
15+
INSTALL_DATA_HOOKS += install-zpool-import
16+
17+
install-zpool-import: %D%/zpool-import-all.sh.in
18+
$(do_subst) < %D%/zpool-import-all.sh.in > $(DESTDIR)/$(launchdscriptdir)/zpool-import-all.sh
19+
chmod +x $(DESTDIR)/$(launchdscriptdir)/zpool-import-all.sh

etc/launchd.d/zpool-import-all.sh.in

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
#!/bin/bash
2+
3+
echo "+zpool-import-all.sh"
4+
date
5+
export ZPOOL_IMPORT_ALL_COOKIE=/var/run/org.openzfsonosx.zpool-import-all.didRun
6+
export INVARIANT_DISKS_IDLE_FILE=/var/run/disk/invariant.idle
7+
export TIMEOUT_SECONDS=60
8+
export MAXIMUM_SLEEP_ITERATIONS=$((${TIMEOUT_SECONDS} * 10))
9+
10+
/usr/bin/time /usr/sbin/system_profiler SPParallelATADataType SPCardReaderDataType SPFibreChannelDataType SPFireWireDataType SPHardwareRAIDDataType SPNetworkDataType SPPCIDataType SPParallelSCSIDataType SPSASDataType SPSerialATADataType SPStorageDataType SPThunderboltDataType SPUSBDataType SPNetworkVolumeDataType 1>/dev/null 2>&1
11+
12+
/bin/sync
13+
14+
echo "Waiting up to ${TIMEOUT_SECONDS} seconds for the InvariantDisks idle file ${INVARIANT_DISKS_IDLE_FILE} to exist"
15+
16+
i=0
17+
while [ "${i}" -lt "${MAXIMUM_SLEEP_ITERATIONS}" -a ! -e "${INVARIANT_DISKS_IDLE_FILE}" ]
18+
do
19+
i=$((i+1))
20+
sleep .1
21+
done
22+
23+
if [ -e "${INVARIANT_DISKS_IDLE_FILE}" ]
24+
then
25+
echo "Found ${INVARIANT_DISKS_IDLE_FILE} after ${i} iterations of sleeping 0.1 seconds"
26+
else
27+
echo "File ${INVARIANT_DISKS_IDLE_FILE} not found within ${TIMEOUT_SECONDS} seconds"
28+
fi
29+
date
30+
31+
if [ -f "@sysconfdir@/zfs/zsysctl.conf" ]; then
32+
@sbindir@/zsysctl -f @sysconfdir@/zfs/zsysctl.conf
33+
fi
34+
35+
# check to see if we have been instructed not to try to import at all
36+
if [ -f /etc/zfs/noautoimport ];
37+
then
38+
echo "/etc/zfs/noautoimport exits, exiting";
39+
exit 0;
40+
fi
41+
42+
date
43+
echo "-zpool-import-all.sh"
44+
45+
sleep 10
46+
echo "Loading and starting org.openzfsonosx.zpool-import"
47+
date
48+
49+
/bin/launchctl load /Library/LaunchDaemons/org.openzfsonosx.zpool-import.plist
50+
/bin/launchctl kickstart -kp system/org.openzfsonosx.zpool-import
51+
52+
echo Status: $?
53+
54+
echo "Touching the file ${ZPOOL_IMPORT_ALL_COOKIE}"
55+
touch "${ZPOOL_IMPORT_ALL_COOKIE}"
56+
57+
date
58+
echo "-zpool-import-all.sh"
59+
60+
exit 0

etc/launchd/Makefile.am

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
launchddaemondir = /Library/LaunchDaemons
2+
launchdscriptdir = ${libexecdir}/zfs/launchd.d
3+
4+
include $(srcdir)/%D%/daemons/Makefile.am

etc/launchd/daemons/.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
org.openzfsonosx.zconfigd.plist
2+
org.openzfsonosx.zed.plist
3+
org.openzfsonosx.zpool-import.plist
4+
org.openzfsonosx.zpool-import-all.plist
5+
org.openzfsonosx.InvariantDisks.plist

etc/launchd/daemons/Makefile.am

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
2+
CLEANFILES += $(launchddaemon_DATA)
3+
4+
launchddaemon_DATA = \
5+
$(top_srcdir)/etc/launchd/daemons/org.openzfsonosx.zconfigd.plist \
6+
$(top_srcdir)/etc/launchd/daemons/org.openzfsonosx.zed.plist \
7+
$(top_srcdir)/etc/launchd/daemons/org.openzfsonosx.zpool-import.plist \
8+
$(top_srcdir)/etc/launchd/daemons/org.openzfsonosx.zpool-import-all.plist \
9+
$(top_srcdir)/etc/launchd/daemons/org.openzfsonosx.InvariantDisks.plist
10+
11+
dist_launchddaemon_DATA = \
12+
%D%/org.openzfsonosx.zconfigd.plist.in \
13+
%D%/org.openzfsonosx.zed.plist.in \
14+
%D%/org.openzfsonosx.zpool-import.plist.in \
15+
%D%/org.openzfsonosx.zpool-import-all.plist.in \
16+
%D%/org.openzfsonosx.InvariantDisks.plist.in
17+
18+
%D%/org.openzfsonosx.zconfigd.plist: %D%/org.openzfsonosx.zconfigd.plist.in
19+
%D%/org.openzfsonosx.zed.plist: %D%/org.openzfsonosx.zed.plist.in
20+
%D%/org.openzfsonosx.zpool-import.plist: %D%/org.openzfsonosx.zpool-import.plist.in
21+
%D%/org.openzfsonosx.zpool-import-all.plist: %D%/org.openzfsonosx.zpool-import-all.plist.in
22+
%D%/org.openzfsonosx.InvariantDisks.plist: %D%/org.openzfsonosx.InvariantDisks.plist.in
23+
24+
$(launchddaemon_DATA):
25+
-$(SED) -e 's,@bindir\@,$(bindir),g' \
26+
-e 's,@runstatedir\@,$(runstatedir),g' \
27+
-e 's,@sbindir\@,$(sbindir),g' \
28+
-e 's,@sysconfdir\@,$(sysconfdir),g' \
29+
-e 's,@launchddaemondir\@,$(launchddaemondir),g' \
30+
-e 's,@launchdscriptdir\@,$(launchdscriptdir),g' \
31+
32+
33+
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>Label</key>
6+
<string>org.openzfsonosx.InvariantDisks</string>
7+
<key>ProgramArguments</key>
8+
<array>
9+
<string>@sbindir@/InvariantDisks</string>
10+
</array>
11+
<key>RunAtLoad</key>
12+
<true/>
13+
<key>KeepAlive</key>
14+
<true/>
15+
</dict>
16+
</plist>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>Label</key>
6+
<string>org.openzfsonosx.zconfigd</string>
7+
<key>ProgramArguments</key>
8+
<array>
9+
<string>@sbindir@/zconfigd</string>
10+
</array>
11+
<key>RunAtLoad</key>
12+
<true/>
13+
<key>KeepAlive</key>
14+
<true/>
15+
<key>StandardErrorPath</key>
16+
<string>/private/var/log/org.openzfsonosx.zconfigd.err</string>
17+
<key>StandardOutPath</key>
18+
<string>/private/var/log/org.openzfsonosx.zconfigd.log</string>
19+
</dict>
20+
</plist>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>Label</key>
6+
<string>org.openzfsonosx.zed</string>
7+
<key>ProgramArguments</key>
8+
<array>
9+
<string>@sbindir@/zed</string>
10+
<string>-vfF</string>
11+
</array>
12+
<key>RunAtLoad</key>
13+
<true/>
14+
<key>KeepAlive</key>
15+
<true/>
16+
<key>StandardErrorPath</key>
17+
<string>/private/var/log/org.openzfsonosx.zed.err</string>
18+
<key>StandardOutPath</key>
19+
<string>/private/var/log/org.openzfsonosx.zed.log</string>
20+
</dict>
21+
</plist>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>Label</key>
6+
<string>org.openzfsonosx.zpool-import-all</string>
7+
<key>ProgramArguments</key>
8+
<array>
9+
<string>@launchdscriptdir@/zpool-import-all.sh</string>
10+
</array>
11+
<key>RunAtLoad</key>
12+
<true/>
13+
<key>StandardErrorPath</key>
14+
<string>/private/var/log/org.openzfsonosx.zpool-import-all.err</string>
15+
<key>StandardOutPath</key>
16+
<string>/private/var/log/org.openzfsonosx.zpool-import-all.log</string>
17+
</dict>
18+
</plist>

0 commit comments

Comments
 (0)