Skip to content

Install openHABian image on Linux

My plan is to reinstall openHABian on a bigger SDcard, and on a Raspberry Pi 4. The latest release (v1.5) supports the new Pi 4, and I decided it's time to do a fresh install, and see if all my Playbooks are still working.

Raspberry Pi 4 with Sectronics Armor (cooling) Case

As always, I'm searching my shell history for the right command how to install the image ... but came up empty.

 

The disk

Let's start by identifying the SDcard. I'm running Ubuntu on my laptop, and I can use "tail -f /var/log/syslog" to see the log output. When I plugin the SDcard into the reader, I see the following in the log:

Aug  8 12:41:59 diamond kernel: [4724028.476293] sd 1:0:0:0: [sdb] 62333952 512-byte logical blocks: (31.9 GB/29.7 GiB)
Aug  8 12:41:59 diamond kernel: [4724028.478668] sd 1:0:0:0: [sdb] Write Protect is off
Aug  8 12:41:59 diamond kernel: [4724028.478675] sd 1:0:0:0: [sdb] Mode Sense: 03 00 00 00
Aug  8 12:41:59 diamond kernel: [4724028.479262] sd 1:0:0:0: [sdb] No Caching mode page found
Aug  8 12:41:59 diamond kernel: [4724028.479271] sd 1:0:0:0: [sdb] Assuming drive cache: write through
Aug  8 12:41:59 diamond kernel: [4724028.496369] sd 1:0:0:2: [sdd] Attached SCSI removable disk
Aug  8 12:41:59 diamond kernel: [4724028.498039] sd 1:0:0:3: [sde] Attached SCSI removable disk
Aug  8 12:41:59 diamond kernel: [4724028.499797] sd 1:0:0:1: [sdc] Attached SCSI removable disk
Aug  8 12:41:59 diamond kernel: [4724028.514518]  sdb: sdb1
Aug  8 12:41:59 diamond kernel: [4724028.518822] sd 1:0:0:0: [sdb] Attached SCSI removable disk

It's super important to identify the right disk. If you write the new image to the wrong disk, you will damage an existing filesystem. In my case the SDcard is /dev/sdb. This matches my setup, "sdb" is the second disk and "sda" is another disk which is present when the laptop is in the docking station. I can verify that sdb is indeed what I expect it to be, by using "fdisk -l /dev/sdb" to see the size and partitions:

Disk /dev/sdb: 29,74 GiB, 31914983424 bytes, 62333952 sectors
Disk model: SD/MMC          
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: 0x00000000

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1        8192 62333951 62325760 29,7G  c W95 FAT32 (LBA)

Brand new disk, it comes with FAT32 by default. The size is 29,74 GiB, which is 32 GB.

openHABian

Next I need the current openHABian release, it's available on the GitHub page. v1.5 in my case. Download the "img.xz" file, afterwards this file should be in your download folder:

-rw-rw-r--  1 ads ads 293348300 Aug  8 12:08 /tmp/openhabian-pi-raspbian-201908050414-gitca0976f-crc6a66b5a1.img.xz

The ".xz" ending shows that the download is using LZMA compression. Recent tar versions on Linux can handle this natively. Otherwise the "xz-utils" package can handle these kind of files.

Installation

Putting this all together, I'm using "dd" to write the uncompressed image to the SDcard. Uncompression happens on the fly, "unxz" is emitting the uncompressed image to STDOUT and "dd" is using this stream as input:

unxz < /tmp/openhabian-pi-raspbian-201908050414-gitca0976f-crc6a66b5a1.img.xz | dd bs=4M conv=fsync status=progress of=/dev/sdb

The "status" flag is not necessary, but shows a nice progress report. The "fsync" ensures that everything is written to disk before "dd" exits.

2193997824 bytes (2,2 GB, 2,0 GiB) copied, 70 s, 31,3 MB/s
0+235916 records in
0+235916 records out
2197815296 bytes (2,2 GB, 2,0 GiB) copied, 141,059 s, 15,6 MB/s

Time to boot the Raspberry Pi and look after the Playbooks ...

Trackbacks

No Trackbacks

Comments

Display comments as Linear | Threaded

No comments

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
To leave a comment you must approve it via e-mail, which will be sent to your address after submission.
Form options