Question

J'ai une version Mac que je peux courir soit le Leopard (10.5) ou Snow Leopard (10.6) de Mac OS X sur. Je l'utilise pour faire du développement web / tests avant la publication de fichiers à mon hôte de production.

Sur la production hôte racine doc de mon site est sous le répertoire (par exemple / home / stimulatingpixels / public_html) et je voudrais reproduire cet emplacement sur le Mac. Malheureusement, leur est un espace réservé caché et verrou sur le Mac qui ressemble à un lecteur monté avec rien en elle assis dans le / emplacement de la maison.

Je sais par expérience qu'il est imprudent de se déplacer et déposer ce dans votre répertoire / home, car les mises à jour peuvent provoquer à effacer (et qu'il ne soit pas stocké dans la sauvegarde TimeMachine, par la voie).

Alors, la question est de toute façon d'utiliser en toute sécurité / home sur un Mac soit Leopard ou Snow Leopard?

(Note:.. Je sais que cela est très spécifique et Mac va demander dans un forum d'Apple et Je voulais juste demander ici, en plus de couvrir toutes les bases)

Mise à jour: Pour aider à décrire pourquoi je veux ce faire, en plus du site web frontal, j'ai une série de scripts que je voudrais courir aussi bien. L'un des objectifs principaux d'être en mesure d'utiliser le répertoire / home (et plus précisément le même chemin depuis les serveurs racine) est de sorte que peuvent utiliser les mêmes voies de sortie sur le mac de développement ainsi être utilisé sur le serveur de production. Je sais qu'il ya des façons de contourner cela, mais je préfère ne pas avoir à faire face. L'objectif réel est d'avoir tous les fichiers sur le développement Mac ont la même cheminfichier de la / racine de l'arborescence de répertoire que le serveur de production.

Une autre mise à jour: L'autre raison pour laquelle j'oublié de mentionner plus tôt pour ce met en place des chemins .htaccess lors de l'authentification de base. Étant donné que ces chemins sont de la racine du système de fichiers au lieu du docroot site, ils finissent par passer par « / home » quand cela fait partie de l'arbre.

Était-ce utile?

La solution

Autres conseils

Je l'ai essayé sur Yosemite (OS X 10.10.1) le sudo automount -vc ne fonctionne pas, je devais utiliser sudo umount /home.

Par conséquent mon flux de travail serait:

# comment out line starting with /home sudo vi "+g/^\/home/s/\//#\//" "+x" /etc/auto_master sudo umount /home # link actual home directory (/Users/<user>) to new 'home' (/home/<user>) ln -s $HOME /home/$USER

Mettre tous ensemble des conseils et des suggestions ci-dessus:

  • modifier /etc/auto_master # commentez la ligne avec /home en elle.

  • remount:

    sudo automount -vc

  • faire un lien symbolique vers le répertoire ified mac-:

    sudo ln -s $HOME /home/$USER

A ce moment-là, vos chemins doivent correspondre-à vos chemins de production. vars env pointeront toujours à /Users/xxxx, mais tout ce que vous codez en dur dans un chemin dans votre .bashrc --ou dire, en ~/.pip/pip.conf-- devraient être essentiellement équivalents. A travaillé pour moi.

re: «L'objectif réel est d'avoir tous les fichiers sur le développement Mac ont la même cheminfichier de la / racine de l'arborescence de répertoire que le serveur de production »

Sur la production, mon travail de déploiement pourrait se produire dans /opt/projects/projname, donc je vais juste vous assurer que mon compte peut écrire dans /opt/projects et aller de là. Je commencerai par faire quelque chose comme ceci:

sudo mkdir /opt/projects sudo chown $USER /opt/projects mkdir /opt/projects/projname cd /opt/projects/projname

Avec LVM, je vais mettre une partition séparée pour /opt/, et écrire des données d'applications là au lieu de $HOME. , Je peux ensuite développer le système de fichiers /opt dans les cas où j'ai besoin plus d'espace disque pour un projet (LVM est votre ami.)

Pourquoi ne pas exécuter simplement MAMP et utiliser le répertoire des sites? Vous pouvez développer hors localhost et juste un tas d'alias pour vos sites. Je ne sais pas pourquoi vous avez besoin spécifiquement d'utiliser le répertoire.


EDIT: Ok, je pense que vous allez sur la résolution de votre problème dans le mauvais sens.

S'il y a des chemins HTML que vous êtes inquiet, le tout commencer par une barre oblique « / » qui lui par défaut la dierectory maison.

Si ce sont les références dans votre PHP, vous devez créer un global (ou similaire) et le définir comme la racine de votre site. Ensuite, vous pouvez faire référence à tout le monde et quand vous déplacez le site de dev à la production tout ce que vous devez changer le monde.

Essayer de manière rond-développer / home car il ressemble plus à le serveur de production est une mauvaise idée.

Installer MAMP, créer quelque part globale élevée dans la hiérarchie et commencer à re-référencement. Ce sera moins de douleur à long terme.

scroll top