... and more ...

I wrote some small descriptions of my other favorites, but moved them into this page in an attempt to reduce the clutter on my home page.

man

Program manuals available without a search engine.

View manual for programs / configuration files

View a specific section’s manual for pipe

Tips

When you install a new program with pacman or apt, it will normally include manuals for its executables, config files, and more.

If you are unsure of how to use an executable, consider checking if it has a manpage with

man <executable name>

The same goes for configuration files.

man <config file name>

The manpage will include information on how to use the executable like command-line parameters, expected inputs/outputs, and exit codes.

Section Numbers

per man 1 man, where 1 is the section number

The  table  below shows the section numbers of the manual followed by the
types of pages they contain.

1   Executable programs or shell commands
2   System calls (functions provided by the kernel)
3   Library calls (functions within program libraries)
4   Special files (usually found in /dev)
5   File formats and conventions, e.g. /etc/passwd
6   Games
7   Miscellaneous (including macro packages and conventions), e.g man(7), groff(7)
8   System administration commands (usually only for root)
9   Kernel routines [Non standard]

Pager

Manuals will be paged using the pager specified in $MANPAGER or $PAGER. On a normal install, this is less

head and tail

Simple, extensible file previewers.

Beginning of a File - head

End of a File - tail

Following Output

tail also comes with follow output feature. This can be useful when watching logging/output files written to in real-time by other programs.

See Also

less

A lightweight file pager

Open a file for paging

Page a command with lots of output

Hotkeys

less hotkeys are similar to those in vim

See also

df

df displays disk limits (size, used, avail) of mounted filesystems.

Typically, the most important mountpoints to consider are root (/) and boot (/boot)

Human-Readable Form (-h)

$ df -h
Filesystem      Size  Used Avail Use% Mounted on
dev             7.8G     0  7.8G   0% /dev
run             7.8G  1.3M  7.8G   1% /run
/dev/nvme0n1p3  457G   32G  402G   8% /
tmpfs           7.8G   22M  7.8G   1% /dev/shm
tmpfs           7.8G  1.2M  7.8G   1% /tmp
/dev/nvme0n1p1  511M  104M  408M  21% /boot
tmpfs           1.6G   12K  1.6G   1% /run/user/1000

Default Form

$ df
Filesystem     1K-blocks     Used Available Use% Mounted on
dev              8104460        0   8104460   0% /dev
run              8115748     1232   8114516   1% /run
/dev/nvme0n1p3 478232320 33257164 420608820   8% /
tmpfs            8115748    22396   8093352   1% /dev/shm
tmpfs            8115748     1192   8114556   1% /tmp
/dev/nvme0n1p1    523248   105996    417252  21% /boot
tmpfs            1623148       12   1623136   1% /run/user/1000

See Also

fdisk

fdisk gives you full control when partitioning hard-drives, ssds, flash-drives, and other disks.

List Available Disks and Partitions

$ sudo fdisk -l
[sudo] password for joe: 
Disk /dev/nvme0n1: 476.94 GiB, 512110190592 bytes, 1000215216 sectors
Disk model: PM961 NVMe SAMSUNG 512GB                
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: gpt
Disk identifier: 1D01CEB6-E01F-4B03-9C66-A4A697097A0E

Device            Start        End   Sectors   Size Type
/dev/nvme0n1p1     2048    1050623   1048576   512M EFI System
/dev/nvme0n1p2  1050624   26216447  25165824    12G Linux swap
/dev/nvme0n1p3 26216448 1000214527 973998080 464.4G Linux root (x86-64)

Format a Disk

Common situations to want to format a disk with fdisk include

NOTE: While fdisk is a powerful tool, keep in mind that it will let you format and wipe your disks more easily than a GUI tool. Use care so you don’t accidentally delete your data!

NOTE: Make sure to double-check you are modifying the correct disk before applying changes.

$ sudo fdisk /dev/sda
...
Command (m for help):

Once your partitions are set up, you may want to use mkfs to install a filesystem on it

See also

lsblk

lsblk gives an overview of the disks available on the system

Example

My NAS has 6 6TB hard-disks and 1 512MB NVMe

worker@nas $ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda           8:0    0   5.5T  0 disk 
├─sda1        8:1    0     2G  0 part 
└─sda2        8:2    0   5.5T  0 part 
sdb           8:16   0   5.5T  0 disk 
├─sdb1        8:17   0     2G  0 part 
└─sdb2        8:18   0   5.5T  0 part 
sdc           8:32   0   5.5T  0 disk 
├─sdc1        8:33   0     2G  0 part 
└─sdc2        8:34   0   5.5T  0 part 
sdd           8:48   0   5.5T  0 disk 
├─sdd1        8:49   0     2G  0 part 
└─sdd2        8:50   0   5.5T  0 part 
sde           8:64   0   5.5T  0 disk 
├─sde1        8:65   0     2G  0 part 
└─sde2        8:66   0   5.5T  0 part 
sdf           8:80   0   5.5T  0 disk 
├─sdf1        8:81   0     2G  0 part 
└─sdf2        8:82   0   5.5T  0 part 
nvme0n1     259:0    0 465.8G  0 disk 
├─nvme0n1p1 259:1    0   512M  0 part /boot/efi
├─nvme0n1p2 259:2    0 464.3G  0 part /
└─nvme0n1p3 259:3    0   976M  0 part [SWAP]