User Tools

Site Tools

한국어

comfilepi:trixie:index

This is an old revision of the document!


ComfilePi Trixie OS

The ComfilePi Trixie OS is derived from the Raspberry Pi's Trixie OS, which itself is derived from Debian's Trixie OS.

The ComfilePi Trixie OS introduces several significant changes to prior OS releases – some introduced by upstream Debian and Raspberry Pi, and some introduced by COMFILE Technology.

If you have an existing solution currently deployed prior OS variants, it is recommended that you do not upgrade to Trixie unless you have a compelling reason to do so. If you are embarking on a new solution, it is recommended that you do upgrade to Trixie.

Upstream Debian Changes

Upstream Raspberry Pi Changes

See the Raspberry Pi Trixie OS announcement.

The Raspberry Pi Trixie OS has adopted cloud-init for first boot initialization, and the latest Raspberry Pi imager has removed the ability to customize custom OS images. Therefore, to customize the OS prior to booting (e.g. changing the default userid/password, adding authorized SSH keys, etc.) please edit the user-data file according the the instructions in the cloud-init documentation

COMFILE Technology Changes

Replace config.txt prior to booting

IMPORTANT! After installing the OS image to the ComfilePi's storage device, and prior to booting for the first time, you MUST replace the config.txt file with the model-specific config.txt file in the bootfs partition. For example, for the CPi-J070WR panel PC, overwrite config.txt with the cpi-j070wr_config.txt file. Some models will not boot, or will not function correctly, without the correct config.txt file.

Partition Layout

Like Bookworm, the ComfilePi Trixie OS now has the following partition layout:

Label Size Mount Point File System Description
bootfs 512MB /boot/firmware FAT32 System firmware (i.e. bootloader, kernel, and configuration)
datafs 1GB /data Ext4 User data partition
rootfs Fills Remaining Space / Ext4 Root file system (i.e. the actual operating system)

This layout was created to make it easier to enable the read-only file system, effectively making the bootfs and rootfs partitions read-only, while still having a place to write data to (i.e. the datafs partition).

If the datafs partition is too small, and your SD card, eMMC, or other storage medium is large enough, you can use gparted, or other disk partitioning utility, to adjust partition sizes as needed. Currently, the rootfs partition must be the last partition of the disk to maintain compatibility with some configuration utilities of the Raspberry Pi.

Read-only File System

After provisioning your ComfilePi with your customizations, it is highly recommended to enable the read-only file system.

  • It protects the bootfs and rootfs file systems from corruption.
  • It increases the longevity of the storage device's flash memory.
  • It provides the ability to withstand an abrupt loss of power without requiring shutdown.

Due to several bugs in the Raspberry Pi read-only file system overlay, for Trixie, we have chosen to mount the file system read-only instead of using an overlay. Like Bookworm, this can be easily enabled via a GUI.

Or, use the following commands:

Enable the read-only file system

sudo cpi-make-readonly
sudo reboot

Disable the read-only file system

sudo cpi-make-readwrite
sudo reboot

Preserving Changes to System Files

If you need a file on the rootfs partition to be read-write even when the read-only file system overlay is enabled, consider one of the following methods:

  1. Disable the read-only file system, and reboot.
  2. Move the file from the rootfs partition to an analogous location on the datafs partition.
  3. Create a symbolic link on the rootfs partition that points to the file on the datafs partition. e.g. ln -s /data/etc/default/locale /etc/default/locale
  4. Reenable the read-only file system and reboot.

Method 2: Bind Mount

A bind mount can also be used to make a file on the datafs partition appear at its original location on the rootfs partition. This is useful when the original path must remain a normal file or directory, or when the application does not work well with symbolic links.

  1. Disable the read-only file system, and reboot.
  2. Copy the file from the rootfs partition to an analogous location on the datafs partition. e.g. cp /etc/default/locale /data/etc/default/locale
  3. Leave the original file in place on the rootfs partition. It will be used as the bind mount target.
  4. Add a bind mount entry to /etc/fstab. For example:
     /data/etc/default/locale /etc/default/locale none bind 0 0 
  5. Reenable the read-only file system and reboot.
  6. After rebooting, /etc/default/locale will appear to be in its original location, but its contents will actually come from /data/etc/default/locale. Changes made to the file will be preserved on the writable datafs partition.
comfilepi/trixie/index.1783056082.txt.gz · Last modified: by mfranklin