mac miniをサーバとして扱う【Mac mini 2018 / 2020】
Mac mini
mac miniを買う人って,以下の記事でも言っている様に,サーバ用途で使う人も中にはいると思います.
今回は,僕もmac miniをサーバとして扱ってみて,そのやり方や使用感などを書いていこうかと思います.
この記事では,ファイルサーバとWebサーバ化について触れていきます.
筆者のmac mini
僕のmac miniは2020年モデル (といっても2018年と同じ)で,スペックは以下の通り.
CPU | Intel Core i7-8700B @ 3.2 GHz (6 cores / 12 threads) |
メモリ | 32GB (8GBから自力換装) |
SSD | 256GB |
メモリ換装の話は以下の記事で.
IPアドレスの固定
最初に下準備として,mac mini側のIPアドレスを固定してしまいます.
「システム環境設定 > ネットワーク」より,自分の使っているネットワーク接続から,「詳細」に進みます.(僕の場合はWi-Fi)
そうしたら,「TCP/IP」よりIPv4の設定を「手入力」にしてください.
あとは自分の好きなIPアドレスを設定してください.
僕は今回,仮で192.168.10.10としましたが,このアドレスが外部に漏れたところで特に大きな問題ないので,僕と同じでも構いません.
ただ,他の機器と被ってはいけないので,動的に与えられていたアドレスをそのまま固定してしまっても良いでしょう.
これで,ネットワークに再接続した際も,このIPアドレスが自動的に割り当てられるようになりました.
これで下準備は完了です.
ファイルサーバとして扱う
まずは,一番ありそうな使い方から.
mac miniをファイルサーバとして扱うと,macbookからmac mini内のファイルにアクセスできるようになります.
つまり,写真や動画データなどはmac miniに入れるようにしてmacbook本体のストレージ圧迫を抑えることができるようになります.
それでは設定していきます.
mac mini側 (サーバ側)
まず,mac miniの「システム環境設定 > 共有」から,ファイル共有にチェックをいれます.
このとき,画面共有にもチェックをいれておいても良いでしょう.
このとき,共有したいフォルダを,+ / - で適宜変更してください.
僕の場合は全てアクセスOKとしちゃいたいので,ホームディレクトリ (????araki)を指定しています.
また,コンピュータ名がまだ「○○○○のMac mini」とかになっていたら,ダサいのでついでに適当に変えておくと良いです.(本記事にはあんまり関係はしませんが)
これだけで,サーバ側はOKです.
クライアント側
今回は僕はMacBook Proをクライアントとして,サーバにアクセスすることを試みます.
MacBook側でFinderを開きます.
そうしたら,⌘Kもしくは「移動 > サーバへ接続」としてください.
僕の画像は「よく使うサーバ」にすでに登録されていますが,初回は上のサーバアドレス欄に「smb://(さっき決めた固定IP)」を入力して,接続とします.
この後出てくるマウントについてはどこでも良いです.
これで,無事ファイルにアクセスができるはずです.
簡単ですね.
VNC接続もできる
このとき,先ほどmac mini側で「画面共有」にチェックをいれたのならば,「vnc://(さっき決めた固定IP)」でVNC接続が可能です.
外部からアクセスしたいとき
先ほどの話は内部ネットワークでの方法でした.
ですが,本来ならば出先などで,自宅のmac miniのファイルにアクセスしたい状況も大いに考えられます.
しかし,今回使用しているファイル共有はSMB (Server Message Block)というプロトコルを使用してますが,これを使った外部からのアクセス方法は僕にはわかりませんでした.
その代わりにSSHで接続してファイルアクセスする方法があります.
mac mini側 (サーバ側)で「システム環境設定 > 共有 > リモートアクセス」にチェックをします.
そうすると,まずローカル環境では,
1 | ssh username@[IP address] |
でmac miniにアクセス可能です.もしユーザ名が「araki」でマシン名が「mini」であれば,
1 | ssh araki@mini.local |
のような形でもOKです.
そして,外部からSSH接続したい場合は,ルータ側で設定が必要です.
ルータへの22番ポートでのアクセスがmac miniのIPアドレスにいくように設定すればOKです.
ここではその設定は割愛します.
Webサーバとして扱う
次はWebサーバ化の話.
これはあまりやる人はいないかもしれない.
例えば,個人や家族間で使うWebページを作って,いろんな端末から確認する場合.
ローカル環境で手っ取り早く立ち上げる
まずはローカル環境だが,手っ取り早いのはPythonで以下のコマンドを打鍵してみる.
1 | python -m SimpleHTTPServer 8888 |
そうすると,http://localhost:8888にサーバが立ち上がる.
他の端末からアクセスする場合は,最初に決めたIPアドレスにアクセスする.
僕の場合は「http://192.168.10.10:8888」といった具合.
この時サーバを立ち上げたディレクトリに,「index.html」などを配置しているとページを表示できる.
Flaskで適当にページを作ってみる
今度はPythonのWebアプリケーションライブラリ Flaskを使用して試す.
今回は動作確認なので超簡単なコードにする.
1 2 3 4 5 6 7 8 9 10 11 12 | from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return '<h1>Hello Mac mini 2020!</h1>' if __name__ == '__main__': app.run(host='0.0.0.0', port=8888) |
早速,http://localhost:8888にアクセスすると,
うまくいったようだ.
もちろん,他端末から「http://192.168.10.10:8888」でもアクセスできた.
外部からアクセスしたいとき
ここであまりお勧めはできないが,もし外部からこのWebページにアクセスしたければ,やはりルータ側で設定が必要だ.
今回の場合,wwwポートでアクセスがあった場合は,このローカルIPアドレスに8888ポートで投げるようにすれば良い.
NTT系のルータであれば「トップページ > 詳細設定 > 静的IPマスカレード設定」から,
とする.
おわりに
今回はmac miniを,というかmacOCマシンをサーバとして扱う場合の紹介をしました.
Webサーバはさておきファイルサーバとしての扱い心地は悪くない.
面倒な設定もないので,簡単に導入可能なところも良いですね.
Webサーバについては正直mac miniでやるメリットはほとんどないかもしれない...
Webサーバ立ち上げたかったらRaspberryPiでも買ってやった方が楽しいと思う.