以前に「XAMPPの開発環境をDropboxで同期する」という記事を書いているのだが、肝心の部分がリンク切れになってしまった。しかも5年も前だし、XAMPPもバージョンアップしているので書き直すことにした。
前回の記事では、apacheとMySQLの設定ファイルを書き換えて、Dropbox内のフォルダを参照する方法を紹介していたが、シンボリックリンク(symlink)を作成したほうがラクだと思ったので、今回はそっちを紹介する。
シンボリックリンクとは…
コンピュータのディスク上で扱うファイルやディレクトリを、本来の位置にファイルを残しつつそれとは別の場所に置いたり別名を付けてアクセスする手段である。
ソフトリンク - Wikipedia
だそうです。
つまりXAMPPをインストールしたフォルダの配下にあるapacheやmysqlのデータフォルダを、Dropbox内のに作ったフォルダにリンクするということ。
シンボリックリンクを作成すれば、apacheとMySQLの設定ファイル(apache.confとか)をいじる必要はない。
ちなみにWindowsでシンボリックリンクが作れるのはVista以降となっているが、現時点(2017年初頭)で世の中のWindowsはほとんどが7以上だと思うので問題ないだろう。
シンボリックリンクを利用したくない場合はこの辺のサイトを参考に
この記事を作成した環境は以下のとおり。
- Windows10
- XAMPP 7.1.1
- XAMPPは
C:\xampp
にインストール
- Dropbox内に、apacheのデータを入れるフォルダと、MySQLのデータを入れるフォルダを作る。
C:\pathto\Dropbox\xampp\htdocs
(apache)
C:\pathto\Dropbox\xampp\mysql
(MySQL)
※Dropboxまでのパスは自分の環境にあわせて読み替えてください - XAMPPのデータをDropboxにコピーする。
C:\xampp\htdocs
の中身をC:\pathto\Dropbox\xampp\htdocs
へ
C:\xampp\mysql\data
の中身をC:\pathto\Dropbox\xampp\mysql
へそれぞれコピーする。 C:\xampp\htdocs
フォルダとC:\xampp\mysql\data
フォルダを適当な名前に変更する。 htdocs_backup みたいなかんじで
※これらのフォルダは削除してもいいのだけど、念のためバックアップしておく- XAMPP内のフォルダとDropboxに作ったフォルダをリンクする。
コマンドプロンプトを管理者として起動。シンボリックリンクを作るためのコマンドは以下。
mklink /d "リンク元フォルダ" "リンク先フォルダ"
このサイトの例では以下の2つのコマンドを打ち込む。mklink /d "C:\xampp\htdocs" "C:\pathto\Dropbox\xampp\htdocs"
mklink /d "C:\xampp\mysql\data" "C:\pathto\Dropbox\xampp\mysql"
- コマンドが成功するとC:\xampp配下のそれぞれの場所に矢印付きのフォルダが作成される。
これをクリックしてDropboxに作ったフォルダの中身が表示されればOK。
コメント
参考にさせていただきました。ありがとうございました。
2、3点重箱ですが・・・・・・
"C:\xampp\htdocs の中身を C:\pathto\Dropbox\xampp\htdoc へ"
↓
"C:\xampp\htdocs の中身を C:\pathto\Dropbox\xampp\htdocs へ"
"XAMPPのデータをDropboxに移動する。
C:\xampp\htdocs の中身を C:\pathto\Dropbox\xampp\htdoc へ
C:\xampp\mysql\data の中身を C:\pathto\Dropbox\xampp\mysql へそれぞれ移動する"
↓
"XAMPPのデータをDropboxにコピーする。
C:\xampp\htdocs の中身を C:\pathto\Dropbox\xampp\htdoc へ
C:\xampp\mysql\data の中身を C:\pathto\Dropbox\xampp\mysql へそれぞれコピーする"
で、間違いないでしょうか?
>局長
ご指摘の通り、"htdoc" は "htdocs" の誤りです。
「Dropboxに移動する」の部分は「移動」でも特に問題はないのですが、3番で以前のフォルダを「バックアップしておく」と書いているので、ここは「コピー」にしておいたほうが適切ですね。これも修正しました。
ご指摘ありがとうございました。