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: -
```
+    

     make installworld DESTDIR= -DDB_FROM_SRC -DNO_ROOT
     make distribution DESTDIR= -DDB_FROM_SRC -DNO_ROOT
-    ```
+
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 installkernel DESTDIR= -DNO_ROOT KERNCONF=
-    ```
+
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`: -
```
+    

     /usr/src/tools/tools/makeroot/makeroot.sh  -e /METALOG -e /METALOG -p /etc/master.passwd -s 2g ufs.img root
-    ```
+
5. Build the disc image: -
```
+    

     mkimg -s gpt -b /boot/pmbr -p freebsd-boot:=/boot/gptboot -p freebsd-swap::1G -p freebsd-ufs:=ufs.img -o disc.img
-    ```
+
6. Run the image: -
```
+    

     sh /usr/share/examples/bhyve/vmrun.sh -d disc.img vm0
-    ```
+
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`: -
```
+  

   /dev/vtbd0p3    /               ufs     rw              1 1
-  ```
+
* Custom `METALOG`: -
```
+  

   #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
-  ```
+
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. - ``` +

    $ 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. +Sorry about the code formatting. I don't know how to make it look better +in blogger.