Age | Commit message (Collapse) | Author |
|
[ramfs /]# cat /etc/resolv.conf
nameserver 192.168.0.77
[ramfs /]# curl -O http://releng.archlinux.org/pxeboot/README
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1129 100 1129 0 0 2191 0 --:--:-- --:--:-- --:--:-- 4589
[ramfs /]#
Do not "add_binary /lib/libnss_dns.so.2", because will add libnss_dns-VERSION.so.2 as libnss_dns.so.2
Is not an issue will work (nobody links directly to VERSION), but is not nice.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
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)
|
|
Its add support for downloading the ISO image via HTTP/FTP with curl or download *.sfs files.
The files are downloaded on /run/archiso/curlspace (tmpfs) and setup a loop dev from it
(like in archiso_loop_mnt) in the ISO case, or just do a bind mount to
/run/archiso/bootmnt in the other case.
This hook must be located after archiso_pxe_nbd in mkinitcpio.conf, in that way
NBD is the default.
New bootparm:
* archiso_curl_url=(first form)
archiso_curl_url=http://192.168.0.7/archlinux/iso/archlinux.iso (absolute form)
Use an absolute URL. Fetch the entire ISO
archiso_curl_url=ftp://${pxeserver}/archlinux/iso/archlinux.iso (relative form)
Use the as IP the same server where PXE reside. Fetch the entire ISO
* archiso_curl_url=(second form)
archiso_curl_url=http://192.168.0.7/archlinux/iso/unpacked (absolute form)
Use an absolute URL. Where unpacked (an example name) is a directory where
${archisobasedir} ("arch" by default) is located with all *.sfs.
This fetch only needed files.
archiso_curl_url=ftp://${pxeserver}/archlinux/iso/unpacked (relative form)
Use the as IP the same server where PXE reside. Where unpacked (an example name)
is a directory where ${archisobasedir} ("arch" by default)
is located with all *.sfs. This fetch only needed files.
* curlspace_size= Set a size for a tmpfs filesystem where files are downloaded.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
One hook only setup the network device (archiso_pxe_common) the other
setup the NBD client (archiso_pxe_nbd).
New bootparam:
archiso_pxe_srv=IP
Allow to set an IP different from the PXE server.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
In this way allow to mount /run/archiso/bootmnt from another hook,
but still use the logic from the main mount_hook, skipping only this mount.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* Now bootmnt/img_dev is always a ro-mount,
and cowspace is first ro-mount then rw-mount.
* Fix a "hidden" bug: at the time of test [[ -ef ]], if devices nodes
are not ready, such test will fail then archisodevice will mounted ro and
when cow_device is mounted to be rw it fails.
(I recently suffered this on a machine with slow USB)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Boot media is already available in /run/archiso/bootmnt
if no copytoram is used.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* ipconfig cmd writes a file in /tmp that is ready for direct evaluation.
We can use this instead of parsing the output, to do this some variable
renames are needed.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* Remove IDE stuff.
* Remove modules that can be added via relevant hooks.
* Replace sata with virtio in baseline profile.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
STATUS: Working (std boot, loop_mnt, pxe) with copytoram=[y|n].
NEEDS: initscript > 2011.07.3, mkinitcpio > 0.7.2, mkinitcpio-busybox > 1.18.5-1
Purpose: we need this for propertly unmount $cow_device,
used for persistent dm-snapshot devices.
This hook is based on work from Tom Gundersen[#1],
but adapted for archiso things (specially the shutdown script)
[#1] http://mailman.archlinux.org/pipermail/arch-projects/2011-July/001549.html
[#2] http://projects.archlinux.org/initscripts.git/commit/?id=1fa7b4b453e96533ae1db3630031285e5fc302b3
[#3] http://mailman.archlinux.org/pipermail/arch-projects/2011-August/001749.html
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* Support img_label=
* Allow use img_dev= as cow_device=
* Use new function _mnt_dev() from archiso.
* Check for error while setting loopback device.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
This allow to take control again of these mountpoints outside initramfs.
(i.e: on deinitramfs stage at shutdown for unmount it)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Add some options to control where all COW files will be located.
Until this moment all files are located in a tmpfs filesystem.
Now is posible to set a device via a filesystem label or device node
plus a directory, where all these files will be stored.
All dm-snapshot devices will be persistent by default,
but this can be changed if wanted.
Take care, a filesystem that does not support sparse files maybe
is not the best choice for COW files, because they are created with
the same size (is apparent) like the read-only device (the image.fs inside .sfs).
Of course sooner or later, depending on use, these files actually end up
being as big as the read-only device.
KNOW-ISSUE: On shutdown in step "Unmounting Filesystems" will [FAIL],
all filesystem except $cow_device, will be unmounted/remounted-ro.
For this reason this change needs an archiso_shutdown hook, thats
unmount all block devices used by archiso. (Work in progress)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Separate this code from main mount hook, and make it more generic.
_mnt_dev(device, mountpoint, flags) ->
wait for device and mount, launch a shell if something goes wrong.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* These files was added during developement stage of dm-snapshot branch
of archiso. Never was used, sinse archiso works directly with dmsetup
and with device nodes in /dev/mapper/
* Added 11-dm-initramfs.rules to keep dm info about nodes persistent
in udev db across initramfs/real-root.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
This makes archiso_pxe_nbd functionallity full-independient from
archiso profiles (configs/*).
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Otherwise archiso_loop_mnt will fail.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Default value is "arch". This implies that all device mapper node
for snapshot devices will be for example: arch_root-image.
This helps AIF to hidden these devices from "Device Configuration".
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Requested at FS#25051
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* Use device mapper + snapshot module, instead union layer filesystem.
* A block-level approach vs vfs-level.
* No more unofficial (Linux) things.
* More memory is needed.
* Refactor mkarchiso.
* Refactor hooks/archiso.
* Fix install/archiso_pxe_nbd
(due recent change in mkinitcpio-0.6.15 on checked_modules()/all_modules())
[Thanks Dave for the improved workaround]
* New configs/releng to build official images.
* Works with a Bash script instead of Makefile.
(better control and easy to maintain)
* Remove configs/syslinux-iso.
* Remove archiso2dual script. Integrate functionality in configs/releng.
* New configs/baseline to build the most basic live medium or use as template.
* New README (draft). [Thanks Dieter for fixing english grammar]
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* Change from none -> union (looks like util-linux is confused BUG?)
Avoid the message: "umount aufs failed: not found" at shutdown.
#1 mount -t tmpfs none /something
#2 mount -t tmpfs xxxx /something
The output of findmnt -rnu -o SOURCE will be blank in #1.
* Change from aufs -> auto, make its more generic.
* Update devpts and shm entries.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Add two parameters:
img_dev=/dev/sdNM
where /dev/sdNM is the device where .iso is located.
img_loop=/path/to/arch.iso
where /path/to/arch.iso is the full path of the .iso in the device img_dev.
Original idea from Baurzhan Muftakhidinov.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
-D <install_dir> allow to select install directory on target media
defaults to "arch".
There is a new %INSTALL_DIR% macro for syslinux.cfg.
This is how ISO will look now:
/syslinux only syslinux related files (syslinux.cfg, *.c32, etc)
/arch/ isomounts + *.sqfs images
/arch/boot/ Linux + initramfs + Memtest86+ + other files for early boot stage
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
This was wrong and can never have worked. Fix it.
|
|
Newer nbd-server uses config file instead of parameters via cmd line (deprecated).
Also does not use a fixed port (oldstyle).
Sample nbd-server.conf that works with this change:
-- CUT HERE --
[generic]
[archiso]
readonly = true
exportname = /tmp/archlinux.iso
-- CUT HERE --
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
This step is now done at archiso hook (commit ba638480ce)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
A shell prompt is at least better than a kernel panic :)
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
* squashfs images that will be part of read-only branchs for union mount in /
are mounted on /ro_branch/{image_name} instead of /tmpfs/mnt/{image_name}
(and avoid empty dirs on live env under /mnt)
* tmpfs that will be part of read-write branch for union mount in /
is mounted on /rw_branch instead of /tmpfs
* tmpfs that is for store *.sqfs images when copytoram=y, is mounted on
/copytoram instead of /tmpfs.sqfs
* tmpfs_size= parameter renamed to rw_branch_size=
* tmpfs_sqfs_size= parameter renamed to copytoram_size=
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
More generic way than current method, and fix if logic (inverted).
Takes the same actions independent of medium (disk/cdrom).
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
Latest init script mounts a /dev FS, so /dev/loop0 will disappear.
Create loop0 on /lib/udev/devices so udev copy to /dev on startup.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|
|
When remastering the image onto a USB volume, you might want to reuse
an existing partition without filling the root with lots of archiso
files. The archisobasedir parameter allows to specify a new root
directory, isomounts and all images will be searched in this directory.
|
|
The archiso_pxe_nbd hook adds all network modules, including ones that
are not supported: The hook only supports ethernet devices, so there
is no need to add wireless, wimax, ppp, irda and plip modules.
Adding the wireless modules had an undesired side effect: The
wireless driver was loaded in the initramfs stage, where the
required crypto modules were unavailable. This caused the
initialization of the wireless devices to fail.
This patch removes all network modules except ethernet.
|
|
|
|
Otherwise archiso_pxe_nbd hook can configure the incorrect network card,
because ipconfig will configure all interfaces available.
Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
|