É possível criar uma subpasta dentro de uma pasta de links simbólicos, mas não ser adicionada à pasta pai?

1

É uma pergunta muito complicada, desculpe por isso

Base disso

  • Pasta A
    • file1
    • arquivo2
  • Pasta B (link simbólico da pasta A (softlink))
    • file1
    • arquivo2

que eu quero fazer é criar uma pasta ou arquivo dentro da minha pasta B, mas eu não quero que a pasta esteja na pasta A assim

  • Pasta A
    • file1
    • arquivo2
  • Pasta B (link simbólico da pasta A (softlink))
    • file1
    • arquivo2
    • newfolder

isso é possível?

Eu quero ter um único arquivo worpress, para ser compartilhado com vários sites, mas cada um tem seus próprios "wp-content" e "wp-config.php", em cada site eu gostaria de fazer um www / o site / blog (blog) deve ser o link simbólico para o WP, eu sei que o wordpress tem uma opção multisite, mas só funciona com domínios, e eu quero estar dentro da pasta do blog ou nome do usuário, e eu não quero fazer uma redirecionamento para blog.mysite.com

o objetivo é manter o wordpress atualizado com uma única instância, em vez de adicionar uma instância do wordpress a cada site e, em seguida, atualizar cada um deles quando for necessário

eu tentei ligar simbolicamente todos os arquivos dentro da minha pasta "pai" ao invés de criar um link simbólico para a pasta inteira, mas o problema é que o PHP pega o caminho da pasta "Pai" (Pasta A) ao invés do seu parente (Pasta B) então não está encontrando seu "wp-config.php" que está na pasta B

    
por Joyal 17.05.2013 / 13:51

2 respostas

2

não é viável: se você liga simbolicamente a um diretório comum, então você está adicionando / alterando / removendo arquivos desse diretório comum, e não de algum diretório "virtual" sob o seu link simbólico.

Uma solução:

Para atender sua necessidade: tenha arquivos comuns como links para os arquivos de origem e tenha os arquivos diferentes adicionados

Para fazer isso:

Crie estrutura de diretório + links físicos (não links simbólicos) para os arquivos comuns, usando algo como:

cd /common/base-directory/ || exit 1
find . -depth -type f -print0 | cpio -0pdl /new/base-directory 

(o -l (como "link") no cpio criará HARDlinks em vez de apenas novas cópias)

e, em seguida, adicione os arquivos (novos) ausentes e se você precisar alterar arquivos existentes: DELETE + REPLACE os arquivos que estavam com hardlink

(isto é, hardlinked dos que estão em / common / base-directory). Você tem que excluir primeiro o arquivo (ou seja, o hardlink) e, em seguida, recriar com o novo conteúdo. Caso contrário, se você editar o arquivo com hardlink, você editará o arquivo e o arquivo com link físico ...

    
por 17.05.2013 / 17:04
3

Não é possível, a pasta B está em vigor um alias para a pasta A, então você está adicionando o arquivo / pasta à pasta A.

Você faria melhor se tivesse pastas separadas e vinculasse os arquivos comuns (arquivo1 e arquivo2).

    
por 17.05.2013 / 13:54