Nginx sites-enabled, sites-available: Impossibile creare il soft-link tra i file di configurazione in Ubuntu 12.04

Sto cercando di creare collegamenti simbolici tra i file di configurazione contenente blocchi del server in sites-enabled e siti directory disponibili in /etc/nginx/.

Il comando che sto usando è:

sudo ln -s sites-available/foo.conf sites-enabled/

Quando ho poi eseguire:

ls -l

Il risultato è:

lrwxrwxrwx 1 parallels parallels 27 Aug  6 20:44 immigrationinformation.conf -> immigrationinformation.conf

dove il immigrationinformation.conf -> immigrationinformation.conf parte ha un carbone con il rosso e il carattere tipografico.

Quando cerco allora di accesso e questo soft-link, mi è stato detto che si è rotto.

Quando creo il soft-link in siti directory disponibili cioè

sudo ln -s sites-available/foo.conf sites-available/foo_link.conf

funziona come normale. Tuttavia, se poi sposta la directory sites-enabled, il link è rotto di nuovo.

Posso creare il soft link tramite il file manager GUI, ma non tramite la linea di comando. Posso anche creare hard link con nessun problema.

Ho il sospetto che fosse un problema di autorizzazioni, quindi ho giocato un po ‘ con l’impostazione di tutti i permessi a 777 di entrambe le directory le directory in se stessi e anche cambiando i proprietari di qualcosa di diverso da root, ma ancora senza fortuna.

Qualsiasi aiuto sarebbe molto apprezzato, grazie.

  • So che la domanda è già una risposta, ma volevo punto in cui il tuo errore è stato, è stato in realtà molto semplice, è necessario specificare il nome del file nel secondo argomento non è la prima sudo ln -s sites-available/ sites-enabled/foo.conf, mentre in piedi all’interno della /etc/nginx directory
InformationsquelleAutor iamyojimbo | 2013-08-06

 

One Reply
  1. 98

    Avete bisogno di capire che il target di un link simbolico è un percorso. E può essere assoluto o relativo alla directory che contiene il link simbolico

    Supponendo che si dispone di pippo.conf in sites-available

    Provare

    cd sites-enabled
    sudo ln -s ../sites-available/foo.conf .
    ls -l
    

    Ora avete un link simbolico in sites-enabled chiamato pippo.conf che ha una destinazione ../sites-available/foo.conf

    Giusto per essere chiari, la normale configurazione per Apache è che il file di configurazione per i potenziali siti di vivere in siti disponibili e i link simbolici per i siti abilitati vivere in sites-enabled, che punta a obiettivi di siti disponibili. Che non sembra essere il caso, il modo di descrivere il programma di installazione, ma non è questo il problema principale.

    Se si desidera un collegamento simbolico a punto SEMPRE nello stesso file, indipendentemente dal dove il collegamento simbolico si trova, quindi, l’obiettivo dovrebbe essere il percorso completo.

    ln -s /etc/apache2/sites-available/foo.conf mysimlink-whatever.conf
    

    Qui (linea 1) l’uscita del mio ls -l /etc/apache2/sites-enabled:

    lrwxrwxrwx 1 root root  26 Jun 24 21:06 000-default -> ../sites-available/default
    

    Vedere come la destinazione del collegamento simbolico è relativo alla directory che contiene il link simbolico (si inizia con “..” il che significa andare alla directory).

    Fisici, sono totalmente diversi, perché la destinazione di un collegamento fisico non è una voce di directory, ma un sistema di archiviazione di Inode.

    • Ok vedo che il mio problema ora, ho pensato che la ln comando di risolvere il percorso per me, però ora vedo che ho solo bisogno di specificare il percorso completo del target di riferimento, o il percorso relativo alla posizione sul link simbolico.
    • Sto lottando con questo per 3 giorni….grazie per una risposta chiara.

Lascia un commento