Recriando informações de cota do projeto XFS

1

Nós recriamos um servidor de arquivos, que tinha um sistema de arquivos XFS usando cotas de projeto residentes em uma SAN. Infelizmente, nos esquecemos de fazer backup de / etc / projects e / etc / projid no servidor antes de reinstalar. O sistema de arquivos XFS em si e as informações de cota armazenadas nele são todos Ok AFAICS. Existe alguma maneira de descobrir os IDs do projeto dos diretórios no disco, para que possamos recriar o / etc / {projects, projid}?

Para esclarecer, vamos dizer que o sistema de arquivos XFS está montado em / export / xfs e contém diretórios / export / xfs / foo e / export / xfs / bar. Então, precisamos ter as seguintes entradas em / etc / projects

NN:/export/xfs/foo
MM:/export/xfs/bar

e as seguintes entradas em / etc / projid

foo:NN
bar:MM

Então, como recuperamos os valores de NN e MM, que são armazenados no disco?

    
por janneb 08.06.2015 / 09:32

1 resposta

1

Bem, desde que ninguém soube a resposta, eu tive que descobrir algo eu mesmo. O seguinte parece funcionar:

Faça um palpite (NN) para um ID de projeto para um dos diretórios do projeto. Então corra

xfs_quota -x -c "project -c -p /export/xfs/projdir -d 0 NN"

Se o seu palpite estava correto, você deve ver a saída como

Checking project NN (path /export/xfs/projdir)...

Se o seu palpite estava incorreto, você deve ver a saída como

/export/xfs/projdir - project identifier is not set (inode=MM, tree=NN)

onde NN é seu palpite e o ID do projeto correto é MM. Então, com base nisso, você pode preencher / etc / projects e / etc / projid para o diretório do projeto. Em seguida, repita para todos os diretórios do projeto no sistema de arquivos (script para automatizar esta esquerda como um exercício para o leitor).

    
por 15.06.2015 / 11:57

Tags