MacFeeling Blog

マックな感じ …

NASに音楽データを移行

公開 : | 0件のコメント

この記事は最終更新日から 約2年が経過しているので情報が古い可能性があります。

今更ながらNAS(DS218j)にミュージック.appの音楽データを移行することに

環境
macOS Monterey 12.3
ミュージック.app 1.2.3.56
DS218j(DSM 7.0.1-42218 Update 3)

DS218jにAudio Stationをインストール。

「music」共有フォルダが作成されるので、そこに「~/ミュージック/Music」フォルダをコピー。

ミュージック.appをoptionキーを押しながら起動。「ライブラリを選択...」ボタンをクリック。

NASにコピーした「Music Library.musiclibrary」を選択。

後は、Mac起動時にmusicを自動マウントするために、「システム環境設定」»「ユーザとグループ」の「ログイン項目」タブにて、「+」ボタンをクリックして、「music」を選択して登録。これで完了です。

Synology Disk Stationは現在220jが発売されています。

NAS用HDDにはWD Red Plusがおすすめです。

iPhone用のアプリ 「DS audio」

DS audio App
カテゴリ: Music
価格: 無料

メインのマック以外は、ローカルの「Music Library.musiclibrary」をそのまま使い、別途、DS218jに iTunes Serverをインストールしてライブラリを切り替えて利用することに。
そうしないとライブラリに問題が出てしまうようなので...

追記
SMBが時々切断されてしまうことがあるので、なんとかならないかとググったところ、MacからNASのSMB接続が遅いので改善してみた | Macのアンチョコを発見。ここに書かれていた方法を試してみることに。
SMB 2 や SMB 3 接続でパケット署名を無効にする - Apple サポート (日本)

ターミナル.appを起動して

sudo nano /etc/nsmb.conf

管理者パスワードを要求されたら入力して、中に以下を追加で記述

[default]
signing_required=no

問題なければ、「controlキー + o」
File Name to Writeと下に表示されたらリターンキー
「controlキー + x」で編集を終了します。

最後に、マウントされている SMB 共有を一旦すべて切断してから再接続し、変更を適用。
これでちょっと様子をみることに。

ちなみにDS218jのSMBの設定はデフォルトで以下のようになっていました。

2022-03-26追記
ログイン項目への登録だと、マウントに失敗してしまうことがあるので、Apple Scriptで以下スクリプトを作成し、アプリケーションとして書き出して、Sleepyhead | MacFeeling Softwareに登録して遅らせて起動するようにしてみました。(ログイン項目からは削除)

mount volume "smb://サーバ名/music"

2033-05-30追記
上記だと、DS218jが起動していないとエラーが出て煩わしいので、何な良い方法がないかとググってみたところ、automator - Applescript, how to mount remote server without error if unavailable? - Ask Differentのページを発見。これを利用することに

私の場合は、IPアドレスではなくて、設定しているサーバ名でマウントをするので、以下のように書き直しました。

set ipAddress to "192.168.0.xxx"
set serverName to "設定してあるサーバ名。例:DS218j"
set sharedResource to "music"

if workgroupAvailable(ipAddress) then
	mount volume "smb://" & serverName & "/" & sharedResource
end if

on workgroupAvailable(ipAddress)
	set workGroup to do shell script ¬
		"smbutil status " & ipAddress & " | awk '/Workgroup:/{print $2}'"
	if workGroup is equal to "" then
		return false
	else
		return true
	end if
end workgroupAvailable

最初のみ、上記スクリプト(アプリケーションとして書き出し)を実行時に、ユーザ名とパスワードを要求されるので、入力してください。

コメントを残す

必須欄は * がついています




日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)