Como montar uma imagem .iso no Windows 8.1 marcada como arquivo esparso?

5

Eu baixei algumas iso e tentei montá-lo, mas o Windows 8.1 recusou.

Então eu encontrei este post que aconselha a copiar o .iso. Sim e funciona.

As pessoas que comentaram disseram que deveria ser possível desbloquear o iso.

Infelizmente, não existe essa opção nas Propriedades por algum motivo.

Percebi que o arquivo original foi listado em Detalhes - > Atributos: AP e a cópia que pode ser montada: Detalhes - > Atributos: A.

Qual é o significado desse atributo P sobre o qual não consigo encontrar nada?

Qual seria a maneira correta de montar esses arquivos iso no Windows 8.1?

    
por Zingam 29.09.2014 / 17:28

2 respostas

6

Aqui está como é feito facilmente: Alterar dispersão atributo de um arquivo .iso no Windows 8.1 Também a resposta de DavidPosthill me ajudou a identificar o problema e a encontrar uma solução alternativa.

De um prompt de comando elevado (administrador), use este utilitário:

fsutil Performs tasks that are related to file allocation table (FAT) and NTFS file systems, such as managing reparse points, managing sparse files, or dismounting a volume. If it is used without parameters, fsutil displays a list of supported subcommands.

Exemplo

Definir sinalizador esparso como 0 definirá o arquivo como NÃO sobressalente e, em seguida, você poderá montá-lo.

fsutil sparse setflag <filename> 0|1

Isso consultará o sinalizador

fsutil sparse queryflag <filename>

    
por 06.12.2014 / 14:53
4

Qual é o significado desse atributo P?

extended attributes:

E Encrypted

C Compressed (128:read-only)

I Not content-indexed

L Symbolic link/Junction (64:read-only)

N Normal (0: cannot be used for file selection)

O Offline

P Sparse file

T Temporary

Fonte attrib - Exibe ou altera os atributos do arquivo.

O Windows 8 se recusa a montar a imagem .iso porque a imagem é 'esparsa'

Windows .iso mounting does not like 'sparse' files. I had used Acronis backup to backup my original .iso files and this DOES use sparse files. You can check if a file is 'sparsed' by looking at the files details in properties. The 'P' in the attributes represents a sparse file. See the screenshot below.

The result? When I restored my .iso images I could no longer mount them.

The simplest solution I have found is to just copy the .iso to a new file - this seems to create the new file without the sparse flag set.

Fonte O Windows 8 se recusa a montar imagem .iso porque a imagem é 'esparsa'

Erro de montagem ISO no Windows 8 & Windows 2012

The issue behind failing to mount ISO files is, it has got a sparse flag set. You can read more about this particular file attribute at this MSDN page(http://msdn.microsoft.com/en-us/library/windows/desktop/aa365564%28v=vs.85%29.aspx). In a nutshell, this sparse flag is facility supported in NTFS file system that enables efficient use of disk space by not writing zeros in a data stream. Instead it maintains an internal list containing the location zeros in file.

So the solution is to remove that sparse flag to mount the ISO. At this moment, I am not clear why the mounting will not work if this flag is set. May be because CDFS file system cannot understand this flag and hence the errors.

There are two ways you can remove the sparse flag:

  1. Just by simple copy & paste: You can copy & paste the ISO file into same folder or different folder. The sparse flag will be removed when a copy of this file is made. You can use the copied file to mount as CD/DVD drive
  2. Remove the sparse flag programmatically: You can use below approach to remove the sparse flag on one of multiple files.
function Remove-SparseFlag {            
[cmdletbinding()]            
param(            
[string]$FileName            
)            
    if(!(Test-Path $FileName)) {             
        Write-Host "$FileName No such filename present"            
        return            
    }            

    $Attribs = [System.IO.File]::GetAttributes($FileName)            
    if($Attribs.HasFlag([System.IO.FileAttributes]::SparseFile)) {            
        Invoke-Expression -Command "fsutil sparse setflag '$FileName' 0"            
        if($LASTEXITCODE -ne 0) {            
            Write-host "Failed to remove sparse flag on $FileName"            
        } else {            
            Write-Host "Successfully removed the sparse flag on $FileName"            
        }            
    } else {            
        Write-Host "$FileName has no sparse flag set"            
    }            
}

Fonte Erro de montagem ISO no Windows 8 & Windows 2012

Leitura Adicional

por 29.09.2014 / 18:24