Filesystems: Difference between revisions

From Alpine Linux
(moved Formatting partitions to Setting_up_disks_manually page)
 
(10 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Documentation how to use the Alpine distro to format HD/Floppy/Other.
Alpine Linux supports a number of filesystems.  
 
== Filesystem Tools ==


= Install =
Alpine has multiple storage media formatting packages available. Different packages/programs are used to format different types of filesystems.
Alpine has multiple storage media formatting packages available. Different packages/programs are used to format different types of filesystems.
* {{Pkg|btrfs-progs}} - For [[Btrfs]]
* {{Pkg|dosfstools}} - For FAT12/FAT16/FAT32
* {{Pkg|e2fsprogs}} - For ext3/ext4
* {{Pkg|f2fs-tools}} - For F2FS
* {{Pkg|jfsutils}} - For JFS
* {{Pkg|ntfs-3g}} - For NTFS (Note: ntfs-3g is a FUSE driver)
* {{Pkg|xfsprogs}} - For XFS


= Format =
{| cellpadding="5" border="2" class="wikitable"
Here are some examples on how to use the formatting tools:
|-
! Tool
! Filesystem
! Brief Notes
|-
| {{Pkg|btrfs-progs}}
|[[Btrfs]]
|
|-
|{{Pkg|dosfstools}}
|FAT12/FAT16/FAT32
|
|-
|{{Pkg|e2fsprogs}}
|ext2/ext3/ext4
|ext4 is current default
|-
|{{Pkg|f2fs-tools}}
|[[F2FS]]
|
|-
|{{Pkg|hfsprogs}}
|XFS HFS/HFS+
|Apple/Mac products
|-
|{{Pkg|jfsutils}}
|JFS
|-
|{{Pkg|ntfs-3g}}
|NTFS
|Microsoft/Windows FUSE driver
|-
|{{Pkg|xfsprogs}}
|XFS
|
|}
 
== Swap Partition ==
 
Swap space is used for two purposes
# Extend the virtual memory beyond the installed physical memory (RAM) to avoid [https://en.wikipedia.org/wiki/Out_of_memory Out of memory] condition 
# Suspend-to-disk or Hibernation support
 
Below Instructions explain how to use a seperate partition for swap:
 
The following commands prepares the unmounted partition (/dev/sda2) for swap space, activates the prepared swap space and starts the swap service to manage swap space immediately:
 
# mkswap /dev/sda2
# swapon /dev/sda2
# rc-service swap start
 
The command {{Codeline|free -m}} will show how much swap space is available (in MB).
 
To make the swap persistent across reboots, enable automatic start of swap:
 
# echo -e "/dev/sda2 none swap sw 0 0" >> /mnt/etc/fstab
# rc-update add swap
 
If you prefer maximum speed, you don't need configure any raid devices for swap. Just add 2 swap partitions on different disks and linux will stripe them automatically. The downside is that the moment one disk fails, the system will go down. For better reliability, put swap on RAID1.
 
{{Tip|Instead of using a separate partition for swap, [[Zram|zram]] based swap file can be used.}}
 
== Encrypted swap ==
The below steps explains the steps to enable crypt-swap or Encrypted swap parition.


{{Note|'''/dev/sda1''' is used as a example}}
Edit the file {{Path|/etc/conf.d/dmcrypt}} to enable crypt-swap. '''Ensure that source device name is correct.''' :
{{Cat|/etc/conf.d/dmcrypt|
swap{{=}}crypt-swap
source{{=}}'/dev/nvme0nXXX'
}}


==== btrfs-progs ====
To use dmcrypt, start dmcrypt service and enable swap immediately:
{{Cmd|# mkfs.btrfs /dev/sda1}}
# /etc/init.d/dmcrypt start
# swapon /dev/mapper/crypt-swap


==== dosfstools ====
To make the encrypted swap persistent across reboots, enable automatic start of encryption & swap:
{{Cmd|# mkfs.vfat /dev/sda1}}


==== e2fsprogs ====
# rc-update add dmcrypt
{{Cmd|# mkfs.ext2 /dev/sda1}}
# rc-update add swap
{{Cmd|# mkfs.ext3 /dev/sda1}}
{{Cmd|# mkfs.ext4 /dev/sda1}}


==== f2fs-tools ====
To enable automatic swapon, add the relevant entry to {{Path|/etc/fstab}}


{{Cmd|# mkfs.f2fs /dev/sda1}}
{{Cmd|# echo /dev/mapper/crypt-swap swap swap defaults 0 0 >> /etc/fstab}}


= Partitions =
{{Note|The above instructions will reset/re-encrypt swap on every boot and thus no suspend to disk works with it.}}
If you need to change or make a partition table on a Hard Drive you want to format, you can use:


==== fdisk ====
== See Also ==
{{Cmd|# fdisk /dev/sda}}


==== cfdisk ====
* [https://www.nico.schottelius.org/blog/2024-10-10-how-to-enable-encrypted-swap-in-alpine-linux/ How to enable encrypted swap in Alpine Linux]
{{Cmd|# cfdisk /dev/sda}}


[[Category:Storage]]
[[Category:Storage]]
[[Category:Installation]]
[[Category:Filesystems]]

Latest revision as of 05:18, 6 November 2024

Alpine Linux supports a number of filesystems.

Filesystem Tools

Alpine has multiple storage media formatting packages available. Different packages/programs are used to format different types of filesystems.

Tool Filesystem Brief Notes
btrfs-progs Btrfs
dosfstools FAT12/FAT16/FAT32
e2fsprogs ext2/ext3/ext4 ext4 is current default
f2fs-tools F2FS
hfsprogs XFS HFS/HFS+ Apple/Mac products
jfsutils JFS
ntfs-3g NTFS Microsoft/Windows FUSE driver
xfsprogs XFS

Swap Partition

Swap space is used for two purposes

  1. Extend the virtual memory beyond the installed physical memory (RAM) to avoid Out of memory condition
  2. Suspend-to-disk or Hibernation support

Below Instructions explain how to use a seperate partition for swap:

The following commands prepares the unmounted partition (/dev/sda2) for swap space, activates the prepared swap space and starts the swap service to manage swap space immediately:

# mkswap /dev/sda2
# swapon /dev/sda2 
# rc-service swap start

The command free -m will show how much swap space is available (in MB).

To make the swap persistent across reboots, enable automatic start of swap:

# echo -e "/dev/sda2 none swap sw 0 0" >> /mnt/etc/fstab
# rc-update add swap 

If you prefer maximum speed, you don't need configure any raid devices for swap. Just add 2 swap partitions on different disks and linux will stripe them automatically. The downside is that the moment one disk fails, the system will go down. For better reliability, put swap on RAID1.

Tip: Instead of using a separate partition for swap, zram based swap file can be used.

Encrypted swap

The below steps explains the steps to enable crypt-swap or Encrypted swap parition.

Edit the file /etc/conf.d/dmcrypt to enable crypt-swap. Ensure that source device name is correct. :

Contents of /etc/conf.d/dmcrypt

swap=crypt-swap source='/dev/nvme0nXXX'

To use dmcrypt, start dmcrypt service and enable swap immediately:

# /etc/init.d/dmcrypt start
# swapon /dev/mapper/crypt-swap

To make the encrypted swap persistent across reboots, enable automatic start of encryption & swap:

# rc-update add dmcrypt
# rc-update add swap

To enable automatic swapon, add the relevant entry to /etc/fstab

# echo /dev/mapper/crypt-swap swap swap defaults 0 0 >> /etc/fstab

Note: The above instructions will reset/re-encrypt swap on every boot and thus no suspend to disk works with it.

See Also