著者アーカイブ takahashi

takahashi 著者:takahashi

macの起動時にブートローダーメニューを追加する方法

自分のもっているmacは、BootCampを使ってWindowsとmacOSのデュアルブート環境を作ってあります。

OS切り替えの際、過去のバージョンは環境設定やWindowsのBootCampメニューから次に電源を入れたときに起動するOSをあらかじめ指定できたので困らなかったのですが、最近macOSのファイルシステムがAPFSになってから、Windows側で次回起動するOSでmacOSを選択することができなくなりました。

したがって、デフォルトになっているOSではない方のOSを起動する場合、起動時にoptionキーを押しながら電源を入れないとOS選択画面が出てきません。
毎回、OSを切り替えるたびにOptionキーを押さないといけないというのはちょっと煩わしいので、せめて起動時に毎回OSが選べる画面をb出せないかなとさがしていたところ、こんなアプリを発見しました。

rEFInd

です。
このアプリを導入しておくと、起動時に写真のOS選択画面が表示されるようになります。

インストール方法は、まずmacをリカバリモード(command+R)で起動し、上のプルダウンメニューから
ユーティリティ->ターミナルをひらきます。
下記のコマンドを入れます。

csrutil disable

そのあとプルダウンメニューの林檎マークから、macを再起動します。

再起動すると、通常のモードでmacが起動するので
The rEFInd Boot Manager: Getting rEFInd
でA binary zip fileをクリックしてrEFIndを入手し、解凍します

中に”refind-install”
というファイルがあるので、これをターミナルで実行すると、インストールされます。

その後、再起動すれば、起動時にブートローダーの画面が表示されるはずです。

動作したことを確認したら、再度command+rを押しながら起動し、リカバリモードから

csrutil enable

を実行しておきましょう。

とても快適に使えてますので、おすすめです。

参考:
MacBookProにOS X, Windows 10, Ubuntuをトリプルブート

takahashi 著者:takahashi

[要注意] nginx バーチャルホストで複数ポートかつSSL有効化したら平文通信できなくなった話

家のサーバーのnginxの設定をしていたら完全にドジってはまったのでそのメモ。
自分のサーバー環境は諸事情でリバースプロキシ経由でウェブサーバー本体に接続する構成に変更中でして、Nginxをリバースプロキシとして設定していました。
構成は以下の通り。

自分のサイトは、もともとそれぞれサブドメインを割り当てたバーチャルホストが複数稼働している環境だったため、nginx側もバーチャルホストに対応すべく下のような設定にしていました。

すると

BadRequestのエラーが。
いろいろ試してもエラーが解消されず頭を抱えていたのですが、調べていたら以下のサイトを発見。

nginx連載6回目: nginxの設定、その4 – TLS/SSLの設定 – インフラエンジニア way
https://heartbeats.jp/hbblog/2012/06/nginx06.html

>sslディレクティブをonに設定すると、SSLが有効になります。ただし、listenディレクティブでsslパラメータを指定したときには不要です。

>ssl on;

>listenディレクティブにsslパラメータを付けると、そのポートでSSLを有効にして待ち受けるようになります。そのポートに関して後述するsslディレクティブをonにしたのと同じ動作になるため、sslディレクティブの記述は不要になります。

>listen 443 ssl;

あっ、なるほど…!
ssl on;
の記述をしてしまうと
server{}
内で定義されている全ポートにsslが有効になるので、80番ポートでアクセスしてもssl通信と解釈されてしまい、エラーが出ていたようです。
443ポートだけsslにしたい場合は

listen 443 ssl;

とだけ指定しておけば443ポートだけsslを有効にできるようです。

てっきり
“ssl on;”
を入れないとsslが有効にならないものと勘違いしていました(苦笑

さっきの設定を修正すると以下のようになりました。

これでnginxを再起動したところ、無事80番ポートの平文通信と443ポートのSSL通信両方ともできるようになりました。

分かってしまえばなんともくだらない間違いですが、大分焦りました。

もっと勉強せねば…


この記事は、以前筆者が書いた記事を一部変更したものです。

takahashi 著者:takahashi

WordPressの公式プラグイン”Jetpack”に画像遅延読み込み機能が追加!

本日、自分のメールアドレス宛に、jetpack.comからメールが来ました。

Jetpack 5.8ではスピードが改善された
Jetpack に大幅な改良を加えました。

素晴らしいお知らせ: 画像の遅延読み込み機能を実装しました。この機能は、すべての方が使用できるもので、エンドユーザーがページを読み込む際の時間を短縮し、バウンスレートを減少させるのに役立ちます。

Jetpackとは、WordPressが公式で出しているインストール型WordPressの最適化プラグインです。
SaaS型のWordPressである”WordPress.com”で提供されている機能の一部を、手軽に自分のインストール型WordPressに導入することができます。

このJetpack、従来のバージョンでも、画像のキャッシュ機能を利用することはできていたのですが、今回新たに画像の遅延読み込み機能が追加されたとのこと。
早速自分のブログサイトのJetpackを更新してみました。

Jetpackの設定画面に、”Lazy load images” という項目が追加されているのでこれを有効化します。
その後、自分のブログ記事ページを開くと、ページの読み込みが終わった後にスクロールに合わせて非同期で画像が読み込まれていることがわかるかと思います。

ブログが重くなる原因の一つとして、画像などのメディアの表示が影響していることが多い、というのはよく言われる話ですが、この画像読み込みを遅延させることでブログサイトそのものの読み込み負荷を減らす、という手法を、プラグイン一つで簡単に試せるというのは非常にありがたいです。

Jetpackは便利な機能が豊富で、使いやすいので、入れておいて損はないかと思います。
是非お試しあれ!

takahashi 著者:takahashi

その”Prime”はいらなかった。新たな脆弱性 Meltdown Prime/Spectre Prime が発見される。

先日発覚してから大騒ぎになっているCPU脆弱性Meltdown/Spectre ですが、最近別の方法で同様の脆弱性をつくことができる攻撃手法が見つかったそうです。

CPU脆弱性「Meltdown/Spectre」を悪用した新たな攻撃手法–研究者らが発見 – ZDNet

その名前も「Meltdown Prime」「Spectre Prime」。
Primeってぱっと聞くと、高級なイメージが浮かんできますが、実際に調べてみると

primeとは -Weblio

1主要な,主な,最も重要な.
2優良の,最良の,第一等の; すばらしい,極上の.
3根本的な,基礎的な,本質的な.

という意味なのだそう。
恐らく1か3の意味で使われているのでしょうが、個人的には2のイメージが強いので、なんだか皮肉に聞こえてしまいます(苦笑

現時点では攻撃に使ったソースも未公開らしく、詳しい内容については不明です。
参照元の記事では

MeltdownとSpectreを悪用した新種の攻撃には、既存のソフトウェアによる緩和策で十分に対応できる見通しだ。しかし、IntelやAMDなどのチップメーカーは、ハードウェアによる緩和策を開発する必要があると、研究者らは指摘している。

と書かれており、ユーザーにとっては特に影響がないようですが、対応に追われているIntelをはじめとするCPUメーカーにとっては”死体蹴り”な出来事になったかもしれません。

各CPUメーカーが何とか根本的な解決にたどり着くことを祈ります。

takahashi 著者:takahashi

MPEG2の特許が期限切れ。ライセンス料なしで利用できるように。

2018年2月13日、アメリカに残っていた最後のMPEG2に関する特許が有効期限切れになったそうです。

ついにMPEG2の特許が消滅 – Gigazine

MPEG2とは音声や動画の使われている圧縮フォーマットです。主にDVDやデジタル放送などに使われてきました。

MPEG-2 – Wikipedia

特許期間内はライセンス料が発生するので、MPEG2関連の技術を用いて開発されたハード及びソフトは、このライセンス料の支払いが必要でした。
当然、開発側で利用料が必要になるので、販売される製品はその料金を上乗せした形で販売されてきたことになります。
今回の特許期限切れでこの特許料を払う必要がなくなったようで、今後はMPEG2を使う機器やソフトが安く提供されたりなどのメリットが期待されています。

ただし、フィリピンとマレーシアでは特許権は引き続き有効ということなので、関係のある方は注意が必要なようです。

正直なところ、最近販売されている高性能レコーダーが欲しいなーと思ってはいたのですが、そこそこお値段がするのでなかなか手が伸びませんでした。
今回の特許切れでお値段が下がってくれたらうれしいな、と淡い期待をしています(笑

takahashi 著者:takahashi

Zend Framework1 Zend_Mail+PHP5.6ではSSLのチェックが無効化できない

既にサポートの終わったZendFramework1ですが、今使っている方は注意が必要かもしれません。

ZendServer8.5 for IBM i(PHP5.6)を入れて・・・ – ushidayの日記

PHP5.6から、CA証明書のチェックがデフォルトで必須の設定になったようなのですが、
これによって何も指定を行っていない場合、PHPからSMTPS経由でメールを送る場合は接続先SMTPサーバーのSSL証明書が”正しい”物でないと接続に失敗します。

なお、この設定は変更することが可能ではあるのですが、

SSL コンテキストオプション – php.net
調べた限りでは、使用するメールライブラリがSSL コンテキストオプションの”verify_peer”の指定に対応していないと設定変更が難しいようなのです。
Zend Framework1のZend_Mailではこのオプションの指定をサポートしていないため、PHP5.6上で動作させると、強制的にSSL証明書のチェックが有効となります。

ちなみに、Zend Framework1のZend_MailのSSLコンテキスト対応化は行われないことはZend Framework1のGitHubフォーラムで明言されています。

Zend_Mail SMTP SSL Problem with PHP 5.6 – GitHub

takahashi 著者:takahashi

”Chrome アプリ”がついにChromeウェブストアから姿を消す。

つい先日、Chromeウェブストアからネイティブアプリが入手できなくなりました。


“Chrome Appsが有効だった時のChromeウェブストアの画面”Qiitaから引用


現在のChromeウェブストアの画面。 再度バーからアプリの文字が消えている。

Chromeウェブストアから”アプリ”の文字が消え、拡張機能とテーマしか入手できなくなっており、検索しても、”Chrome Apps”がヒットしなくなりました。

これは以前からアナウンスされているChrome Appsの段階的な廃止によるもの。
Chrome Appsとは、Webと同じプログラミング言語で作ることができ、Chromeを通してOSネイティブのアプリとして利用できる仕組みです。
基本的にはChrome/Chromiumが動くOSであれば、どのOSでも手軽にインストールすることができました。
例としては、
Chromeリモートデスクトップ
TeamViewer Chrome版
Line Chrome版
グランブルファンタジー Chrome版
などがあります。

特にLinuxユーザーにとっては、LineなどのLinux対応の公式アプリが提供されていない中で、唯一公式のネイティブアプリが使える手段でした。

Googleは終了する理由として、実際にChrome Appsを利用しているユーザーは1%程であり、Chromeブラウザーをシンプルにするために終了させるとしています。

Google、Win/Mac/Linux向けChromeアプリを廃止へ。配布は来年後半まで、2018年前半で起動も不能に – engadget 日本語版

参照記事にもありますが、ウェブストアからはこの記事を書いている時点ですでに廃止。インストール済みのアプリについてはまだ利用が可能ですが、このChromeのChrome Apps実行機能そのものも、もう間もなくChromeから削除される予定となっています。
なお、Chrome OSでは引き続き実行可能とのことです。

簡単にクロスプラットフォームなアプリが構築・配信出来たChrome Apps、個人的にはかなり革新的だと感じていたのですが、なくなってしまうのは残念ですね。

takahashi 著者:takahashi

mac対応のシンプルで美しいターミナル”Termius”

最近、macで動く高性能で使いやすいターミナルアプリを探しているのですが、なかなか自分に合うものが見つからず….
ネットで探して一番ヒットするのがiTerm2なのですが、このiTerm2、日本語に対応していないのでせっかく細かいオプションが用意されていても使いこなすのがきついなという印象でした。

Macで使えるターミナルエミュレーターアプリ達 - rcmdnk’s blog

他にもいろいろ探しては見たのですが、UIが日本語でなかったり、欲しい機能がなかったり、そもそも日本語が扱えなかったりと、いっがいといいのが無い。

困っていたところでふと、Mac App Storeでまださがしていなかったことを思い出しました。
早速App Storeで探してみたところ、ちょっと良さげなものを発見。


Termiusというアプリです。
このTerminalも飽くまで英語なのですが、UIが非常にシンプルで見やすく、英語でもどのような機能なのかがわかりやすくて、使いやすいです。


サーバー追加画面


ログイン後画面


SSHキー追加画面


ポートフォワーディング設定


その他メニュー

かなるユーザーフレンドリーで使いやす印象だったので、当分はMacではこのTermiusを使っていきたいと思います。

願わくばRloginやXShellのようなターミナルがMacでも出てほしいですね。

takahashi 著者:takahashi

NTFS-3G vs Paragon NTFS for Mac

最近、写真編集作業用にポータブルHDDを購入しました。

HDPH-UTシリーズ – IOData

このHDD、容量が1TBで、USBが3.0とかなりいい感じのスペックなのですが、容量が大きいということでデフォルトでNTFSでフォーマットされています。
このNTFSというファイルシステム(FS)ですが、Windows用のFSのため、基本的にWindowsでしか利用することができません。
例えばMacに接続した場合、一応認識するのですが、読み取り専用となり何かデータを書き込んだりすることができない形で認識されます。
FAT32あたりでフォーマットしてしまえば基本的にどのシステムでも扱えるようにはなるのですが、1ディレクトリ(フォルダ)におけるファイル数や1つのファイルの大きさに制限があります。
書類やテキストがメインであれば全く問題ないのですが、写真や動画を扱うと、そこそこ大きいファイルを大量に保存する場面が結構あります。そんな使い方でFAT32を使うのはちょっと不安です。またNTFSはジャーナリングファイルシステムなので、USBが抜けてしまった時や電源が落ちてしまった時は安全です。(と考えていました)。

実際によく使うのはMacなので、どうしようかなーとずっと思っていたのですが、なんと付属にツールにMacでNTFSへの書き込みを有効化するパッケージがありました。

NTFS-3G for Mac I-O DATA

LinuxでもNTFSの読み書きに対応させる際にもNTFS-3Gというパッケージをインストールするのですが、これのMac版をHDD購入者限定でI・OData社公式のツールとして提供されています。

Mac用の素のNTFS-3Gもあるのですが、かなり設定がめんどくさいので、パッケージインストールだけで利用できるようになるのはかなりありがたいです。

しばらくはIOData版のNTFS-3Gで快適に使えていたのですが、ある時点からアンマウントができなくなったり、すでに取り外されているのにOS上ではまだ接続中として認識されてしまっていたりという不具合が出るようになりました。

デスクトップPCならさほど気にならない問題かもしれませんが、MacBookだと持ち運ぶ際に差しっぱなしにしておくわけにもいかないのでちょっと困って対策方法を調べていたどころ、ある記事が目に留まりました。

MacでNTFSがマウント出来なくなった – Yahoo知恵袋

内部的には、雪豹に内蔵されたntfsprogs由来のNTFSドライバー等です。
ntfsprogsはMacOSXリリース前から存在するLinux NTFS Projectの成果物で
5年ほど前、この計画から分岐したのがntfs-3gです。

ntfs-3gがジャーナリングを一部しか対応していないことや
chkdskやfsckに相当する機能を備えていないことは有名です。
ntfsprogsも同様の状況にあると認識しています。

しょせんNTFSの信頼性は、正規のドライバーによるものであり
ntfsprogsにしろntfs-3gにしろ、Windowsで利用するNTFSに比べれば信頼性が低く
MacOSXでのUFSより優れるということがありえません。

雪豹でのNTFSは読み出ししかできないのではなく、書き込みの信頼性を保証できないから
通常の運用では、書き込みをできない設定で出荷されているにすぎません。
言い換えれば、安易に書き込みを可能にするツールのリリースは
Appleにとっては、よけいなものなのかもしれません。

つまり、NTFS-3Gは”Unix系OSでとにかくNTFSを使えるようにする”だけであり、自動修復やジャーナリング機能は一部しか含まれていないとのこと。
これは知りませんでした…

この時点でMacに接続したNTFSドライブを、何度も強制取り外しなども行っていたので、さすがにこれ以上NTFS-3Gを使い続けるのは危険と考え、思い切って有料のNTFSドライバを使うことにしました。

Paragon NTFS for Mac – PARAGON SOFTWARE

購入時点で2,160円という価格でしたが、ネット上の口コミでも有料であること以外は評判が良かったので思い切って導入。

操作は非常に分かりやすく、シンプルです。
OS起動と同時に起動してくれますし、NTFS-3G同様に、普通の外付けドライブとしてマウントしてくれます。
また、前回強制的に取り外したりした場合も自動でディスクチェックもしてくれるので、NTFS-3Gの抱える問題もクリアしているように見えます。

このドライバに変えてからはマウント解除ができなくなることもなくなりました。

有料版のドライバを使うことが必ずしも最適な選択肢ではないですが、頻繁にNTFSドライブを使っていて不具合に困っている方は試す価値はあると思います。

願わくば、NTFS-3Gも安全にNTFSが扱えるように機能改善されてほしいなと思います。

takahashi 著者:takahashi

LINEでスマホ側に通知が来なくなった時に確認したい設定

ここ最近、PCにはLineの通知が届くのに、スマホには通知が来ない…というときがありました。
スマホの不具合や省電力機能が影響しているのかと思っていろいろ調べていたのですが解決しませんでした。
原因がわからずずっと頭をひねっていたのですが、先日ようやく原因がわかりました。

Windows版、またはMac版のLINEをひらき、設定をだします。

すると下のような画面が出てくるので、左のメニューから”通知”を選択。

この設定の中に”PC版を使用している場合はスマートフォン版への通知をオフ”という項目があるのですが、僕の場合ここにチェックが入っていて、PCでLineを見ているときにスマホに通知が届かなくなっていたようでした…
至極単純な理由だったのですが、原因がわかるまで時間がかかってしまいました。

お困りの方は一度確認してみてください。