Primeiro, o HFS + é um sistema de arquivos não nativo do ponto de vista do Linux, portanto, é esperada alguma estranheza com ele. Dito isso, desmontar completamente o sistema de arquivos ao excluir arquivos vai além do tipo de peculiaridades que eu esperaria, mas pode ser que isso seja pelo menos parte do que está acontecendo. Se sim, e se nenhuma das sugestões abaixo ajudar, mudar para FAT pode fazer o truque. Embora o FAT também seja não-nativo, seus drivers (no Linux e no macOS) são maduros o suficiente para não causar tais problemas. OTOH, FAT também é muito limitado comparado ao HFS +, portanto, pode não ser adequado (por exemplo, se você precisar armazenar arquivos grandes).
De qualquer forma, alguns problemas específicos podem estar em ação aqui:
- Registro no diário - Por padrão, o macOS cria volumes HFS + com o registro no diário ativo. Na verdade, esse padrão não pode ser desabilitado em versões recentes do macOS ao usar o Utilitário de Disco GUI. O registro no diário, no entanto, é mal suportado nos drivers HFS + do Linux. Assim, para uma partição de dados compartilhada, é melhor desabilitar o registro no diário. Infelizmente, não sei como fazer isso em um volume existente; mas talvez uma busca na Web mude alguma coisa. Se não, ou se você não se importa em fazer um malabarismo de backup-reformat-restore, você pode fazer isso. Quando você fizer isso, sugiro usar
mkfs.hfsplus
no Linux para criar o novo sistema de arquivos. Para criar um sistema de arquivos sem journaling, você omitiria a -J
opção. (Digite man mkfs.hfsplus
para saber mais sobre este comando.) Se o comando não estiver instalado, talvez seja necessário instalar ohfsprogs
pacote. Há uma maneira de fazer a linha de comando no macOS também; Eu acredito que o comando é newfs
ou algo similar. Não me lembro dos detalhes, no entanto.
- IDs de usuários coordenados - Por padrão, a primeira ID de usuário (UID) do Ubuntu é 1000, enquanto que é 501 no macOS. Portanto, quando você tenta compartilhar arquivos em uma partição HFS + nesses sistemas operacionais, os arquivos parecerão pertencer a diferentes usuários em cada sistema operacional. Embora seja possível definir permissões livremente ou fazer uso intensivo
sudo
para permitir que o compartilhamento de arquivos funcione, uma solução melhor é coordenar os valores de UID nas duas instalações. Minha resposta para esta perguntaem AskUbuntu descreve como fazer isso no Ubuntu e fornece ponteiros para outros sites que descrevem como fazer isso no macOS. (Fazer a mudança no macOS é preferível, mas o processo é mais tedioso no macOS.) Ao sugerir essa mudança, minha hipótese é que você pode estar correndo em problemas de permissões e que esses problemas estão interagindo com bugs do sistema de arquivos que estão causando o sistema de arquivos para ser desmontado.
- Erros do sistema de arquivos - Se o sistema de arquivos foi danificado, pode ser que o kernel o desmonte repentinamente. Você pode rodar
fsck
em uma partição HFS + no Linux, e isso deve resolver o problema, desde que o hfsprogs
pacote esteja instalado. A Apple fez open-source de muito do seu código HFS +, portanto, em teoria, isso deve ser praticamente idêntico a executar uma verificação no macOS; no entanto, a Apple vem fazendo algumas mudanças em seus sistemas de arquivos ultimamente, e eu não sei se essas mudanças funcionaram nos pacotes das distribuições Linux, então pode ser mais seguro fazer o trabalho a partir do macOS, usando o Utilitário de Disco. Se o Utilitário de Disco lhe der uma opção para fazê-lo, não ative um diário na partição, pelas razões anotadas anteriormente.
Você pode obter algumas pistas sobre o que está causando o problema, observando o buffer de anel do kernel imediatamente após o problema ocorrer. Você pode fazer isso digitando dmesg
para ver a coisa toda ou dmesg | tail
para ver as últimas linhas. (Você pode estender o número de linhas mostradas através da -n
opção para tail
, como em dmesg | tail -n 20
; ou você pode usar em less
vez de tail
poder rolar a coisa toda.) O buffer de anel do kernel deveregistra informações sobre falhas do kernel, o que é uma desmontagem não solicitada de um sistema de arquivos. OTOH, é concebível que o que quer que esteja causando a desmontagem não seja realmente uma falha do kernel, ou o relatório de erro não acontece por algum motivo. Se você tentar as sugestões acima e elas não ajudarem, mas se o buffer de anel do kernel mostrar algo suspeito, você pode tentar postar os detalhes.