Compreender as permissões de disco do macOS e unidades externas
Problemas de permissão podem impedi-lo de aceder, modificar ou ejetar unidades externas no Mac. Veja como funcionam as permissões do macOS com armazenamento amovível.
Liga uma unidade externa e consegue ler ficheiros mas não consegue guardar nela. Ou uma unidade que funcionava bem no seu outro Mac não o deixa escrever neste. Ou é-lhe pedida a palavra-passe cada vez que tenta aceder a certas pastas numa unidade externa.
Problemas de permissão em unidades externas são confusos porque as regras são diferentes das do armazenamento interno do seu Mac. O macOS aplica propriedade e permissões a volumes externos de formas que nem sempre são intuitivas.
Como o macOS gere a propriedade em unidades externas
A unidade interna do seu Mac tem um proprietário claro: você. A sua conta de utilizador tem um número de ID (normalmente 501 para a primeira conta criada) e esse ID é carimbado em cada ficheiro que cria.
As unidades externas transportam os seus próprios carimbos de permissão do computador que escreveu nelas pela última vez. Se criou ficheiros num Mac onde o seu ID de utilizador era 501, e liga a unidade noutro Mac onde também é o utilizador 501, tudo coincide. Mas se os IDs não coincidirem, surgem conflitos de permissão.
Isto é comum ao partilhar unidades entre vários Macs, especialmente em ambientes de trabalho onde as contas de utilizador são configuradas de forma diferente em cada máquina.
Ignorar propriedade em volumes externos
O macOS tem uma solução integrada para o problema da incompatibilidade de propriedade. Selecione a unidade externa no Finder, pressione Command-I para abrir "Obter Informações" e procure por "Ignorar propriedade neste volume" na parte inferior.
Quando esta caixa está selecionada, o macOS trata cada ficheiro na unidade como se pertencesse ao utilizador atual. Ignora os carimbos de propriedade totalmente. Este é o padrão para a maioria das unidades amovíveis APFS e Mac OS Expandido (HFS+), razão pela qual normalmente não encontra problemas de permissão.
Note que esta caixa de seleção apenas aparece para volumes APFS e HFS+. Não aparece para unidades exFAT ou FAT32, uma vez que esses sistemas de ficheiros não têm um sistema de permissões nativo.
Se esta definição foi desativada (o que pode acontecer após uma formatação ou certas atualizações do macOS), os erros de permissão começam a aparecer. Ative-a novamente e os problemas desaparecem.
Nota: precisa de acesso de administrador para alterar esta definição. Se a caixa de seleção estiver a cinzento, clique no ícone do cadeado na parte inferior da janela Obter Informações e introduza a sua palavra-passe.
Permissões APFS vs permissões exFAT
As unidades APFS transportam permissões POSIX completas: proprietário, grupo e sinalizadores de acesso global para leitura, escrita e execução. Também suportam Listas de Controlo de Acesso (ACLs) para um controlo mais granular. Este é o mesmo sistema de permissões que a unidade interna do seu Mac utiliza.
As unidades exFAT não têm qualquer sistema de permissões. Cada ficheiro é acessível por todos. Isto parece que eliminaria os problemas de permissão, mas o macOS por vezes sintetiza permissões para volumes exFAT, o que pode criar comportamentos inesperados.
Quando o macOS monta uma unidade exFAT, atribui a propriedade ao utilizador atual e aplica permissões predefinidas. Normalmente isto funciona bem. Mas se o processo de montagem encontrar um erro ou se a unidade tiver danos no sistema de ficheiros, as permissões sintetizadas podem estar erradas.
Se uma unidade exFAT se tornar subitamente de apenas leitura, o problema é normalmente corrupção do sistema de ficheiros e não permissões. Execute os Primeiros Socorros do Utilitário de Disco para verificar e reparar.
Acesso Total ao Disco e unidades externas
O macOS Ventura, Sonoma e Sequoia impõem restrições de Acesso Total ao Disco de forma mais rigorosa do que as versões anteriores. Estas restrições afetam a forma como as aplicações interagem com unidades externas.
O Acesso Total ao Disco é uma definição de privacidade que controla que aplicações podem aceder ao conteúdo total do seu armazenamento, incluindo unidades externas. Sem o Acesso Total ao Disco, uma aplicação pode conseguir abrir ficheiros que lhe fornece explicitamente, mas não consegue navegar livremente pelo conteúdo da unidade.
Isto importa para a ejeção porque ferramentas de diagnóstico como o Terminal precisam de Acesso Total ao Disco para ver todos os processos que utilizam uma unidade. Sem ele, o comando lsof mostra resultados incompletos. Executa o lsof na sua unidade, não vê nada a bloqueá-la, mas continua sem conseguir ejetar porque o verdadeiro bloqueador está escondido da visão do Terminal.
Conceda Acesso Total ao Disco ao Terminal (ou à sua aplicação de terminal preferida) em Definições do Sistema > Privacidade e Segurança > Acesso Total ao Disco. Isto garante que obtém a visão completa ao diagnosticar problemas de ejeção.
Quando as permissões impedem a ejeção
Problemas de permissão normalmente não impedem a ejeção diretamente, mas causam falhas de ejeção indiretas.
Se um processo tenta escrever na sua unidade externa e encontra um erro de permissão, pode tentar repetidamente em vez de falhar de forma limpa. Cada tentativa de repetição mantém um handle de ficheiro aberto. O processo fica efetivamente preso num ciclo, incapaz de completar a sua operação ou libertar a unidade.
Verá este padrão com software de cópia de segurança, serviços de sincronização e processos do sistema como o Spotlight. Tentam escrever metadados ou dados de índice na unidade, são impedidos pelas permissões e continuam a tentar.
Corrigir o problema de permissão subjacente (normalmente ativando "Ignorar propriedade neste volume") resolve também o problema da ejeção.
Reparar permissões em unidades externas
A antiga funcionalidade "Reparar Permissões do Disco" no Utilitário de Disco foi removida no macOS El Capitan. Apenas se aplicava a ficheiros do sistema na unidade de arranque, pelo que nunca foi relevante para unidades externas, apesar do equívoco generalizado.
Para unidades externas, o equivalente mais próximo é repor a propriedade e as permissões manualmente:
sudo chown -R $(whoami) /Volumes/NomeDaSuaUnidade/
sudo chmod -R u+rw /Volumes/NomeDaSuaUnidade/
Isto dá à sua conta de utilizador a propriedade e o acesso de leitura e escrita a tudo na unidade. Faça isto apenas em unidades pessoais, não em unidades partilhadas onde outros utilizadores precisam de manter as suas próprias permissões.
Para uma correção menos agressiva, basta ativar "Ignorar propriedade neste volume" como descrito anteriormente.
Unidades encriptadas e permissões
Se a sua unidade externa estiver encriptada com encriptação APFS, precisa da palavra-passe de encriptação para a montar. Mas após a montagem, as permissões funcionam normalmente.
Unidades externas encriptadas com FileVault podem ocasionalmente desenvolver problemas de permissão se os metadados de encriptação ficarem dessincronizados. Se estiver a ter erros de permissão numa unidade encriptada, tente bloquear (ejetar) e desbloquear (montar com palavra-passe) a unidade. Isto força o macOS a restabelecer o contexto de encriptação e resolve frequentemente anomalias de permissão.
Fazer tudo funcionar em conjunto
Problemas de permissão, falhas de ejeção e erros do sistema de ficheiros muitas vezes acumulam-se. Um erro de permissão faz com que um processo em segundo plano pare, o que bloqueia a ejeção, o que leva a uma desconexão incorreta, o que causa danos no sistema de ficheiros, o que cria novos erros de permissão.
Quebrar este ciclo começa com a ejeção correta. Quando a sua unidade não ejeta e suspeita que problemas de permissão estão envolvidos, o Ejecta pode identificar o processo parado e permitir-lhe encerrá-lo de forma limpa. A partir daí, corrija o problema de permissão subjacente para que o problema não se repita.
As permissões em unidades externas são mais simples do que parecem quando compreende o modelo de propriedade. A maioria dos problemas resolve-se com uma única caixa de seleção. Mas quando algo mais complexo se está a passar, saber onde procurar faz toda a diferença.
Se prefere não utilizar o Terminal todas as vezes, o Ejecta mostra-lhe exatamente qual o processo que está a bloquear o seu disco — e permite-lhe encerrá-lo com um clique, direto da sua barra de menus.
Comprar Agora — $9.99