mkdir: não é possível criar o diretório: Função não implementada

9

Estou na faculdade e tenho que enviar minha lição de casa cs de uma máquina Linux escolar, mas gosto de fazer a lição de casa no meu laptop (Mac). Então, em vez de copiar meus arquivos todas as vezes e enviá-los, decidi criar um script para fazer isso por mim usando scpe ssh. Quando testei meu script pela primeira vez, o scpcomando criou o diretório hw3na outra máquina. A próxima vez que o testei, ele criou o diretório hw4. Ambos os diretórios tinham meus arquivos de programa. Como os dois diretórios foram criados apenas para teste, eu os excluí usando rm -r. Mas aqui é onde o problema surge.

Através de testes posteriores do meu script e de outras depurações, descobri que agora não consigo criar nenhum arquivo ou pasta chamado hw3 ou hw4 na outra máquina enquanto conectado a ele via ssh. Eu posso criar uma pasta chamada qualquer outra coisa, apenas não hw3ou hw4. Eu não posso fazê-los via mkdir, mv, cpou toque, fazendo-me pensar que há algo de errado com o sistema de arquivos. No entanto, eu posso criar hw3e hw4arquivos no diretório pai. Ninguém com quem conversei sabe o que é isso e nunca o viu antes, e a pesquisa no Google não resultou em nenhum resultado.

Na minha escola, existem muitas máquinas diferentes nas quais posso fazer login e tentei várias, mas o problema persiste em todas elas, o que faz sentido, pois estou trabalhando em uma unidade de rede (SDRIVE no caminho). Para que o script funcione, usei a solução alternativa de fazê-lo criar em hww#vez de hw#, mas ainda gostaria de saber o que está acontecendo e como corrigi-lo.

Esta é a minha saída do terminal a partir de quando eu logon via sshe meus comandos.

Last login: Tue Mar  3 11:40:18 2015 from r03ane3md.device.mst.edu
You are currenly one of 7 users on this host!
ane3md@rc07xcs213:~$ cd SDRIVE/cs1510
ane3md@rc07xcs213:~/SDRIVE/cs1510$ ls -l
total 0
drwxr-xr-x 2 ane3md mst_users 0 Mar  3 12:01 hw1
drwxr-xr-x 2 ane3md mst_users 0 Feb 21 21:37 hw2
drwxr-xr-x 2 ane3md mst_users 0 Mar  3 11:59 hww3
ane3md@rc07xcs213:~/SDRIVE/cs1510$ mkdir hw3
mkdir: cannot create directory ‘hw3’: Function not implemented
ane3md@rc07xcs213:~/SDRIVE/cs1510$ touch hw3
touch: cannot touch ‘hw3’: Function not implemented
ane3md@rc07xcs213:~/SDRIVE/cs1510$ mv hww3 hw3
mv: failed to access ‘hw3’: Function not implemented
ane3md@rc07xcs213:~/SDRIVE/cs1510$

EDIT: conforme solicitado, executando "stat -f ~ / SDRIVE" gera o seguinte:

ane3md@rc07xcs213:~$ stat -f ~/SDRIVE
  File: "/usr/local/home/ane3md/SDRIVE"
    ID: 0        Namelen: 4096    Type: fuseblk
Block size: 4096       Fundamental block size: 4096
Blocks: Total: 0          Free: 0          Available: 0
Inodes: Total: 314572031  Free: 66717154

EDIT - SOLUÇÃO: Fiz algumas investigações e descobri que nossa escola usa o dfshack (você pode pesquisá-lo no github) para vincular o Windows e os sistemas de arquivos unix / linux, e foi feito por um aluno aqui, portanto, naturalmente, tem bugs. Aparentemente eu encontrei um deles. Também fiz mais testes e descobri que o processo a seguir funciona para permitir a criação dos diretórios novamente. Eu tenho um Mac, então não tenho certeza se isso funcionaria para o Windows.

  1. Mapeie a unidade de rede para o Mac OS para que você possa acessá-la através do Finder
  2. Crie via Finder o diretório que não pôde ser criado antes.
  3. Conecte-se à máquina remota via ssh e navegue até o diretório em que você não pode criar as pastas ou arquivos.
  4. Tipo mv dirCreatedViaFinder newName
  5. Agora você pode criar diretórios e arquivos com o nome de qualquer coisa que não pudesse ser criada antes, mas há uma desvantagem. Se você rm -r newName, agora você não pode criar newNamearquivos e pastas. Então, acho que todo o problema é causado pela remoção de diretórios.
Adam Evans
fonte

Respostas:

11

O ~/SDRIVEdiretório é montado como um sistema de arquivos com fusível, o que significa que as operações do sistema de arquivos são tratadas por algum programa do espaço do usuário, não pelo kernel. Esses erros são provenientes da implementação do sistema de arquivos, que pode ser qualquer coisa e provavelmente é algum tipo de software personalizado do site.

Esse é um daqueles momentos em que você provavelmente precisará incomodar os administradores do sistema e perguntar o que está errado. Alguém poderia adivinhar que há algo que eles precisam corrigir, possivelmente apenas com sua conta, ou que essa é uma maneira interna estranha de lidar com a exclusão acidental.

Celada
fonte