Como o OneDrive torna sua pasta não funcional para versões mais antigas do Windows?

58

Após a atualização do Fall 2017 Creators Update para Windows 10, a pasta OneDrive não pode ser acessada usando versões anteriores do Windows. Essa singularidade é descrita no site oficial :

Se você instalou a Atualização de criadores do outono de 2017 para Windows 10 e sincroniza os arquivos do OneDrive em uma unidade externa, poderá não conseguir abrir os arquivos do OneDrive se mover a unidade externa para um computador executando um sistema operacional anterior à Atualização de criadores do outono de 2017 para Windows 10.

A solução alternativa sugerida é "Use um computador executando a Atualização de criadores do outono de 2017 para Windows 10 (ou mais recente) para abrir o conteúdo" .

Reproduzi com êxito o problema no Windows 7 conectando um disco rígido a uma pasta do OneDrive, criada usando o Windows 10 anteriormente. Agora, quando estou tentando fazer algo com o diretório (exclua-o ou cdnele), recebo um erro:

The file cannot be accessed by the system.

Não há erros lógicos no FS de acordo com chkdsk, também sou o proprietário da pasta e tenho todos os privilégios de segurança. Nenhum processo está usando o volume. Independentemente disso, não posso fazer nada com esta (e somente) pasta. Qual é o mecanismo de bloqueio?

enkryptor
fonte

Respostas:

72

O NTFS possui um recurso chamado pontos de nova análise , no qual um arquivo ou diretório pode ser marcado para processamento especial pelo sistema operacional. É usado para implementar alguns recursos - por exemplo, pontos de montagem de volume (a alternativa do Unix para isar letras de unidade); junções e links simbólicos; Diretórios esparsos do GitVFS; arquivos realmente armazenados em uma imagem WIM; arquivos que foram transferidos para fita ou outro armazenamento lento; e assim por diante.

Versões recentes do OneDrive também usam pontos de nova análise para implementar "arquivos online" - eles são espaços reservados no início, mas são baixados sob demanda. As versões anteriores faziam isso no nível do shell, o que não funcionava com muitos programas; usar um ponto de nova análise e mover o download automático para o sistema operacional principal os torna quase indistinguíveis dos arquivos locais.

Naturalmente, novas tags resultarão em um erro quando o caminho for acessado através de um sistema operacional mais antigo; o driver NTFS não sabe o que fazer com esses itens, apenas rejeita o acesso. Pode mostrar, por exemplo, um diretório vazio, mas isso pode resultar rapidamente em mais danos quando o sistema operacional mais antigo tenta gravar nele.

Você pode usar o fsutil reanalisar ponto através do Cmd para ver a marca do ponto de reanálise , se houver, anexada a um arquivo ou diretório.

gravidade
fonte
11
Você estava certa. fsutil reparsepoint query OneDrivemostrou os dados e fsutil reparsepoint delete OneDrive"desbloqueou" o diretório com sucesso.
enkryptor
1
Os pontos de nova análise não são extensíveis / instaláveis? Certamente, o sistema operacional Windows não oferece suporte nativo ao GitVFS.
usr
3
De fato, o sistema operacional Windows recebeu alterações para oferecer suporte ao GitVFS. IIRC, sempre teve um requisito "versão mínima do Win10". Assim como no OneDrive, presumo que seja um suporte parcial - a capacidade do espaço do usuário ou de drivers personalizados se conectarem ao sistema operacional ... Não sei se isso significa dar suporte a pontos de nova análise arbitrários ou se significa dar suporte a um ponto de nova análise específico, mas permitir que o implementação seja instalável.
grawity
4
No futuro, o ProjFS provavelmente será a opção suportada por recursos semelhantes, pois pode ser implementado apenas no modo de usuário. Ainda não está disponível em uma versão estável. O próprio ProjFS é (foi?) Implementado como um driver de filtro do sistema de arquivos, que está disponível como ponto de extensão para algumas versões do Windows (voltando ao XP, acredito). O OneDrive em si usa (usado?) CldFlt ("Driver de Mini Filtro de Arquivos na Nuvem").
Bob