]> git.ipfire.org Git - ipfire-2.x.git/blame - src/installer/dracut-module/70-dhcpcd.exe
installer: Set the clock correctly when installing over network
[ipfire-2.x.git] / src / installer / dracut-module / 70-dhcpcd.exe
CommitLineData
5fca8d27
MT
1#/bin/bash
2########################################################################
3# Begin
4#
5# Description : DHCP Client Script (initrd version)
6#
7# Authors : Arne Fitzenreiter - arne_f@ipfire.org
8#
9# Version : 02.00
10#
11# Notes :
12#
13########################################################################
14
c0511f3a 15LEASE_FILE="/var/ipfire/dhcpc/dhcpcd-${interface}.info"
5fca8d27 16
c0511f3a
MT
17export_lease() {
18 set | grep "^new_" | sed "s|^new_||g" | \
19 sed "s|'||g" | sort > ${LEASE_FILE}
20}
5fca8d27 21
c0511f3a
MT
22make_resolvconf() {
23 local DNS="$(grep 'domain_name_servers' ${LEASE_FILE} | cut -d'=' -f2)"
24 local DNS1="$(echo ${DNS} | cut -d' ' -f1)"
25 local DNS2="$(echo ${DNS} | cut -d' ' -f2)"
5fca8d27 26
c0511f3a
MT
27 (
28 echo "nameserver ${DNS1}"
29 echo "nameserver ${DNS2}"
30 ) > /etc/resolv.conf
5fca8d27
MT
31}
32
c0511f3a
MT
33case "${reason}" in
34 PREINIT)
35 # Configure MTU
36 if [ -n "${new_interface_mtu}" ] && [ ${new_interface_mtu} -gt 576 ]; then
37 echo "Setting MTU to ${new_interface_mtu}"
38 ip link set "${interface}" mtu "${new_interface_mtu}"
39 fi
40 ;;
41
42 BOUND|INFORM|REBIND|REBOOT|RENEW|TIMEOUT|STATIC)
43 # Export all information about the newly received lease
44 # to file
45 export_lease
46
47 # Create system configuration files
48 make_resolvconf
5ea26096
MT
49
50 # Set time
51 ntpdate "ntp.ipfire.org"
c0511f3a
MT
52 ;;
53
54 EXPIRE|FAIL|IPV4LL|NAK|NOCARRIER|RELEASE|STOP)
55 rm -f "${LEASE_FILE}"
56 ;;
5fca8d27 57esac
c0511f3a
MT
58
59exit 0