AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 1168620
Accepted
Jonathan Gilbert
Jonathan Gilbert
Asked: 2024-12-07 21:08:40 +0800 CST2024-12-07 21:08:40 +0800 CST 2024-12-07 21:08:40 +0800 CST

Listar setores associados a um arquivo em um volume exFAT

  • 772

Tenho um dispositivo que está falhando. Usando ddrescue, recuperei tudo, exceto cerca de 500 KB em 83 regiões. O arquivo de mapa me informa o deslocamento bruto e o comprimento de cada região perdida. Quero descobrir quais arquivos são afetados. Como posso obter uma lista de deslocamentos de setor físico associados a um arquivo em um volume exFAT?

exfat
  • 2 2 respostas
  • 321 Views

2 respostas

  • Voted
  1. Best Answer
    Jonathan Gilbert
    2024-12-07T23:08:39+08:002024-12-07T23:08:39+08:00

    Acabei escrevendo meu próprio utilitário. Não consegui localizar nada pré-existente. Ele foi escrito em C# contra .NET 8+ e o código-fonte está aqui:

    https://github.com/logiclrd/FindAffectedFilesExfat

    Captura de tela

    • 6
  2. mkay
    2024-12-10T05:57:18+08:002024-12-10T05:57:18+08:00

    Em termos de esforço despendido, acho que há uma maneira melhor de resolver o problema central do que a sugerida no título da pergunta (listar os setores de um volume e tentar determinar a qual arquivo cada um deles pertence). Parece que o problema central é o seguinte:

    Tenho um dispositivo que está falhando. [...] Quero descobrir quais arquivos são afetados.

    Se você quiser apenas obter uma lista de arquivos afetados pela falha do dispositivo, não é necessário reunir um mapeamento setor por setor dos locais de arquivos no dispositivo. Como você já tem o conteúdo da unidade com falha imageado para outro dispositivo ou um arquivo de imagem e retém o mapfile produzido por ddrescueno processo, você pode usar o modo de preenchimento de ddrescuepara marcar todos os setores não recuperados na imagem com alguma string que não aparece em nenhum dos arquivos no disco com falha, então monte a imagem como um sistema de arquivos e execute um simples grep -r -l 'your_unique_marker_string'sobre ela. Isso fornecerá a você uma lista limpa de arquivos danificados e nada mais; já que a busca real por arquivos é feita no nível do sistema de arquivos, quaisquer setores não recuperados que não correspondem a nenhum arquivo são convenientemente ignorados sem nenhum esforço de sua parte.

    Para invocar ddrescueneste modo, você faria assim:

    ddrescue --fill-mode=l- marker_string.txt image_file.img map_file.map
    

    onde marker_string.txtestá o arquivo contendo a string exclusiva com a qual você quer preencher os setores não recuperados. Note que você não pode especificar a string diretamente na linha de comando.

    A --fill-modeopção pega o(s) caractere(s) de status dos setores a serem preenchidos como argumento, conforme apresentado no mapfile. Se o mapfile contiver blocos com status diferentes de +(leitura bem-sucedida) e -(setores defeituosos conhecidos), você vai querer adicioná-los à lista do modo de preenchimento (não o, +é claro!).

    A letra lno argumento da --fill-modeopção produz dados de localização (número do setor) no início de cada setor marcado. É opcional, mas há pouca razão para omiti-lo; você pode, por exemplo, usar os dados de localização para construir um mapfile de domínio para restringir futuras tentativas de resgate a setores contendo dados de arquivo, o que pode ser útil se a unidade com falha tiver muito espaço não utilizado agora se apresentando como setores defeituosos.

    Eu achei esse método muito eficaz e o usei em várias ocasiões com bons resultados. Ele tem a vantagem significativa de ser independente do sistema de arquivos usado. Ele depende do sistema de arquivos estar saudável o suficiente para poder ser montado (ou seja, que estruturas suficientes do sistema de arquivos tenham sido resgatadas); minha experiência é com NTFS e descobri que o nativo do Windows CHKDSKé bastante eficaz em repará-lo em uma condição montável. Eu esperaria o mesmo resultado de qualquer sistema de arquivos de journaling moderno e suas ferramentas de reparo nativas.

    • 1

relate perguntas

  • O sistema de arquivos exFAT é uma boa opção para HDD USB3 conectado a um servidor NAS doméstico no Raspbian? [fechado]

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve