]> git.proxmox.com Git - mirror_zfs-debian.git/blob - debian/tree/zfsutils-linux/usr/share/initramfs-tools/hooks/zdev
Use dkms.mkconf to produce dkms.conf
[mirror_zfs-debian.git] / debian / tree / zfsutils-linux / usr / share / initramfs-tools / hooks / zdev
1 #!/bin/sh
2 #
3 # Add udev rules for ZoL to the initrd.
4 #
5
6 PREREQ="udev"
7 PREREQ_UDEV_RULES="60-zvol.rules 69-vdev.rules"
8 COPY_EXEC_LIST="/lib/udev/zvol_id /lib/udev/vdev_id"
9
10 # Generic result code.
11 RC=0
12
13 case $1 in
14 prereqs)
15 echo "$PREREQ"
16 exit 0
17 ;;
18 esac
19
20 for ii in $COPY_EXEC_LIST
21 do
22 if [ ! -x "$ii" ]
23 then
24 echo "Error: $ii is not executable."
25 RC=2
26 fi
27 done
28
29 if [ "$RC" -ne 0 ]
30 then
31 exit "$RC"
32 fi
33
34 . /usr/share/initramfs-tools/hook-functions
35
36 mkdir -p "$DESTDIR/lib/udev/rules.d/"
37 for ii in $PREREQ_UDEV_RULES
38 do
39 if [ -e "/etc/udev/rules.d/$ii" ]
40 then
41 cp -p "/etc/udev/rules.d/$ii" "$DESTDIR/lib/udev/rules.d/"
42 elif [ -e "/lib/udev/rules.d/$ii" ]
43 then
44 cp -p "/lib/udev/rules.d/$ii" "$DESTDIR/lib/udev/rules.d/"
45 else
46 echo "Error: Missing udev rule: $ii"
47 echo " This file must be in the /etc/udev/rules.d or /lib/udev/rules.d directory."
48 exit 1
49 fi
50 done
51
52 for ii in $COPY_EXEC_LIST
53 do
54 copy_exec "$ii"
55 done
56
57 if [ -f '/etc/default/zfs' -a -r '/etc/default/zfs' ]
58 then
59 mkdir -p "$DESTDIR/etc/default"
60 cp -a '/etc/default/zfs' "$DESTDIR/etc/default/"
61 fi
62
63 if [ -d '/etc/zfs' -a -r '/etc/zfs' ]
64 then
65 mkdir -p "$DESTDIR/etc"
66 cp -a '/etc/zfs' "$DESTDIR/etc/"
67 fi