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.
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.
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/init_resize.shin 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
resize2fsto 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