diff --git a/content/2014/10/building-bhyve-images-using-makefs-and.html b/content/2014/10/building-bhyve-images-using-makefs-and.html index a9123e0..a1e45d4 100644 --- a/content/2014/10/building-bhyve-images-using-makefs-and.html +++ b/content/2014/10/building-bhyve-images-using-makefs-and.html @@ -24,15 +24,15 @@ First, you need to make sure that you have a complete source check out along with a completed buildworld and buildkernel. Then follow these steps: 1. Install world and distribution into a temporary directory using the `NO_ROOT` option: -
``` +This preps everything with the defaults as necessary. 2. Install a kernel either into a different directory (I do this) or into the same directory above: -+make installworld DESTDIR=
-DDB_FROM_SRC -DNO_ROOT make distribution DESTDIR= -DDB_FROM_SRC -DNO_ROOT - ```
``` +3. Make a directory with your custom configuration files. The basics are `/etc/rc.conf` and `/etc/fstab` and you might want `/firstboot` on there too. You will also need a METALOG file which contains the @@ -40,17 +40,17 @@ along with a completed buildworld and buildkernel. Then follow these steps: you could use mtree to generate this instead of creating it by hand. The file contents are below. 4. Build the ufs image using the `makeroot.sh` script in the src tree at `tools/tools/makeroot/makeroot.sh`: -+make installkernel DESTDIR=
-DNO_ROOT KERNCONF= - ```
``` +5. Build the disc image: -+/usr/src/tools/tools/makeroot/makeroot.sh -e
/METALOG -e /METALOG -p /etc/master.passwd -s 2g ufs.img root - ```
``` +6. Run the image: -+mkimg -s gpt -b
/boot/pmbr -p freebsd-boot:= /boot/gptboot -p freebsd-swap::1G -p freebsd-ufs:=ufs.img -o disc.img - ```
``` +There you have it. Besides running the image, all the other steps can be done as a normal user w/o root access. @@ -62,13 +62,13 @@ seed for entropy at first boot for things such as sshd key generation. File contents: * `/etc/fstab`: -+sh /usr/share/examples/bhyve/vmrun.sh -d disc.img vm0 - ```
``` +* Custom `METALOG`: -+/dev/vtbd0p3 / ufs rw 1 1 - ```
``` +diff --git a/content/2018/07/making-freebsd-magnet-links.html b/content/2018/07/making-freebsd-magnet-links.html index 9b6ba50..d2830ac 100644 --- a/content/2018/07/making-freebsd-magnet-links.html +++ b/content/2018/07/making-freebsd-magnet-links.html @@ -25,24 +25,24 @@ adjust as necessary. are a few directories that you have mirror, I use wget for this. The mirroring feature for wget isn't great. After each command I have to remove the `CHECKSUM.SHA256`, `CHECKSUM.SHA512` and `index.html*` files. - ``` ++#mtree 2.0 ./etc/rc.conf type=file uname=root gname=wheel mode=0644 ./etc/fstab type=file uname=root gname=wheel mode=0644 ./firstboot type=file uname=root gname=wheel mode=0644 - ```
$ wget -c -r -l 1 -nd --limit-rate=800k https://download.freebsd.org/ftp/releases/ISO-IMAGES/11.2/
$ wget -c -r -l 1 -nd --limit-rate=800k https://download.freebsd.org/ftp/releases/VM-IMAGES/11.2-RELEASE/aarch64/Latest/
$ wget -c -r -l 1 -nd --limit-rate=800k https://download.freebsd.org/ftp/releases/VM-IMAGES/11.2-RELEASE/amd64/Latest/
$ wget -c -r -l 1 -nd --limit-rate=800k https://download.freebsd.org/ftp/releases/VM-IMAGES/11.2-RELEASE/i386/Latest/
- ```
+
2. Fetch the signature files:
- ```
+
$ wget https://www.freebsd.org/releases/11.2R/CHECKSUM.SHA512-FreeBSD-11.2-RELEASE-{amd64,i386,powerpc,powerpc-powerpc64,sparc64,arm64-aarch64}.asc
$ wget https://www.freebsd.org/releases/11.2R/CHECKSUM.SHA512-FreeBSD-11.2-RELEASE-{amd64,i386,arm64-aarch64}-vm.asc
$ wget https://www.freebsd.org/releases/11.2R/CHECKSUM.SHA512-FreeBSD-11.2-RELEASE-arm-armv6-{BANANAPI,BEAGLEBONE,CUBIEBOARD,CUBIEBOARD2,CUBBOX-HUMMINGBOARD,GUMSTIX,PANDABOARD,RPI-B,RPI2,WANDBOARD}.asc
- ```
+
3. Verify the GPG key that signed the above files. This is usually Glen
Barber's key, but not always. I have met and verified his fingerprint
in person, If you have verified someone's key who has signed Glen's
key, that is another good way.
4. Verify the checksum files:
- ```
+
$ for i in *.asc; do gpg --verify $i; done
You should see a bunch of lines like:
Warning: using insecure memory!
@@ -53,7 +53,7 @@ adjust as necessary.
gpg: aka "Glen Barber " [full]
gpg: aka "Glen Barber " [unknown]
gpg: WARNING: not a detached signature; file 'CHECKSUM.SHA512-FreeBSD-11.2-RELEASE-amd64-vm' was NOT verified!
- ```
+
The last line can be ignored. The non-`.asc` files were d/l'd and will
not be used. Make sure that all of the files report Good signature.
5. In the past I have used BitTornado for other things, so I ended up
@@ -65,7 +65,7 @@ adjust as necessary.
similar enough that it could be modified and used. I copied
`btmakemetafile.py` to `btmaketrackerless.py` and applied the following
patch:
- ```
+
$ diff -u btmakemetafile.py btmaketrackerless.py
--- btmakemetafile.py 2004-05-24 12:54:52.000000000 -0700
+++ btmaketrackerless.py 2016-10-10 17:13:32.742081000 -0700
@@ -95,13 +95,13 @@ adjust as necessary.
print 'error: ' + str(e)
print 'run with no args for parameter explanations'
- ```
+
If you notice, the only thing that is done is to drop the first argument,
and instead of passing it into `make_meta_file`, a `None` is passed
instead. This will simply not add trackers to the torrent file.
6. I then run the following script to verify the downloaded files, and
generate the torrent files:
- ```
+
$ cat cmp.sh
#!/bin/sh -
# wget -c -r -l 1 -nd --limit-rate=800k https://download.freebsd.org/ftp/releases/ISO-IMAGES/11.2/
@@ -133,10 +133,10 @@ adjust as necessary.
exit 1
fi
done < sha512.from.asc
- ```
+
7. Once all the torrents have been generated, I then make the magnet
links:
- ```
+
$ cat btmakemagnet.sh
#!/bin/sh -
@@ -155,9 +155,9 @@ adjust as necessary.
print "magnet:?xt=urn:btih:" info "&dn=" name
}'
done
- ```
+
8. I then create the magnet links file, and update the
[Torrents](https://wiki.freebsd.org/Torrents) wiki page.
-Sorry about the code formatting. I don't know how to make it look better
-in blogger.
+