Como posso visualizar os nomes de arquivo com distinção entre maiúsculas e minúsculas dos volumes iso9660 / Joliet + UCS-3?

2

Eu tenho um ISO que estou tentando usar para instalar software via Wine. Eu tenho o ISO montado como um dispositivo de loopback. O instalador do Windows continua reclamando que não pode localizar arquivos CAB específicos e me pede para localizá-los. O nome do arquivo que o software instalador me pede para localizar tem maiúsculas e minúsculas, mas quando eu monto o ISO no Linux, todas as listagens de diretório mostram os arquivos como todos em minúsculas. Se eu definir -o check=relaxed quando eu montar o iso, então eu posso pedir por arquivos em um caso misto e o Linux irá 'encontrá-los'. Mas se eu fizer uma listagem de diretórios, eu ainda fico com letras minúsculas.

Eu acho que o pacote instalador do Windows está fazendo uma lista de diretórios ou por qualquer motivo, ele está recebendo uma versão minúscula do nome do arquivo que está esperando.

Estou pensando que há vários caminhos a seguir:

  1. Faça com que o Linux mostre os nomes de arquivos com letras maiúsculas e minúsculas à medida que são codificados na extensão Joliet
  2. Extraia o ISO em um sistema de arquivos Linux nativo de uma maneira que preserve o invólucro original
  3. Encontre uma cópia do Windows e use-a para copiar os arquivos para um sistema de arquivos nativo do Windows que o Linux também pode ler e faz distinção entre maiúsculas e minúsculas (NTFS).
  4. Algo que envolve o vinho.

Alguns comandos de exemplo:

% isoinfo -d -i example.iso
...
Joliet with UCS level 3 found
NO Rock Ridge present

% # When using isoinfo, filenames are all caps
% isoinfo -f -i example.iso
DIRNAME/DIRNAME/LONG_FILE_NAME.CAB

% # When using ls, filenames are all lowercase
% ls /mnt/iso/dirname/dirname
long_file_name.cab
    
por Huckle 11.05.2016 / 06:16

1 resposta

-1

Você pode começar com isoinfo -J -ls para listar os nomes Joliet em vez dos nomes padrão ISO-9660 , mas isso gera uma saída mal legível.

Um resultado mais legível é obtido com isoinfo -J -find -ls , pois isso apresenta a árvore de diretórios de maneira mais usual.

Você também pode extrair todos os arquivos de uma imagem ISO usando: isoinfo -J -X e, se desejar extrair um número selecionado de arquivos, poderá usar isoinfo -J -X -find -path <glob-pattern> . Veja a página find man para mais informações.

Arquivos únicos podem ser extraídos para stdout usando isoinfo -J -x pathname . Mas note que você precisa combinar corretamente o nome do caminho na imagem do sistema de arquivos.

Observe que a opção -find foi adicionada em 2010, então você precisa de uma versão intermediária recente de isoinfo .

    
por 11.05.2016 / 11:55