よくある質問
インストールとアクセス権
AppPorts にはどのようなアクセス権が必要ですか?
AppPorts は /Applications ディレクトリの読み取りと変更のために、フルディスクアクセスを必要とします。初回起動時に設定を案内します。「システム設定」→「プライバシーとセキュリティ」→「フルディスクアクセス」で AppPorts を手動で追加することもできます。
対応する macOS のバージョンは?
AppPorts は macOS 12.0(Monterey)以降に対応しています。macOS 15.1(Sequoia)以降では、App Store アプリを外部ストレージにインストールし、その場所で更新することもできます。
NAS やネットワークドライブを外部ストレージとして使えますか?
AppPorts は主に、ポータブルハードディスク、外付け SSD、ドライブケースなど、ローカルに接続した外部ストレージを対象としています。NAS、SMB、rclone、SFTP などのネットワークマウントも、理論上は macOS のファイルシステムのパスとして利用できます。ただし、安定性、アクセス権、遅延、切断からの復旧は、マウント方法自体に依存します。
試す場合は、重要でないアプリや再作成できるデータディレクトリで先にテストし、次の条件を確認してください。
- AppPorts の起動前にマウント先へアクセスできること。
- ネットワーク切断後、同じパスに自動で再マウントできること。
- アプリに必要なアクセス権、拡張属性、シンボリックリンクの動作をファイルシステムがサポートしていること。
- WeChat、仮想マシン、ゲームライブラリなど、重要なデータや頻繁に書き込むデータから試さないこと。
アプリの移行
/Applications 以外のアプリをスキャンするには?
「ローカルアプリ」見出し右側の「+」をクリックし、追加でスキャンするディレクトリを選択します。JetBrains Toolbox や Steam など、独自のディレクトリにアプリをインストールするツールに適しています。追加したディレクトリは保存され、次回の AppPorts 起動時に自動でスキャンされます。ディレクトリの変更も自動監視します。追加後は見出しにカスタムディレクトリの数が表示され、そのメニューから追加済みのディレクトリを確認または削除できます。
移行後にアプリを開けなくなった場合は?
- 外部ストレージが接続され、アクセスできることを確認します。
- アプリの状態バッジを確認します。「孤立リンク」なら外部のアプリが失われているため、リンクを手動で解除する必要があります。
- アプリが壊れていると表示される場合は、まず再インストールを試します。それでも解決しなければ、右クリックして「Resign This App」を選択します。ただし、サンドボックスアプリは拒否されます。
- 解決しない場合は、外部アプリ一覧で「ローカルに戻す」を選び、ローカルで実行できる状態に戻します。
- ダブルクリックしても反応しない、またはアイコンが一瞬表示されて消える場合は、macOS 27 へのアップグレードを参照してください。
アプリが壊れているという警告が出た場合は?
通常、macOS のコード署名検証がアプリバンドルの構造の変化を検出したためです。次の手順を試してください。
- まず公式サイトまたは App Store から再ダウンロードしてインストールします。多くの場合はこれで解決します。
- 警告が続く場合は、AppPorts でアプリを右クリックし、「Resign This App」を選択します。AppPorts が元の署名をバックアップして Ad-hoc 再署名を行います。
- サンドボックスアプリは拒否されます。再署名後に macOS 27 で開けなくなる可能性があるため、これらのアプリは再インストールしてください。
仕組みについては再署名とクラッシュ対策を参照してください。
外部ストレージを取り外すとアプリはクラッシュしますか?
ローカルの起動用エントリ(Stub Portal)は open で外部のアプリを開こうとします。外部ストレージが未接続ならアプリを起動できませんが、ローカルの起動用エントリ自体はクラッシュしません。ストレージを再接続すると、通常どおり使えるようになります。
移行後もショートカットの矢印が表示されるのはなぜですか?
旧版の AppPorts では、この状態になることがあります。現在の AppPorts は通常の .app にデフォルトで Stub Portal を使用するため、ローカルには通常のアプリアイコンが表示され、通常は矢印が付きません。
矢印が残っている場合は、旧版が作成したアプリ全体へのシンボリックリンクを引き続き使用している可能性があります。一度ローカルに戻し、現在のバージョンで再度移行してください。
移行後もアプリを更新できますか?
アプリの種類によって異なります。
| アプリ種別 | 自動更新 | 説明 |
|---|---|---|
| ネイティブアプリ(自動更新機能なし) | ✓ | 従来の方法で更新できます |
| Chrome、Edge(独自の更新プログラム) | ✓ | 更新はローカルにインストールされます。AppPorts はローカルのバージョンが新しいことを検出し、「移行待ち」と表示します |
| Sparkle / Electron アプリ | ✗ | ロックするとアプリ内更新がブロックされます。AppPorts でローカルに戻してから更新してください |
| App Store アプリ(macOS 15.1+) | ✓ | App Store が外部ドライブ上で直接更新できます |
| App Store アプリ(macOS <15.1) | ✗ | 手動で再移行する必要があります |
「移行待ち」とは何ですか?
「移行待ち」は、ローカルに実際のアプリがあり、外部ストレージの同じアプリより新しいと AppPorts が判断した状態です。Chrome、Edge などの独自の更新プログラムが新バージョンをローカルにインストールし、外部ストレージには旧版が残る場合によく見られます。
この状態では、再度外部への移行を実行し、外部の古いコピーをローカルの新版で置き換えられます。AppPorts は Bundle ID を優先して照合し、必要に応じて正規化した名前でも照合します。バージョンがない、比較できない、または同名アプリの Bundle ID が異なる場合は「移行待ち」と表示しません。
外部の移行先がすでに存在する場合、上書きされますか?
そのまま上書きすることはありません。AppPorts が外部の移行先を自動で削除して移行を続けるのは、次の場合だけです。
- 現在のアプリが「移行待ち」状態で、外部の移行先を同じアプリの古いコピーと判断できる場合。
- AppPorts が作成した古い Stub Portal、Deep Contents Wrapper、またはアプリ全体へのシンボリックリンクと識別できる場合。
- AppPorts の移行処理が残した古い残存物である場合。
所有元を確認できない実際のアプリやディレクトリがある場合は、ユーザーのデータを誤って削除しないよう、移行を停止して移行先の競合を通知します。
App Store アプリを外部ドライブに移すには?
macOS 15.1+:App Store の設定で「容量の大きいアプリを別のディスクにダウンロードおよびインストール」を有効にし、AppPorts の外部アプリ用ストレージと同じドライブを選択します。
macOS <15.1:AppPorts の設定で「Mac App Storeアプリの移行を許可」を有効にします。手動での移行が必要で、アプリの更新後も再度移行して外部のコピーを置き換える必要があります。
移行前に「保護されたアプリ」と表示されるのはなぜですか?
App Store アプリやシステム(root)が所有するアプリは、通常 macOS のアクセス権で保護されており、AppPorts がローカルのコピーを直接削除または置換できない場合があります。この表示が出たら、先に Finder でアプリを外部ストレージへ手動でドラッグし、管理者パスワードを入力してから、AppPorts に戻ってローカルのリンクを作成する方法が確実です。自動移行を続けることもできますが、アクセス権不足で失敗する可能性があります。
App Store の更新後に「このアプリケーションで開く」の項目が重複したり、バージョンが一致しなくなった場合は?
v1.8.0 以降は、外部のアプリのバージョン情報をローカルの Stub Portal に自動同期し、「このアプリケーションで開く」メニューを更新します。一致しない状態が続く場合は、更新ボタンをクリックして手動で同期できます。
旧版(v1.7.0 以前)では、次の手順で対応します。
- AppPorts を開き、ローカルと外部のアプリ一覧を更新します。
- ローカルのバージョンが新しい場合は、再度移行し、新版で外部のコピーを置き換えます。
- ローカルの起動用エントリだけに問題がある場合は、リンクを解除し、外部アプリ一覧から「ローカルにリンクし直す」を実行します。
macOS 15.1 以降では、バージョンの分岐を減らすため、App Store の外部ドライブへの直接インストールを優先してください。
書類をダブルクリックするとアプリは起動しますが、ファイルを開きません
Office、WPS など、ファイルの関連付けで渡される引数に依存するアプリでよく見られます。旧版の Stub Portal は外部のアプリ本体だけを起動し、ダブルクリックしたファイルのパスを正しく渡していない場合があります。まず v1.6.2 以降にアップグレードしてください。その後、対象のアプリをローカルに戻して再移行するか、外部アプリ一覧から「ローカルにリンクし直す」を再実行します。
問題が続く場合は、診断パッケージを書き出して Issue を作成し、アプリの入手元(App Store、公式サイトの .pkg、DMG など)と再現手順を記載してください。
Adobe、Office などのアプリスイートも移行できますか?
試すことはできます。ただし、これらは独立した単一の .app ではなく、複数のアプリ、共有コンポーネント、バックグラウンドサービス、認証モジュールで構成されていることが多い製品です。AppPorts は可能な限りディレクトリ単位で処理しますが、互換性は各アプリの構造に依存します。
移行前にスイート内のすべてのアプリを終了し、ログインやライセンス認証が済んでいることを確認してください。移行後に認証の異常、関連ファイルを開けない問題、コンポーネントの欠落が起きた場合は、先にローカルに戻してください。その後、容量の大きい独立したアプリやデータディレクトリだけの移行を検討できます。
移行が遅い、または進まない場合は?
- 100% 付近で 1〜2 秒停止することがあります。ローカルの起動用エントリの作成と最終確認を行っています。
- Xcode や Adobe 製品など、大きなアプリの移行に時間がかかるのは正常です。
- 長時間進まない場合は、外部ストレージの接続が安定しているか確認してください。
- USB 2.0 は速度が低いため、USB 3.0 以降または Thunderbolt を推奨します。
データディレクトリの移行
移行するとアプリのデータは失われますか?
通常は失われません。AppPorts は先にデータ全体を外部ストレージにコピーします。成功を確認してから、元のローカルディレクトリを削除し、シンボリックリンクを作成します。途中で失敗した場合は、自動で元の状態に戻すことを試みます。
外部の移行先ディレクトリがすでにある場合は、その中の .appports-link-metadata.plist が現在の移行元パス、移行先パス、データディレクトリの種類と完全に一致する場合のみ処理を再開します。一致する metadata がない実際のディレクトリは競合として扱い、サイズが近いという理由だけで管理対象にしたり上書きしたりしません。
データの移行でアプリに問題が起きるのはどのような場合ですか?
- アプリがファイルロックや SQLite の WAL ログを使用している場合。
- シンボリックリンクを経由するアクセスで拡張属性が失われたり、動作が変わったりする場合。
- 同じ Team の複数のアプリが
Group Containersディレクトリを共有している場合。
~/Library/Containers/ と ~/Library/Group Containers/ 内ではシンボリックリンクではなくマウント移行を使います。APFS の外部ドライブが必要で、移行後に初めてアプリを開いたときはアクセス許可のダイアログで許可してください。マウント移行を参照してください。
WeChat のチャット履歴を外部ドライブに保存できますか?
はい。「マウント移行」を使用します。「アプリデータ」で WeChat を選択すると、Containers グループ内の xwechat_files サブディレクトリ(アカウント別)と Application Support/com.tencent.xinWeChat のどちらもマウント移行できます。外部ドライブは APFS である必要があります。移行後に初めて WeChat を開いたときは、アクセス許可のダイアログで許可してください。
旧版の「移行 + 再署名」は使用しないでください。macOS 27 で WeChat を開けなくなります。
WeChat のデータを移行したらチャット履歴が見えなくなりました
移行方法によって対応が異なります。
- 1.9.0 のマウント移行の場合:外部ドライブが接続され、AppPorts の状態が「マウント済み」であることと、アクセス許可のダイアログで拒否していないかを確認します。トラブルシューティングを参照してください。
- 旧版のシンボリックリンク移行の場合:サンドボックス内の WeChat はコンテナ外のデータを読めません。これは仕組みによる制約です。まず AppPorts で該当ディレクトリを「Restore」してローカルに戻してください。移行時に再署名にも同意した場合は、公式サイトから WeChat を再インストールする必要があります。macOS 27 の修復手順を参照してください。
再署名で直そうとしないでください。状況が悪化します。
exFAT の外部ドライブに WeChat のデータを移行できますか?
できません。マウント移行は APFS のみ対応しています。そのまま使い続けても問題ありません。WeChat のデータをローカルに残し、アプリ本体やほかのデータディレクトリは同じドライブへ移行できます。後でコンテナデータを移したくなった場合は、別の APFS ドライブを使う方法が最も簡単です。現在のドライブに領域を確保したい場合、未割り当て領域があり、パーティション構成が条件を満たせば、APFS パーティションを追加できます。exFAT がドライブ全体を使用している場合、macOS と Windows の標準ツールでは直接縮小できないため、バックアップしてからパーティションを作り直す必要があります。exFAT 内の空き容量は未割り当て領域とは異なります。exFAT 上のディスクイメージを使う代替案も試しましたが、取り外しテストでイメージ全体が使用不能になったため採用していません。外部ドライブに APFS が必要な理由を参照してください。アプリ本体とほかのデータディレクトリには、この制約はありません。
マウント移行後、Finder にディスクアイコンが増えますか?
増えません。AppPorts はデータボリュームを Finder のサイドバーとデスクトップに表示しないようにマウントします。外部ドライブを接続した直後の 1〜2 秒は一瞬表示される場合がありますが、再マウント後に消えます。「ディスクユーティリティ」では AppPorts-… という名前のボリュームが引き続き表示されます。これは移行したデータなので、消去や削除はしないでください。マウント移行:日常の使い方を参照してください。
暗号化した外部ドライブでマウント移行できないのはなぜですか?
マウント移行で作成するデータボリュームは、元のボリュームのパスワードを引き継ぎません。そのまま移行すると、保護されていたデータがパスワードのないボリュームに保存されてしまいます。AppPorts は保護を黙って弱めず、処理を停止します。暗号化した外部ドライブを参照してください。
AppPorts を削除する前に必要なことは?
マウント移行を使った場合は、先に「アプリデータ」で対象のディレクトリを「Restore」してローカルに戻してください。復元しなくてもデータは外部ボリュームに残りますが、ログイン後に再マウントする処理がなくなるため、アプリには空のディレクトリが見えます。AppPorts を再インストールして一度開けば再マウントできます。
macOS 27 へのアップグレード後にアプリが開かなくなりました。以前のデータ移行が原因ですか?
データの破損ではなく、署名の問題です。旧版でコンテナデータを移行したときに再署名へ同意した場合、アプリのサンドボックス ID が取り除かれ、macOS 27 では自分のコンテナへのアクセスを拒否されるようになりました。データを復元してアプリを再インストールすれば修復できます。macOS 27 へのアップグレードを参照してください。
Crossover、Parallels、仮想マシン、ゲームライブラリは移行に適していますか?
これらはアプリ本体がそれほど大きくないこともあり、容量を使うのは仮想マシンイメージ、コンテナ、ゲームライブラリ、モデルキャッシュなどです。まず「データディレクトリ」や「ツールディレクトリ」で大きなデータディレクトリが検出されているか確認することをお勧めします。
仮想ディスク、データベース、頻繁に書き込まれるファイルを含む場合は、外部ストレージの性能が安定していることを確認し、先にバックアップしてください。ネットワークドライブにこれらの書き込み頻度の高いデータを直接置くことは推奨しません。
移行したデータディレクトリを復元するには?
データディレクトリ一覧で移行済みのディレクトリを探し、「Restore」をクリックします。シンボリックリンク移行の場合は、データをローカルにコピーしてからリンクと外部のコピーを削除します。マウント移行の場合は、ボリューム上のデータをローカルにコピーしてからボリュームを削除します。外部ドライブは接続したままにしてください。
その他
AppPorts はデータを収集しますか?
収集しません。AppPorts は完全にオフラインで動作し、ユーザーデータを収集・送信しません。ログはローカルの ~/Library/Application Support/AppPorts/ に保存されます。
問題を報告するには?
プロジェクトの Issues に報告してください。メニューバー →「ログ」→「診断パッケージを書き出す」で診断パッケージを書き出して添付すると、問題の特定に役立ちます。
