/ usr / lib, / usr / share e / usr / bin ligados simbolicamente aos diretórios em outra partição

4

Estou trabalhando com um servidor rodando com uma partição raiz de 15GB, uma partição swap de 1GB e uma partição home de 216.9GB. Aparentemente, o servidor ficou sem espaço na partição raiz em algum momento e, em vez de estendê-lo, um mantenedor anterior do servidor moveu os diretórios /usr/lib , /usr/share e /usr/bin para /home/usr e transformou symlinks em os novos locais dos diretórios em seus locais antigos.

O servidor está executando o Arch Linux 3.6.10-1. As partições raiz e home possuem um sistema de arquivos ext4.

Com exceção de pequenas nuances, como ter que informar explicitamente a find para seguir os links simbólicos durante a pesquisa de um arquivo em /usr , essa configuração poderia ser problemática? Estou especialmente preocupado e curioso sobre quaisquer problemas de segurança relacionados à configuração.

    
por Smith John 07.03.2013 / 23:59

2 respostas

3

Existem duas soluções possíveis que eu consideraria aqui:

  1. Descubra o que está preenchendo sua partição raiz e corrija-a.
    Esta é provavelmente a solução certa - com uma partição raiz de 15 GB (e um layout de partição sã É claro que se os dados forem legítimos e o layout de particionamento não for sensato (por exemplo, /var está na partição raiz), provavelmente não há muito o que fazer sobre isso.

  2. Reconstrua o servidor com um esquema de particionamento normal.
    Se você preencheu a partição raiz de forma legítima ou o esquema de particionamento não é são, você deve reconstruir o sistema com um layout de partição mais apropriado.
    Essa solução é bem penosa (você precisará fazer backup de seus dados, reinstalar o sistema e restaurar os dados), mas isso deixará uma máquina limpa que não possui links simbólicos nem pontos de montagem de ligação por onde eles não deveria ser, para você ou algum administrador futuro, tropeçar mais tarde.

Existem soluções alternativas (como sugestão do objetivo de usar montagens de bind ), mas eu consideraria estas medidas paliativas para comprar seu tempo com o sistema em operação enquanto você planeja uma solução real.

    
por 08.03.2013 / 02:25
4

Use o mount com a opção bind em vez de symlinks e você não teria tais problemas

Para fazer isso, você pode adicionar algumas linhas na sua /etc/fstab ( fonte ; francês):

/home/usr/bin        /usr/bin     none   bind    0       0
/home/usr/share      /usr/share   none   bind    0       0
/home/usr/lib        /usr/lib     none   bind    0       0

A sintaxe geral:

/source              /destination none   [r]bind[,...] 0 0
    
por 08.03.2013 / 02:10