一部のファイルが利用できなかったため、バックアップの作成が完了しませんでした。Macのロックを解除するとバックアップの作成が再開されます。

MacのTimeMachineで、初期化したHDDを接続後、初回のバックアップにて「一部のファイルが利用できなかったため、バックアップの作成が完了しませんでした。Macのロックを解除するとバックアップの作成が再開されます。」というエラーでバックアップに失敗。

Macを再起動して、再度初期化したHDDを、あらためて繋いで初回バックアップを試みても、エラー再現。何が起きているのかさっぱりわからない状況。

そもそも、新規にTimeMachineでバックアップを取るのは、このところ、1ヶ月〜2ヶ月程度のバックアップ期間で、なぜか古いバップアップが認識されなくなって、でもディスクは使用したままという謎な挙動になってしまい、ディスクの容量不足になってしまうため。これはこれで、TimeMachineの挙動としてはおかしいが、HDDを初期化して繋ぎ直して、新規バップアップをとれば、いままではなんとか復活していたのだが、本日ばかりはちょっと、トラブル。

初回のバックアップでエラーが出る、MacのハードやOSはこんな感じ。

エラーの状態からバックアップを再度行うと、1回目のバックアップとして完了。HDDを見るとinterruptedの失敗のディレクトリが残っている状態。そのあとで1回目の成功のディレクトリができている。

これ、どういう状況なんでしょうか。これで1回目のバックアップは正しく取れているのでしょうか。リストアしていないので、成否がわかりません。

2023/09/22追記

本日、またディスク容量とバックアップ履歴がおかしくなる事象が発生し(ディスクを直接見ると8/27からのディレクトリがあるのにTimeMachine管理画面では09/20からのデータしか見えず、それ以前のデータはアクセス不能で削除もできない状態)、またHDDをフォーマットして繋ぎなおし、バックアップ指定した。今度はエラーなく初回バックアップに成功した。

どうもディスク容量と履歴がおかしくなるのは、このところの何回かの事例発生から想像するに、古いバックアップが1日ごとになっている状態で、ディスクをぎりぎりまで使って次のバックアップの際に、1日単位のバックアップを消さないといけないときに発生するのではないかな。macOS 13 Venturaに更新してから発生しているので、OSのバグの予感。もう直ぐ、macOS 14がリリースされるが、修正されているだろうか。


2024/12/27追記

いまだこのページへのアクセス多いのですが、当方の環境においてはmacOS 14にアップグレード後は、一度もこの症状でていません。macOS 15 Sequoiaにアップグレードもしていますが、現時点では発生していません。正常にバックアップができているようです。発生していた当時のOSのバグの可能性が高いということでしょう。

なお、https://qiita.com/eguchi2017/items/56abcc1c7bd6e6992862 も参照ください。アクセス権の設定によっては正常にバックアップされないこともあるようです。

Windowsのプロセスを強制的にkillするには、wmicコマンドのdeleteオプションを使う

taskkillコマンドを使う

taskkill /f /im explorer.exe

taskkillではアクセス拒否されてしまい、killできないこともある。管理者権限で指定しているのだから、killできないとおかしいのだが。

これでも言うことを聞かない場合は、こちらを試す。

wmic process where "name='explorer.exe'" delete

これなら、確実にプロセスをkillできるようだ。

wslでsystemdを起動する方法

wslを起動してから、

$ sudo vi /etc/wsl.conf

でエディタを起動して、以下を記述する。

[boot]
systemd=true

これで、次回のwslの起動から、systemdが自動起動してinitの処理を行うようになる。ただし、initの処理が走るためにwslの高速な起動が、もっさり起動になってしまうのが、玉に瑕。

Firefoxでインストールしている個人的に必須のアドオン機能

メインで使用しているブラウザFirefoxで使っているアドオンの一覧。標準で実装されていてもよい機能もあると思うけれど。

ロケーションバーから新しいタブを開く (New Tab from Location Bar)
タブ機能で必須と思うのに、標準では実装されていない機能その1

新しいタブでリンクを開く Open Link with New Tab
タブ機能で必須と思うのに、標準では実装されていない機能その2

Google Analytics Opt-out
トレースされたくないので、入れるもの

uBlock Origin
広告は除去したい

Amazon Price Tracker – Keepa.com
Amazonの販売価格の履歴を確認する

Web Developer
昔から使っている、開発者用のツール

Font Finder (revived)
実際にレンダリングされているフォントの情報を調べる

ColorZilla
レンダリングしている色をかんたんに調べるスポイト

QR Code (Generator and Reader)
該当URLをスマホで表示する場合に使う

Page Saver WE screenshot capture tool
スクリーンキャプチャツール

Popup ALT Attributes
画像のaltコメントをマウスホバーで表示する、昔はブラウザ標準だったけれど、いまは昔の機能

Bookmark Dupes
ぐちゃぐちゃになったブックマークの重複を調べて整理

iCloud ブックマーク
iPhoneやiPadのSafariのためにブックマークを同期する。Windowsでしか動作しないのでWindowsのFirefoxで実行。これはMac版がほしい

User-Agent Switcher
ブラウザのUser Agentをかんたんに書き換える。Firefoxを除外している心の狭いサイトで活用

KISaD JSON Viewer
見にくいjsonのデータをみやすく整形して表示する

Video DownloadHelper
Youtubeなどの動画サイトの動画ファイルをオフライン保存する

Chromeでは拡張機能をインストールしないと実現しない機能である「最後のタブを閉じても Firefox が閉じない」ようにするには、アドオンは不要でabout:config で設定できる。
browser.tabs.closeWindowWithLastTab を false

Clean-Spam-Link-Tweet
Twitter(現𝕏)のspam投稿(インプゾンビ)を簡単に報告&ブロックしたり、spam投稿を自動ミュートしたりするもの。Chrome版もある。

Privacy Badger
インターネット広告やSNSのトレーサーなど、プライバシーに関わる分野でブロックしたり、計測集計したりできるツール。Chrome版もある。

Google Chromeでインストールしている個人的に必須の拡張機能

メインでは使用していないGoogle Chromeにインストールしている拡張機能。Link Blankerの存在を知ったので、メインのブラウザにしてもよいかもと思っている。なぜ、別ドメインのみ別タブで自動で開く機能がブラウザ標準で実装されていないのか、こういう機能がタブブラウザとしての最大のメリットだと思うのだけれど。

Link Blanker
標準の動作はなんでもリンクを_blankで開いてしまうので、メニューから「リンク先が同一ドメインの場合は無効にする」をonにすることで、別ドメインのみ_blankで開くようになる

Google Analytics オプトアウト アドオン (by Google)
トレースされたくないので、入れるもの

uBlock Origin
広告は除去したい

Keepa – Amazon Price Tracker
Amazonの販売価格の履歴を確認する

Web Developer
昔から使っている、開発者用のツール

QRコード作成器 (Quick QR)
該当URLをスマホで表示する場合に使う

Auto BCC for Gmail
Gmailで自動的にbccをつける

Keep One Pinned Tab
最後のタブを閉じても Chrome が閉じないようにする

Gmail POP Sync
Gmailで外部のpop3サーバを追加した際、pop3のfetchの間隔を自由にする(何も設定しないと1時間に1回しかfetchしない)

UI.Vision RPA
ブラウザの処理をバッチ化する

Clean-Spam-Link-Tweet
Twitter(現𝕏)のspam投稿(インプゾンビ)を簡単に報告&ブロックしたり、spam投稿を自動ミュートしたりするもの。Firefox版もある。

Privacy Badger
インターネット広告やSNSのトレーサーなど、プライバシーに関わる分野でブロックしたり、計測集計したりできるツール。Firefox版もある。

FreeBSD環境でApache 2.4 / PHP 8.2 / Let’s Encrypt / HTTP2を設定する

FreeBSDで、Let’s EncryptでTLS(SSL)の証明書を設定し、HTTP2プロトコルを有効にしたWebサーバを、Apache 2.4とPHP 8.2で作成する。

以下、簡単な手順を記述。

root権限でpkgで必要なものをインストールする。PHPの追加パッケージはお好みで。

pkg install  php82 php82-gd php82-mbstring php82-mysqli php82-pgsql
pkg install apache24 ap24-mod_http2
pkg install py39-certbot py39-certbot-apache

/etc/rc.conf にApache Web Serverの起動設定を行う。

apache24_enable="YES"

Apache Web Serverを起動する。ここではhttpのみの起動となる。

/usr/local/etc/rc.d/apache24 start

Let’s Encryptの実行をして証明書を取得する。httpでサーバにアクセスがあるので、Apache Web Serverの起動されていることが前提。

certbot certonly --webroot -w /usr/local/www/apache24/data -d www.example.com

crontabで定期的に更新するように設定。

0 9 1,15 * * /usr/local/bin/certbot renew

SSLの設定を行う。

cp /usr/local/etc/apache24/extra/httpd-ssl.conf /usr/local/etc/apache24/modules.d/000_httpd-ssl.conf

SSLの設定ファイルをコピーして編集する。Let’s Encryptで作ったキーファイルを指定

SSLCertificateFile "/usr/local/etc/letsencrypt/live/www.example.com/cert.pem"
SSLCertificateKeyFile "/usr/local/etc/letsencrypt/live/www.example.com/privkey.pem"
SSLCertificateChainFile "/usr/local/etc/letsencrypt/live/www.example.com/fullchain.
pem"
ファイル内の書き換える箇所のみ引用

Apacheの設定では、 /usr/local/www/apache24/httpd.conf を書き換えする。

LoadModule mpm_event_module libexec/apache24/mod_mpm_event.so
# LoadModule mpm_prefork_module libexec/apache24/mod_mpm_prefork.so

mod_mpm_preforkがデフォルトになっているが、これではHTTP2でPHPを実行できないので、mod_mpm_eventを有効にする。

設置されている /usr/local/etc/apache24/modules.d/200_mod_h2.conf を編集する

LoadModule http2_module libexec/apache24/mod_h2.so

/usr/local/etc/apache24/modules.d/001_php.conf というファイルを作成して編集。

HTTP2の環境でのPHPはmod_phpではなく、php-fpmでの実行となる。

LoadModule proxy_module libexec/apache24/mod_proxy.so
LoadModule proxy_http2_module libexec/apache24/mod_proxy_http2.so
LoadModule proxy_fcgi_module libexec/apache24/mod_proxy_fcgi.so
<FilesMatch \.php$>
        SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>

/etc/rc.conf で起動するように設定

php_fpm_enable="YES"

php-fpmを起動し、Apache Web Serverを再起動する。

/usr/local/etc/rc.d/php-fpm start
/usr/local/etc/rc.d/apache24 restart

Speed Wi-Fi 5G X11 NAR01 ファームウェア 2.6.0→2.8.0

https://www.necplatforms.co.jp/support/wimax/x11/index.html

Speed Wi-Fi 5G X11 NAR01のファームウェア 2.6.0が公開されて、アップデート。

ようやく、省電力モードが「エコ」でなく「ハイパフォーマンス」の設定で安定して動作するようになったかも。

あとは、高負荷時の安定性を確認しないといけないですね。ファームウェア2.3.0では、大容量のダウンロードを連続するなど、負荷を連続してかけ続けると通信が途絶えたり、勝手に再起動したりしていたけど、2.6.0では今のところ、安定しているようだが、どうだろうか。

追記:
こちら1週間ほど使っていますが、安定しています。いままでの不安定さが嘘のよう。このまま安定稼働してくれればよいのですが。

追記2:
ファームウェア2.7.0がリリースされました。こちらにアップデートしましたが、安定動作は変わらず、良好。

ファームウェア2.8.0が2023/08/22にリリースされて、最新版に更新。問題なく動作しています。

iPadOS 16.1のSafariの表示がおかしい

iPadのOSを16.1に更新したところ、Safariの表示がおかしくなった。デスクトップモードのview port が正しく認識されていない可能性がありそう。

iPadを横向きにしたときは、きちんと横幅にフィットして表示される。

画面横向き(iPad Pro 11inch)
画面縦向き(iPad Pro 11inch)

iPadを縦にすると、Safariの表示で横幅にフィットしないではみ出る。

これは、いわゆる「おま環」の現象だろうか?

補足:ステージマネージャをoffにしたら、iPad縦向きでも、Safariできちんと幅いっぱいにフィットした。ステージマネージャのバグのような気がする。

2022/12/14追記

iPadOS 16.2に更新したところ、まだこの状況は変わっていないみたい。ただ、うまく表示できているサイトもあって、どうなっているのかな。Yahoo Japanは16.1と同様で、縦モードのときはみ出たままです。

vsftpd

めげずにCentOS8に設定中

# dnf install vbsftpd
# systemctl start vsftpd
# systemctl enable vsftpd

FreeBSDでのqmail vpopmailのインストール

まずはportsを最新にする

# portsnap all

portsでqmailをmakeする

# cd /usr/ports/mail/qmail
# make config
# make install
qmailのmake config

configはこんな感じで、設定。あれこれ詰め込んでnetqmailを構築する

続いてcheckpasswordとtcpserverをインストール。この2つはデフォルト設定のままで進む

# cd /usr/ports/security/checkpassword
# make install
# /usr/ports/sysutils/ucspi-tcp
# make install

qmailの基本的な設定は割愛。

/var/qmail/rc は、Maildirの形式にする。

# cp /var/qmail/boot/maildir /var/qmail/rc

vpopmailのインストール

# /usr/ports/mail/vpopmail
# make config
# make install
vpopmailのmake config

configはこんな感じで、設定。あれこれ詰め込んでvpopmailを構築する。

起動スクリプトは、あれこれ自前で設定したいので、独自に作成する。

# vi /usr/local/etc/rc.d/qmail
!/bin/sh

# PROVIDE: qmail
# REQUIRE: LOGIN
# KEYWORD: shutdown

#
# Add the following line to /etc/rc.conf to enable qmail:
# qmail_enable="YES"
#

. /etc/rc.subr

name="qmail"
desc="Enable/Disable qmail"
rcvar="qmail_enable"

load_rc_config "$name"

start_cmd="${name}_start"
command="/var/qmail/bin/qmail-start"

extra_commands="stop"
stop_cmd="${name}_stop"

pidfile="/var/run/${name}.pid"
HOSTNAME=hostname

qmail_start(){
    #start qmail daemon
    /var/qmail/rc start

    /usr/local/bin/tcprules /usr/local/vpopmail/etc/tcp.smtp.cdb \
    /usr/local/vpopmail/etc/tcp.smtp.tmp \
    < /usr/local/vpopmail/etc/tcp.smtp

    #start smtpd
    /usr/local/bin/tcpserver -H -R -v -x /usr/local/vpopmail/etc/tcp.smtp.cdb -c 100 -u qmaild -g qmaild 0 25 \
    /var/qmail/bin/qmail-smtpd 2>&1 \
    | /var/qmail/bin/splogger smtpd &

    #start popd
    /usr/local/bin/tcpserver -R -H 0 110 /var/qmail/bin/qmail-popup $HOSTNAME \
    /usr/local/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2>&1 \ | /var/qmail/bin/splogger pop3d &

    /bin/pgrep qmail-send > ${pidfile}
    echo "qmail start"
}

qmail_stop(){
    killall tcpserver
    killall qmail-send
    echo "Shutting down pop & smtp"
}

run_rc_command "$1"
# chmod 0755 /usr/local/etc/rc.d/qmail
# echo qmail_enable=\"YES\" >> /etc/rc.conf
# echo sendmail_enable=\"NONE\" >> /etc/rc.conf

こんな感じで起動スクリプトを置いて、rc.confで起動設定と、標準のsendmailの停止を設定する。

他のプログラムはpkgでイントールしたいので、qmailとvpopmailはpkgで更新されないようにlockをかける

# pkg lock netqmail-1.06_5
# pkg lock vpopmail-5.4.33_3

以上で、qmailとvpopmailの基本的なインストールと設定は終了。

WEBブラウザでアカウント管理するならqmailadminをインストールする。

# cd /usr/ports/mail/qmailadmin
# make install

設定は標準のままでインストールまで行う。

Linux環境であれこれ苦労してパッケージ入れたり、自分でコンパイルすることに比べて、FreeBSDでの構築は非常に簡単ですね。