tar Não é possível mkdir: nenhum desses arquivos

1

Executando o seguinte comando recebo reclamação de erros Não é possível mkdir: Nenhum arquivo ou diretório. Eu acho que tem algo a ver com o \ no nome do caminho. como contornar isso?

Eu corro isso no Centos.

tar xf dpdk-17.02.tar.xz
tar: dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000\:01\:00.0: Cannot mkdir: No such file or directory
tar: dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000\:01\:00.0: Cannot mkdir: No such file or directory
tar: dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000\:01\:00.0/class: Cannot open: No such file or directory
tar: dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000\:01\:00.0: Cannot mkdir: No such file or directory
tar: dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000\:01\:00.0/config: Cannot open: No such file or directory
tar: dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000\:01\:00.0: Cannot mkdir: No such file or directory
tar: dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000\:01\:00.0/consistent_dma_mask_bits: Cannot open: No such file or directory

Eu tentei strace para obter mais detalhes e aqui está a saída em um dos erros:

mkdirat(AT_FDCWD, "dpdk-17.02", 0755)   = -1 EEXIST (File exists)
mkdirat(AT_FDCWD, "dpdk-17.02/app", 0755) = -1 EEXIST (File exists)
mkdirat(AT_FDCWD, "dpdk-17.02/app/test", 0755) = -1 EEXIST (File exists)
mkdirat(AT_FDCWD, "dpdk-17.02/app/test/test_pci_sysfs", 0755) = -1 EEXIST (File exists)
mkdirat(AT_FDCWD, "dpdk-17.02/app/test/test_pci_sysfs/bus", 0755) = -1 EEXIST (File exists)
mkdirat(AT_FDCWD, "dpdk-17.02/app/test/test_pci_sysfs/bus/pci", 0755) = -1 EEXIST (File exists)
mkdirat(AT_FDCWD, "dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices", 0755) = -1 EEXIST (File exists)
mkdirat(AT_FDCWD, "dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000:01:00.0", 0755) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "dpdk-17.02/app/test/test_pci_sysfs/bus/pci/devices/0000:01:00.0", 0x7ffe85312de0, 0) = -1 ENOENT (No such file or directory)
write(2, "tar: ", 5)                    = 5
write(2, "dpdk-17.02/app/test/test_pci_sys"..., 79) = 79
write(2, ": No such file or directory", 27) = 27
write(2, "\n", 1)                       = 1
write(2, "tar: ", 5)                    = 5
write(2, "dpdk-17.02/app/test/test_pci_sys"..., 85) = 85
    
por Kamyar Souri 23.02.2017 / 19:25

2 respostas

1

Isso pode ser devido a links simbólicos. Pode valer a pena olhar para o que o tar está fazendo via 'strace' (simplesmente prefixar o comando tar com strace ).

Você deve ver na saída strace o que o tar está tentando fazer e falhando.

    
por 23.02.2017 / 19:31
1

Eu estava executando o tar no meu diretório home que estava no CIFS, que segue as regras e limitações de nome de arquivo do Windows. Colon não é permitido no CIFS (Windows). Eu refiz o mesmo em uma partição local e não havia problema.

    
por 23.02.2017 / 20:04

Tags