Linux 7 Storage Concepts: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 39: Line 39:
===Hard Link===
===Hard Link===


===Symbolic Link===


Redirected at open() time.


==File System Types==
==File System Types==

Revision as of 20:13, 3 April 2018

Internal

Block

A block is a fixed-size chunk of data. The size is determined by the kernel, and depends on the system's architecture and the filesystem being used. The block size the kernel uses to access a specific device can be obtained with:

blockdev --getbsz /dev/sda2

Sector

A sector is a small block whose size is usually determined by the underlying hardware.

Block Devices

Unlike a character device, a block device provides random access to fixed-size blocks of data. On Linux, the block devices can be either "mapped", offering access to a logical volume in a volume group (/dev/mapper/VolGroup00-LogVol01), or "static", which is a traditional storage volume (/dev/sdba).

Block Driver

A block driver provides access to block devices - devices that transfer randomly accessible data in fixed-size blocks. These are primarily hard drives. Aside providing user space processes read and writing access to block storage, the block drivers act as conduit between the core memory of the system and secondary storage, therefore they can be seen as making part of the virtual memory subsystem.

Much of the design of the block layer is centered on performance, as the entire system cannot run well if the block I/O subsystem is not well tuned.

Alos see:

NFS Driver

File System

File System Concepts

https://web.archive.org/web/20150509080554/http://www.ibm.com/developerworks/linux/library/l-linux-filesystem/

inode

An inode is a file system data structure that describes a filesystem object such as a file or directory. It has an unique identifier. Each inode stores file attributes (creation, last modification and last access time, permissions, etc.) and disk location of the fileystem object data. The inode does not store the name if the file, nor the file data.

The name of the file

Hard Link

Symbolic Link

Redirected at open() time.

File System Types

ext4

An ext4 filesystem is created with mkfs.ext4.

Journal Recovery is done with e2fsck in userspace at boot time.

Metadata Error Behavior. When metadata errors are encountered, the behavior is configurable. The default is to continue.

Resize

XFS

XFS

Device Mapper

Device Mapper is a kernel-based framework for volume management. It has thin provisioning and snapshotting capabilities. Used as one of Docker storage backend options.

Loopback Device

A loopback device is an O/S mechanism that allows exposing a file as a block device. The loopback devices are usually named /dev/loop0, /dev/loop1, etc.

Loopback devices are managed with losetup, which can associate a loopback device with a file:

losetup /dev/loop0 ./lvm0.img

Once setup, the loopback devices should be reported as block devices by lsblk.

Loopback devices are used, among other things, to set up storage with Docker devicemapper driver.

External resources:

Subjects