3. The default disk partitions

The Sipwise C5 supports the modern concept of installing several releases side by side. The ability to switch between the releases simplifies software upgrades and enables rollbacks. You can find all the benefits here here.

The new partitioning logic is simple. The code of services (e.g., kamailio, MariaDB) is separated from the data (e.g., databases, CDR files) generated and processed by the code, and is located in a different partition of the disk. Additionally, there are two partitions for code with different services versions. This way, the version of the code can be switched very quickly, just by rebooting the system. The data partition will be the same for both versions of the code, and it will always be mounted and ready to be used before the services start.

New partition layout:

  sda                   8:0    0    xG  0 disk             # Your disk with size X Gb
  |-sda1                8:1    0    1M  0 part             # BIOS legacy boot
  |-sda2                8:2    0  486M  0 part  /boot/efi  # UEFI boot
  `-sda3                8:3    0    yG  0 part             # LVM partition
    `-md0               9:0    0    yG  0 raid1            # SW RAID (if requested)
      |-ngcp-root     253:0    0   10G  0 lvm   /          # 'code' partition
      |-ngcp-fallback 253:1    0   10G  0 lvm              # 'fallback' partition
      `-ngcp-data     253:3    0    zG  0 lvm   /ngcp-data # 'data' partition
                                                           # unassigned space

The installer can only boot from GPT and does not support ms-dos partitions anymore. The legacy BIOS systems can also boot from GPT, while (U)EFI systems can only boot from GPT (and not from BIOS/legacy boot).