ISO/archiso/Makefile
Gerardo Exequiel Pozzi 76dea1654e [archiso] Add PXE NFS support
It add support for using *.sfs images via NFS.

It must be located after archiso_pxe_nbd in mkinitcpio.conf, in that way
NBD is the default.

New boot parameters:

    archiso_nfs_srv=IP:/path
         Set the NFS IP and path. Accepts ${pxeserver} as IP.

    archiso_nfs_opt= Sets NFS mount opts (comma separated)
                    Defaults to:
                      port            = as given by server portmap daemon
                      rsize           = 1024
                      wsize           = 1024
                      timeo           = 7
                      retrans         = 3
                      acregmin        = 3
                      acregmax        = 60
                      acdirmin        = 30
                      acdirmax        = 60
                      flags           = hard, nointr, noposix, cto, ac

:: Running Hook [archiso_pxe_common]
IP-Config: eth0 hardware address 52:54:00:12:34:57 mtu 1500
IP-Config: eth0 guessed broadcast address 192.168.0.255
IP-Config: eth0 guessed nameserver address 192.168.0.218
IP-Config: eth0 complete (from 192.168.0.218):
 address: 192.168.0.90     broadcast: 192.168.0.255    netmask: 255.255.255.0
 gateway: 192.168.0.218    dns0     : 192.168.0.218    dns1   : 0.0.0.0
 rootserver: 192.168.0.218 rootpath:
 filename  :
:: Running Hook [archiso_pxe_nbd]
:: Running Hook [archiso_pxe_curl]
:: Running Hook [archiso_pxe_nfs]
:: Mounting '192.168.0.77:/mnt/iso'

...
192.168.0.77:/mnt/iso/ on /run/archiso/bootmnt type nfs (rw,relatime,vers=3,rsize=524288,wsize=524288,namlen=255,hard,nolock,proto=tcp,port=65535,timeo=7,retrans=3,sec=sys,local_lock=all,addr=192.168.0.77)
...

My /etc/exports
/mnt/iso 192.168.0.90(ro,no_subtree_check,no_root_squash)
2011-11-28 12:28:03 -03:00

61 lines
3.0 KiB
Makefile

all:
install: install-program install-hooks install-examples install-doc
install-program:
# install to sbin since script only usable by root
install -D -m 755 mkarchiso $(DESTDIR)/usr/sbin/mkarchiso
# testiso can be used by anyone
install -D -m 755 testiso $(DESTDIR)/usr/bin/testiso
install-hooks:
# hooks/install are needed by mkinitcpio
install -D -m 644 hooks/archiso $(DESTDIR)/lib/initcpio/hooks/archiso
install -D -m 644 install/archiso $(DESTDIR)/lib/initcpio/install/archiso
install -D -m 755 archiso_shutdown $(DESTDIR)/lib/initcpio/archiso_shutdown
install -D -m 644 hooks/archiso_shutdown $(DESTDIR)/lib/initcpio/hooks/archiso_shutdown
install -D -m 644 install/archiso_shutdown $(DESTDIR)/lib/initcpio/install/archiso_shutdown
install -D -m 644 archiso_pxe_nbd $(DESTDIR)/lib/initcpio/archiso_pxe_nbd
install -D -m 644 hooks/archiso_pxe_common $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_common
install -D -m 644 install/archiso_pxe_common $(DESTDIR)/lib/initcpio/install/archiso_pxe_common
install -D -m 644 hooks/archiso_pxe_nbd $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_nbd
install -D -m 644 install/archiso_pxe_nbd $(DESTDIR)/lib/initcpio/install/archiso_pxe_nbd
install -D -m 644 hooks/archiso_pxe_curl $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_curl
install -D -m 644 install/archiso_pxe_curl $(DESTDIR)/lib/initcpio/install/archiso_pxe_curl
install -D -m 644 hooks/archiso_pxe_nfs $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_nfs
install -D -m 644 install/archiso_pxe_nfs $(DESTDIR)/lib/initcpio/install/archiso_pxe_nfs
install -D -m 644 hooks/archiso_loop_mnt $(DESTDIR)/lib/initcpio/hooks/archiso_loop_mnt
install -D -m 644 install/archiso_loop_mnt $(DESTDIR)/lib/initcpio/install/archiso_loop_mnt
install-examples:
# install examples
install -d -m 755 $(DESTDIR)/usr/share/archiso/
cp -r ../configs $(DESTDIR)/usr/share/archiso/
install-doc:
install -d -m 755 $(DESTDIR)/usr/share/archiso/
install -D -m 644 ../README $(DESTDIR)/usr/share/doc/archiso/README
uninstall:
rm -f $(DESTDIR)/usr/sbin/mkarchiso
rm -f $(DESTDIR)/usr/bin/testiso
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso
rm -f $(DESTDIR)/lib/initcpio/install/archiso
rm -f $(DESTDIR)/lib/initcpio/archiso_shutdown
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_shutdown
rm -f $(DESTDIR)/lib/initcpio/install/archiso_shutdown
rm -f $(DESTDIR)/lib/initcpio/archiso_pxe_nbd
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_common
rm -f $(DESTDIR)/lib/initcpio/install/archiso_pxe_common
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_nbd
rm -f $(DESTDIR)/lib/initcpio/install/archiso_pxe_nbd
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_curl
rm -f $(DESTDIR)/lib/initcpio/install/archiso_pxe_curl
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_pxe_nfs
rm -f $(DESTDIR)/lib/initcpio/install/archiso_pxe_nfs
rm -f $(DESTDIR)/lib/initcpio/hooks/archiso_loop_mnt
rm -f $(DESTDIR)/lib/initcpio/install/archiso_loop_mnt
rm -rf $(DESTDIR)/usr/share/archiso/
.PHONY: install install-program install-hooks install-examples install-doc uninstall