HEADLINE

HEADLINE


remoted で問題が起きました。 | macOS Tahoe 26.2

monitoring timed out for service: remoted

MacBook (Intel 版) 起動時、「remoted で問題が起きました。」ダイアログが表示される。

remoted はユーザーが入れたアプリではなく、macOS 標準のシステムデーモンということらしい。
エラーは「Mac起動時に remoted が一時的に応答しなかった」ものでした。


remoted って何?

remotedApple純正のバックグラウンド常駐プロセスで、下記の機能を担当しているようです。

  • 🎮 Bluetooth / 外部デバイス連携
  • 📱 Sidecar(iPadをサブディスプレイにする機能)
  • 🖱 Universal Control(MacとiPadを1つのマウス・キーボードで操作)
  • 🎧 AirPlay / 外部入力系の仲介

つまり
👉 「周辺機器・リモート系の橋渡し役」という立ち位置のシステムサービスです。


今回のエラー内容を噛み砕くと

WATCHDOG timeout
monitoring timed out for service: remoted
device not responsive

  • macOS 起動直後
  • remoted が 60秒間 応答しなかった
  • 監視役(watchdog)が「固まってる」と判断して記録

💡 **クラッシュというより「起動時のもたつき」**に近いです。

特に今回は

  • ディスプレイ OFF
  • 起動から約80分後にログ採取
  • 熱状態も正常

なので、深刻度は低めです 名称未設定


よくある原因

これは珍しくないパターンで、だいたい次のどれかです。

  • 🔌 起動時に Bluetooth / USB 機器が大量につながっている
  • 🖥 外部ディスプレイ・ドック・ハブ
  • 📱 iPad / iPhone が近くにあって Universal Control 初期化
  • 💤 スリープ復帰直後のタイミング被り
  • 🧪 macOSの軽い不具合(特にメジャーアップデート直後)

アップデート待つしかなさそうかな

【Git】git branch -a に残る削除済みリモートブランチの正体と解消方法

git branch -a に残る削除済みリモートブランチ

Git を使って開発していると、
GitHub 上では消えているはずのブランチが、ローカルでは残って見える
という現象に遭遇することがあります。

error: unable to delete 'feat/base': remote ref does not exist
error: failed to push some refs

発生した状況

以下のような流れで問題が起きました。

  1. git branch -a を実行
  2. remotes/origin/feat/base が表示される
  3. GitHub の Web サイトを見ると、そのブランチはすでに削除済み
  4. 削除しようとして以下を実行
git push origin :feat/base

エラーが出る

結論:原因は「ローカルのリモート追跡情報が古い」

この問題の原因はとてもシンプルです。

GitHub 上の状態と、ローカルに保存されている origin/* 情報がズレている

git branch -a で表示される
remotes/origin/*実体ではなくキャッシュ情報 です。

つまり、

  • GitHub:すでに削除済み
  • ローカル:まだ「あることになっている」

という状態になっていました。


正しい解決方法(これだけでOK)

git fetch --prune を実行する

git fetch --prune

このコマンドを実行すると、

  • リモート(GitHub)に存在しないブランチを
  • ローカルの remotes/origin/* から自動削除

してくれます。

実行後に確認:

git branch -a

remotes/origin/feat/base が消えていれば解消完了です


なぜ git push origin :branch は失敗したのか?

git push origin :feat/base

このコマンドは、

「リモートに存在する feat/base を削除せよ」

という意味です。

しかし今回は、

  • すでに GitHub 側にブランチが存在しない
  • 削除対象が見つからない

ため、

remote ref does not exist

というエラーになりました。

操作自体は間違っていません。
単に「もう消えていた」だけです。


今後ズレを防ぐおすすめ設定

毎回 --prune を付けるのが面倒な場合は、
以下を設定しておくと便利です。

git config --global fetch.prune true

これにより、

  • git fetch
  • git pull

を実行するたびに、
不要なリモート追跡ブランチを自動で削除 してくれます。


よくある勘違いポイント

  • git branch -a に出ている = GitHub に存在する
  • ⭕ 実際は「ローカルに残っている情報」なだけ

Git は「安全側」に倒れる設計のため、
勝手にブランチを消さない のが仕様です。


まとめ

  • GitHub で消したブランチが git branch -a に残ることがある
  • 原因はローカルのリモート追跡情報のズレ
  • 解決方法はこれだけ👇
git fetch --prune
  • 定期的にズレを防ぐなら fetch.prune = true を設定

URLエンコード・Base64・Quoted-Printable

URLエンコード・Base64・Quoted-Printable イメージ

Web開発やAPI連携、メール送信をしていると
URLエンコードBase64Quoted-Printable
という言葉を目にすることがあります。

一見似ているこれらの「エンコード方式」ですが、
目的も使いどころもまったく異なります。

この記事では、それぞれの

  • 仕組み(概要)
  • 文字列の変換例
  • 特徴と用途の違い

をわかりやすく解説します

URLエンコード(Percent Encoding)とは

URLエンコードの概要

URLエンコードは、
URLで使用できない文字を安全な形式に変換する仕組みです。

URLでは日本語やスペース、記号の多くが使えないため、
それらを %XX(16進数)形式に変換します。


URLエンコードの例

# 元の文字列
謹賀新年
# URLエンコード後(UTF-8)
%E8%AC%B9%E8%B3%80%E6%96%B0%E5%B9%B4
URLエンコード スクショ

URLエンコードの特徴

  • % + 16進数で表現
  • UTF-8のバイト列を1バイトずつ変換
  • URLやクエリパラメータで必須
  • 人間には読みにくいがURL安全

主な使用場面

  • クエリパラメータ
  • フォーム送信(GET)
  • 検索URL

Base64

Base64は、
バイナリデータを英数字のみの文字列に変換する方式です。

画像・音声・ファイルなどを
テキストしか扱えない環境で送信するために使われます。


Base64の例

# 元の文字列
謹賀新年
# Base64エンコード後
6Ky56LOA5paw5bm0
Base64 スクショ

Base64の特徴

  • 使用文字:英数字 + + / =
  • データサイズが約1.33倍に増える
  • URLではそのまま使えない
  • 汎用性が非常に高い

主な使用場面

  • Data URL(画像埋め込み)
  • API通信
  • Basic認証

Quoted-Printableとは

Quoted-Printableは、
主にメール本文向けのエンコード方式です。

ASCII文字はそのまま残し、
日本語などの非ASCII文字だけを =XX 形式で変換します。

Quoted-Printableの例

# 元の文字列
謹賀新年
# Quoted-Printable後 (UTF-8)
=E8=AC=B9=E8=B3=80=E6=96=B0=E5=B9=B4 
Quoted-Printable スクショ

Quoted-Printableの特徴

  • ASCII文字が可読なまま
  • =XX 形式
  • メールの文字化け防止に有効
  • 76文字改行制限あり

主な使用場面

  • メール本文(text/plain / text/html)
  • MIMEエンコード
  • メールサーバー間通信

項目 URLエンコード Base64 Quoted-Printable
主用途 URL バイナリ転送 メール
表記形式 %XX 英数字 + 記号 =XX
可読性
サイズ増加 小〜中
URL安全 ×