Disks
A disk is a block device: the kernel reads and writes it in fixed-size blocks. It names each disk in /dev. sda is the first, sdb the second. Here sda holds the system and sdb is new and empty.
lsblk asks the kernel for every block device and prints them as a tree. sda has one partition, sda1, mounted at /. sdb has no partitions yet. -n drops the heading; -o picks the columns.
Preparing a new disk
A partition is a slice of a disk, listed in a partition table at its start. sfdisk writes a GPT table to sdb with one partition filling it: sdb1. Careful: this replaces any old table. Check the name first.
A new partition is only empty blocks. mkfs.ext4 writes an ext4 filesystem onto sdb1: tables that track files, folders and free space, plus a folder called lost+found. Careful: it erases whatever sdb1 held.
Mounting
Linux has no drive letters. Every file sits in one tree of folders that starts at /, the root. Here sda1 is mounted at /, so /home, /mnt and everything else is stored on sda1.
mkdir makes an empty folder, /mnt/data. mount asks the kernel to attach sdb1's filesystem there. Now /mnt/data shows the top folder of sdb1: ls lists lost+found. The folder is called a mount point.
Using it
Copy notes.txt from your home folder into /mnt/data. You only name folders. The kernel sees that /mnt/data is a mount point, so it reads the bytes from sda1 and writes them to sdb1.
df -h reports how full a filesystem is. Asked about /mnt/data, it names the device behind that folder, /dev/sdb1, with its size, used and free space. -h prints sizes in readable units such as G.
A mount lasts until shutdown. To mount sdb1 at every boot, add a line to /etc/fstab: which filesystem, where, its type, options and two numbers. blkid prints sdb1's UUID, which stays put even if disk names change.
sudo umount /mnt/data detaches sdb1 (the command really is umount). The folder is empty again, but notes.txt is safe on sdb1. Linux refuses while a program is still using files there.
What happens
;; step 1/10 · disks block device storage read and written in blocks the kernel names each disk in /dev: /dev/sda first disk (the system) /dev/sdb second disk (new, empty) NVMe disks: /dev/nvme0n1, /dev/nvme1n1 ...
sfdisk and mkfs destroy what is on the device you name. Run lsblk first, make sure the name is the new, empty disk, and never point them at a mounted partition. The machine is an example with two disks, sda and sdb. Real lsblk output often also lists loop devices and the CD drive (sr0), and the card leaves out the sizes because they depend on your disk.