O FreeBSD oferece um recurso em conjunto com Atualizações Soft: snapshots do sistema de arquivos.
Os Snapshots de UFS permitem que um usuário crie imagens de sistemas de arquivos especificados e as trate como um arquivo. Os arquivos de snapshot devem ser criados no sistema de arquivos no qual a ação é executada e um usuário pode criar no máximo 20 snapshots por sistema de arquivos. Os snapshots ativos são registradas no superbloco, de modo que são persistentes nas operações de desmontagem e remontagem, juntamente com reinicializações do sistema. Quando um snapshot não é mais necessário, ele pode ser removido usando rm( 1). Embora os snapshots possam ser removidos em qualquer ordem, todo o espaço usado pode não ser adquirido porque outro snapshot possivelmente reivindicará alguns dos blocos liberados.
A flag de arquivo snapshot
não alterável é definida por mksnap_ffs(8) após a criação inicial de um arquivo de snapshot. O unlink(1) cria uma exceção para arquivos de snapshots, pois permite que sejam removidos.
Os snapshots são criados usando mount(8). Para colocar um snapshot de /var
no arquivo /var/snapshot/snap
, use o seguinte comando:
#
mount -u -o snapshot /var/snapshot/snap /var
Como alternativa, use mksnap_ffs(8) para criar o snapshot:
#
mksnap_ffs /var /var/snapshot/snap
É possível encontrar arquivos de snapshots em um sistema de arquivos, como /var
, usando find(1):
#
find /var -flags snapshot
Depois que um snapshot foi criado, ele tem vários usos:
Alguns administradores usarão um arquivo de snapshot para fins de backup, porque o snapshot pode ser transferido para um CDs ou fita.
O verificador de integridade do sistema de arquivos, fsck(8), pode ser executado em um snapshot. Supondo que o sistema de arquivos estava limpo quando foi montado, isso deve sempre fornecer um resultado limpo e imutável.
Executando dump(8) em um snapshot produzirá um arquivo de dump que seja consistente com o sistema de arquivos e o registro de data e hora do snapshot. dump(8) também pode criar um snapshot, criar uma imagem de dump e remover o snapshot em um comando usando -L
.
O snapshot pode ser montado como uma imagem congelada do sistema de arquivos. Para montar o snapshot use mount(8) passando o nome do snapshot /var/snapshot/snap
:
#
mdconfig -a -t vnode -o readonly -f /var/snapshot/snap -u 4
#
mount -r /dev/md4 /mnt
O /var
congelado agora está disponível através de /mnt
. Tudo estará inicialmente no mesmo estado que estava quando o snapshot foi criado. A única exceção é que os snapshots anteriores aparecerão como arquivos com comprimento zero. Para desmontar o snapshot, use:
#
umount /mnt
#
mdconfig -d -u 4
Para obter mais informações sobre softupdates
e snapshots do sistema de arquivos, incluindo documentos técnicos, visite o site do Marshall Kirk McKusick em http://www.mckusick.com/
.
All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/
Questions that are not answered by the
documentation may be
sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.