Sistema de arquivos

Da Wikipedia (adaptado):

Em computação, sistema de arquivos é a forma de organização de dados em algum meio de armazenamento de dados em massa. Ele controla como os dados são armazenados e recuperados, possibilitando ao sistema operacional decodificar os dados armazenados e lê-los ou gravá-los. Sem um sistema de arquivos, as informações colocadas em um meio de armazenamento seriam um grande corpo de dados, sem nenhuma maneira de dizer onde uma parte da informação termina e a próxima começa. Ao separar os dados em pedaços e dar um nome a cada peça, a informação é facilmente isolada e identificada. Tomando seu nome a partir do modo como os sistemas de informação baseados em papel são nomeados, cada grupo de dados é chamado de "arquivo".

Existem muitos tipos diferentes de sistemas de arquivos. Cada um tem estrutura e lógica diferentes, propriedades de velocidade, flexibilidade, segurança, tamanho e muito mais.

Arquivos e diretórios são colocados no topo do sistema de arquivos, portanto, é comum referir-se à própria estrutura de arquivos/diretórios como " sistema de arquivos". No GNU/Linux, o Padrão de Hierarquia de Sistemas de Arquivo (Filesystem Hierarchy Standard) define o esquema de nomenclatura e hierarquia entre arquivos e diretórios.

Os sistemas de arquivos geralmente ficam em cima partições de disco rígido ou volumes LVM. No Debian, ext4 é o sistema de arquivos padrão para novas instalações.

GNU/Linux pode ser instalado em qualquer sistema de arquivos que suporta algumas construções especiais (permissões de arquivo, links simbólicos e arquivos de dispositivo).

Muitos sistemas de arquivos são diários (journaling), o que significa que são capazes de evitar perda de dados em falhas do sistema ou em falhas de energia.


Montando um sistema de arquivos

No GNU/Linux, o conteúdo de um sistema de arquivos pode ser disponibilizado sob um diretório ao se montar o sistema de arquivos sobre o diretório. Aqui estão algumas maneiras de montar um sistema de arquivos:

Convertendo um sistema de arquivos

Sistemas de arquivo disponíveis no núcleo Linux do Debian

Nota0: Debian HURD e Debian kFreeBSD têm outros sistemas de arquivos.

Nota1: a lista de funcionalidades está incompleta no momento.

Nota2: Esta tabela foi atualizada até o kernel 2.6.28.

Nome do sistema de arquivo

Funcionalidades?

Documentações

Descrição

Distribuições

File systems often used as linux system partition

ext4

R

kDoc

(default filesystem in Debian) Fourth Extended Filesystem with extents

>= Squeeze

ext2

RS

kDoc, WPedia

Second Extended Filesystem

All?

ext3

RS

kDoc, WPedia

Second Extended Filesystem with journaling extensions

All?

ext4dev

R

kDoc

Fourth Extended Filesystem with extents
not for production, in development

Etch-n-Half ~ Lenny

jfs

R

kDoc

The Journaled Filesystem (JFS)

All?

xfs

R

kDoc

SGI XFS Filesystem

All?

reiserfs

R

kDoc

ReiserFS journaled filesystem

All?

Outros sistemas de arquivos

9p

kDoc

Plan 9 9p remote filesystem protocol

All?

adfs

kDoc

Acorn (and Risc OS) Advanced Disc Filing System

All?

affs

I

kDoc

Amiga filesystem support for Linux

All?

apfs

I

kernel module with apfs-dkms

Apple filesystem support for Linux

NEW

kafs

N

kDoc

AFS Client File System

All?

autofs4

old HowTo

Auto-mount filesystems. See autofs

All?

autofs

old HowTo

Auto-mount filesystems. See autofs

All?

befs

I

kDoc

BeOS File System (BeFS) driver

All?

bfs

I

kDoc

SCO UnixWare BFS filesystem for Linux

All?

btrfs

RS

kDoc

B-Tree filesystem

>= Jessie

cifs

N I

kDoc

VFS to access servers complying with the SNIA CIFS Specification e.g. Samba and Windows

All?

coda

kDoc

Coda Distributed File System VFS interface

All?

configfs

kDoc

Simple RAM filesystem for user driven kernel subsystem configuration.

All?

cramfs

kDoc

cram a filesystem onto a small ROM

All?

dlm

kDoc

Distributed Lock Manager

All?

ecryptfs

kDoc

eCryptfs

All?

efs

upstream doc FS HowTo

SGI EFS, Extent File System (Irix <0.6)

All?

fat

I

kDoc

MS & DR DOS FAT filesystem

All?

freevxfs

Doc

Veritas Filesystem (VxFS) driver

All?

fuse

1

kDoc

Filesystem in Userspace (backend for various filesystems)

All?

gfs2

N

kDoc

Global File System

All?

hfs

I

kDoc

Macintosh HFS Filesystem

All?

hfsplus

I

kDoc

HFSPlus / Extended Macintosh Filesystem

All?

hpfs

I

kDoc

High Performance Filesys (OS/2's HPFS)

All?

isofs

CD

kDoc

CD/DVD filesystem (ISO-9660 / ECMA-119)

All?

jbd2

Generic filesystem journal-writing code (for ext4)

Squeeze

jbd

Generic filesystem journal-writing code (for ext2/ext3)

All?

jffs2

MTD

Doc

The Journalling Flash File System, v2

All?

minix

Minix native filesystem. (was used in Linux before ExtFS!)

All?

msdos

I

kDoc

MS-DOS filesystem support

All?

ncpfs

kDoc

Netware NCP network protocol

All?

nfs

N

kDoc

Networks Filesystem

All?

ntfs(depreciated)

I

kDoc

NTFS 1.2/3.x driver - Copyright (c) 2001-2007 Anton Altaparmakov

All?

ocfs2

kDoc

OCFS2 1.3.3

All?

omfs

kDoc

OMFS (ReplayTV/Karma) Optimized MPEG Filesystem

>= Squeeze

qnx4

WPedia

QNX (OS) Filesystem

All?

romfs

kDoc

ROM filesystem. See genromfs

<= Etch

sysv

kDoc

System V, V7 and Coherent and Xenix filesystems

All?

ubifs

MTD

kDoc

UBIFS - UBI File System

=> Squeeze

udf

CD

kDoc

Universal Disk Format Filesystem

All?

ufs

kDoc

Unix filesystem, used in BSDs, SunOS, Nextstep, Openstep...

All?

vfat

I

kDoc

VFAT filesystem support

All?

zfs

upstream doc

The Z File System

=> Stretch (DKMS)

Features Legend :

Dicas:

Sistemas de arquivos FUSE

Você pode obter a lista de sistemas de arquivos suportada através do FUSE observando as dependências reversas do pacote fuse-utils. No momento desta escrita:

Package name

Description

Distributions

aptfs

FUSE filesystem for APT source repositories

All

avfs

virtual filesystem to access archives, disk images, remote locations

All

beaglefs

implements a filesystem representing a live Beagle query

Sid

cryptkeeper

EncFS system tray applet for GNOME

All

curlftpfs

filesystem to access FTP hosts based on FUSE and cURL

All

davfs2

mount a WebDAV resource as a regular file system

All

encfs

encrypted virtual filesystem

All

flickrfs

virtual filesystem for flickr online photosharing service

All

funionfs

user-space directory concatenation

?

fuseext2

File System in User Space - Module for ext2

All

fusefat

File System in User Space - Module for FAT

All

fuseiso

FUSE module to mount ISO filesystem images

All

fuseiso9660

File System in User Space - Module for ISO9660

All

fusesmb

filesystem client based on the SMB file transfer protocol

All

glusterfs-client

clustered file-system

All

gmailfs

Use your GMail account as a filesystem

?

gphotofs

filesystem to mount digital cameras

All

libpam-encfs

PAM module to automatically mount encfs filesystems on login

All

libpam-mount

PAM module that can mount volumes for a user session

All

ltspfs

Fuse based remote filesystem for LTSP thin clients

All

mhddfs

file system for unifying several mount points into one

All

mtpfs

FUSE filesystem for Media Transfer Protocol devices

All

mythtvfs

userspace filesystem client for MythTV

All

ntfs-3g

read/write NTFS driver for FUSE

>= Wheezy

ntfsprogs (depreciated)

tools for doing neat things in NTFS partitions from Linux

All

obexfs

mount filesystem of ObexFTP capable devices

All

plptools

Access EPOC device (Psion PDA) over a serial link

All

pytagsfs

maps media files to an arbitrary directory structure

All

rofs

Read-Only Filesystem for FUSE

All

s3ql

Full-featured file system for online data storage

All

sshfs

filesystem client based on SSH File Transfer Protocol

All

umview-mod-umfuseext2

View-OS in user space - ext2 module for UMFUSE

All

umview-mod-umfusefat

View-OS in user space - FAT module for UMFUSE

All

umview-mod-umfuseiso9660

View-OS in user space - ISO9660 module for UMFUSE

All

unionfs-fuse

Fuse implementation of unionfs

All

wikipediafs

View and edit Wikipedia articles as if they were real files

All

zfs-fuse

implementation of Sun's ZFS filesystem in userspace

>=Squeeze

Sistemas de arquivo especiais

Algumas amostras de caso de uso de sistemas de arquivos especiais:

aufs, unionfs
pode ser usado para montar dois sistemas de arquivos, um em cima do outro. Isso normalmente é usado para montar um ramdisk em cima de um cdrom (apenas para leitura!)... então é virtualmente possível "escrever" e modificar os arquivos (claro, nesta situação os dados são perdidos na reinicialização).
xmount

permite montagem de imagens .vmdk (VMware) e .vdi(VirtualBox).

Veja também

ToDo: Alguns módulos fornecem dois sistemas de arquivos (para mount -t), ou seja, carregar sysv fornece sysv e v7 em /proc/filesystems.


CategorySystemAdministration CategoryStorage

  1. FUSE doesn't provide any filesystem it-self. see 'apt-cache rdepends fuse-utils' (1)