🐡
Mac Mini M4 (16 GB) を CUI‑Only サーバー化 ― 実行優先度順の最小構成手順
Mac mini M4 (16 GB) → CUI‑only サーバー化 ― 実行優先度順の最小構成手順(リスト形式)
前提
- macOS 13(Ventura)以降
- すべてのコマンドは root で実行
- 変更前に必ずバックアップ
- 再起動で設定を反映
① ユーザー・セキュリティ設定(初期化)
-
専用管理アカウント作成
sudo dscl . -create /Users/serveradmin sudo dscl . -create /Users/serveradmin UserShell /bin/bash sudo dscl . -create /Users/serveradmin RealName "Server Admin" sudo dscl . -create /Users/serveradmin UniqueID "$(dscl . -list /Users UniqueID | awk '{print $2}' | sort -nr | head -1 | awk '{print $1+1}')" sudo dscl . -create /Users/serveradmin PrimaryGroupID 80 sudo dscl . -create /Users/serveradmin NFSHomeDirectory /Users/serveradmin sudo dscl . -passwd /Users/serveradmin <password>GUI なし専用ユーザーを作成し管理権限を持たせる。
-
rootログイン有効化(必要なら)
sudo systemsetup -setrootlogin on -
ログイン画面を最小化
# macOS のログインウィンドウに表示されるユーザー一覧を非表示にする sudo defaults write /Library/Preferences/com.apple.loginwindow DisableUserList -bool true # ゲストアカウントを無効にする(ゲストでログインできなくなる) sudo defaults write /Library/Preferences/com.apple.loginwindow GuestEnabled -bool false -
SSH(リモートログイン)を有効化
sudo systemsetup -setremotelogin on sudo launchctl enable system/com.openssh.sshd
② GUI/デスクトップ環境の完全停止(最重要)
-
Finder・Dock・UIAgentを停止
# Finder アプリ本体(デスクトップ上のアイコン、ファイルブラウズ)の起動を禁止する sudo launchctl disable user/$(id -u)/com.apple.Finder # Dock(アプリ起動アイコン、ウィンドウ管理)の起動を禁止する sudo launchctl disable user/$(id -u)/com.apple.Dock # システム全体の UI で必要なサービス(Apple メニュー、メニューバーの一部、Spotlight など)の起動を禁止する sudo launchctl disable user/$(id -u)/com.apple.coreservices.uiagent -
画面共有(VNC)を無効化
sudo launchctl bootout system/com.apple.screensharing sudo launchctl disable system/com.apple.screensharing -
AirPlay・AirDrop(シェアリング)を停止
sudo launchctl bootout system/com.apple.airplayd sudo launchctl bootout system/com.apple.sharingd -
Bluetooth Audio を停止
sudo launchctl bootout system/com.apple.BluetoothAudioAgent
③ ハードウェア・無線機能の停止
-
Bluetooth を停止
sudo launchctl bootout system/com.apple.blued sudo launchctl disable system/com.apple.blued -
Wi‑Fi をオフ
sudo networksetup -setairportpower en0 off sudo launchctl bootout system/com.apple.airportd -
Spotlight インデックスを停止
sudo mdutil -a -i off -
Time Machine を無効化
sudo tmutil disable
④ Apple 連携サービスの停止
-
iCloud / CloudKit を停止
sudo defaults write /Library/Preferences/com.apple.cloudkit CloudKitSyncEnabled -bool false -
Apple Push Service を停止
sudo launchctl bootout system/com.apple.ApplePushService sudo launchctl disable system/com.apple.ApplePushService -
AFP / SMB ファイル共有を停止
sudo launchctl bootout system/com.apple.AppleFileServer sudo launchctl disable system/com.apple.AppleFileServer -
自動アップデートチェックを止める
sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticCheckEnabled -bool false
⑤ プリインストールアプリケーションの削除
- Finderから以下のアプリをゴミ箱に入れるか、sudo rm -rf で削除する。
sudo rm -rf /Applications/Numbers.app sudo rm -rf /Applications/Pages.app sudo rm -rf /Applications/Keynote.app sudo rm -rf /Applications/GarageBand.app sudo rm -rf /Applications/iMovie.app
⑥ 電源管理・ログ最適化
-
スリープを無効化
sudo pmset -a sleep 0 disablesleep 1 -
ハイバネーションをオフ
sudo pmset -a hibernatemode 0 -
時刻同期(NTP)
sudo systemsetup -setusingnetworktime on sudo launchctl enable system/com.apple.timed
⑦ 最終チェック
-
再起動
sudo shutdown -r now -
SSH 接続確認
ssh serveradmin@<macmini-ip> -
GUI プロセスが起動していないか確認
ps aux | grep -E 'Finder|Dock|MenuBar|Spotlight' -
サービスリスト確認
launchctl list | grep -v com.apple
備考
- サービス名が分からない場合は
launchctl list | grep <名前>で確認し、無ければスキップ。 - macOS バージョンによりサービス名やインターフェイス名が変わることがあります。
これで「CUI‑only」状態に近づき、不要なリソースをほぼ全て解放できます。必要に応じて追加・削除してください。
Discussion