Installing Raspian on a Pi


Installing Raspbian on a Pi is super easy. First get hold of Raspbian. I use the “Stretch-Lite” version, as it is smaller and I don’t need a GUI.

You’ll need to use a tool to write the image to an SD card. If you have Linux - you can use Linux’s dd command. If you use Windows or a Mac, (or you want a GUI for Linux), you can use etcher.

You have two options:

  1. Basic

    A basic install means that you install Raspbian and it consumes the complete capacity of your SD card. This is by far the easiest and less complex setup.

    The image itself as about 1.5G, and when you install it on a (larger) SD card, when Raspbian first boots, it will automatically re-partition the SD card so that the root partition consumes the remaining capacity of the SD card and reboot. On the subsequent reboot it will automatically resize that file system so that it now consumes that remaining capacity.

  1. Advanced

    An advanced install means that you want to control your file system layout and potentially use more mount points and/or some block devices. I went through this process because I wanted to install glusterFS on my Pi(s) so that I can share a replicated file system with more than 1 Pi. I needed this because I wanted to use Docker Swarm (where your docker containers can float between Pis) and glusterFS provides the consistent persistent storage for those containers. And since glusterFS provides redundancy options, it means I can take a Pi offline (or in case it dies) and my BBS will start on another Pi.

    To do this install, I modified the Raspbian image, so that it wouldn’t resize the root file system after a reboot. You can achieve this by removing init=/usr/lib/raspi-config/ in cmdline.txt (on the boot partition) - it should be at the end of the line.

    After the system boots, you can resize your partitions as you would like, but:

  • Dont change the first partition at all, it is your boot partition

  • Dont make the second partition any smaller than what it is. You can make it larger, and after you have done so, on the next reboot use resize2fs to adjust the filesystem size.

    You can use the rest of your diskspace as partition 3 onwards.

    Here is what mine looks like:

    Disk /dev/mmcblk0: 59.6 GiB, 64021856256 bytes, 125042688 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0x1376769f

    Device Boot Start End Sectors Size Id Type
    /dev/mmcblk0p1 8192 96663 88472 43.2M c W95 FAT32 (LBA)
    /dev/mmcblk0p2 98304 4292607 4194304 2G 83 Linux
    /dev/mmcblk0p3 4292608 125042687 120750080 57.6G 8e Linux LVM

    Now you can setup Mystic BBS, MBSE BBS or your favourite BBS software, or follow my Docker installation if you want to run your BBS’s in docker.