Qualquer forma de manter permissões ao usar o drive montado no NTFS no Ubuntu?

6

No meu trabalho de desenvolvimento web, eu uso o Ubuntu quase exclusivamente. Mas há ocasiões em que preciso inicializar o Windows - para verificar um layout no IE, recortar um comp no Photoshop - e quero poder compartilhar todo o meu ambiente de host local entre os dois.

Este é o meu fluxo de trabalho atual:

No Ubuntu:

  • rsync o diretório do site em que estou trabalhando de /var/www para /windows/wamp/www (onde / windows é o local de montagem da partição do Windows NTFS como definido no fstab).
  • rsync o banco de dados mysql de /var/lib/mysql para /windows/wamp/bin/mysql/{mysql version}/data .

Encerre, inicialize o Windows, edite os arquivos, salve, reinicie novamente. De volta no Ubuntu, procure por arquivos alterados e rsync de volta para /var/www , ignorando as mudanças de permissões que aconteceram ao mover os arquivos para a partição NTFS.

Não gosto de guardar duas cópias de todo o meu ambiente de desenvolvimento e não gosto de sincronizá-las manualmente. Idealmente, gostaria de copiar toda a pasta / var / www para a partição do Windows e criar um link simbólico para ela, e fazer o mesmo com meus bancos de dados. Mas as mudanças de permissões que acontecem não causam dores de cabeça ao fazer isso.

Então, minha pergunta é em duas partes, eu acho:

  • Existe alguma maneira de copiar arquivos de partições do drive ext4 para partições NTFS que mantenham as permissões do Unix de forma que elas possam ser sincronizadas de volta?

ou

  • Existe uma maneira melhor de compartilhar todo o ambiente localhost entre as partições do Windows e do Linux?
por goldenapples 11.12.2011 / 19:36

3 respostas

5

Se a partição está sendo compartilhada com o Ubuntu e o Windows, você pode usar o ntfs-3g.usermap para criar um arquivo de mapa do usuário.

Suponha que a partição seja / dev / sdXn montada em / NTFS

1) desmontar a partição

sudo umount /dev/sdXn

2) execute o ntfs-3g.usermap (ele criará um arquivo UserMapping no diretório atual)

 sudo ntfs-3g.usermap /dev/sdXn

3) remontar

sudo mount /dev/sdXn

4) * copie o arquivo UserMapping

sudo mkdir /NTFS/.NTFS-3G
sudo cp UserMapping /NTFS.NTFS-3G/

Agora tudo deve funcionar. Pelo menos funcionou para mim no Ubuntu 11.10

A mais recente (23.12.2015) página do Tuxera sugere a cópia para /.NTFS-3G/ :

  

O arquivo de mapeamento resultante é gravado no arquivo UserMapping no diretório atual. Para que o arquivo seja utilizável, primeiro monte o volume, copie o UserMapping para /.NTFS-3G/UserMapping no diretório montado, desmonte o volume e monte-o novamente.

Então, algo assim:

sudo mkdir /.NTFS-3G
sudo cp UserMapping /.NTFS-3G/
    
por G. He 03.05.2012 / 02:55
3

Bem, você tem algumas opções.

Primeiro, você pode experimentar o fsdriver

link

Eu não sei o quão bem o driver funcionará, mas se isso acontecer, eu usarei o Ubuntu.

A outra opção é montar o partiton do ntfs com permissões do linux. Você precisará adicionar uma linha no fstab similar a

UUID=12102C02102CEB83  /media/windows  ntfs-3g  auto,users,permissions  0  0

Altere seu uuid para sua partição do Windows (use sudo blkid )

Assumindo que funciona, você pode usar um link ou mount bind (novamente, uma entrada no fstab)

/media/windows/www /var/www none defaults,bind 0 0 

A desvantagem do segundo método é que o Ubuntu não vai depurar uma partição ntfs se houver um problema com o sistema de arquivos.

Editar: Uma outra solução potencial - Execute o Windows no Virtualbox (ou KVM) e use uma pasta compartilhada ou compartilhamento de rede (samba).

Boa sorte

    
por Panther 11.12.2011 / 19:56
1

Isso funcionou para mim no Lubuntu 15.10

  1. Abra um terminal
  

ctrl + alt + t

  1. Desmonte a unidade ntfs (substitua sdx pela sua unidade; o meu é sda3)
  

sudo umount / dev / sdx

  1. Edite o fstab para que o ntfs-3g seja usado (o ubuntu vem com o leafpad instalado; em outros ditros você pode usar o gedit ou um editor de texto diferente)
  

sudo leafpad / etc / fstab

  1. Alterar de ntfs para ntfs-3g. Algo parecido com isto:
  

#Entry para / dev / sdx:

     

UUID = 3844444444004444 / mnt / diskname ntfs-3g padrão, auto 0 0

  1. Salvar e fechar

  2. Monte todas as unidades

  

sudo mount -a

  1. Abra um navegador de arquivos com direitos de root. (O lubutu vem com o pcmanfm instalado, no entanto, para outras distribuições, você pode ter outro navegador de arquivos instalado)
  

sudo pcmanfm

  1. Navegue até a pasta desejada e clique com o botão direito do mouse para abrir a janela Propriedades de arquivo. Vá para a guia Permissões e escolha o que você precisa.

  1. Clique em OK, então tudo deve estar do jeito que você deseja. (Eu também reiniciei mas não acho que seja necessário)
por V Bota 23.12.2015 / 12:46