著者アーカイブ takahashi

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を見ているときにスマホに通知が届かなくなっていたようでした…
至極単純な理由だったのですが、原因がわかるまで時間がかかってしまいました。

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

takahashi 著者:takahashi

MacでWindowsの”Aeroスナップ”な操作ができるアプリ”Magnet”

仕事では普段Windowsをメインで使っているのですが、使っていて個人的に欠かせない機能があります。
AeroSnap(エアロスナップ)
という機能です。


画面の端へウインドウを持っていくと、画面の半分のサイズで自動的に整形してくれる機能です。
この状態で別のウインドウを右端に持っていくと、

2つ目のウインドウを余白部分に合うようにタイルしてくれます。
Windows 7から実装されたこの機能、Windows8からは画面の1/4のサイズでタイルしてくれる機能も追加されました。

この機能、シングルディスプレイ環境、特に画面があまり大きくないノートPCでは非常に重宝します。
最近よく使うようになったMacでもこの機能を使いたいなーと思っていたのですが、macOSには標準でこのような機能はありません。
唯一全画面表示にすれば2画面にすることもできますが、すべてのアプリが全画面表示に対応しているわけではないですし、全画面表示せずにタイルしたいときもあるので使い勝手はイマイチです。

Windowsの”Aeroスナップ”のようなことをmacOSで実現する方法がないか調べていたら、見つけました。

Magnetというアプリです。
有料のアプリではあるのですが、Windowsの”Aeroスナップ”の機能をいい感じにmac上で再現してくれます。

操作方法はWindowsと同じ。

ウインドウを画面の端に持っていくと


ちゃんと画面半分のサイズに調整してくれます。


さらに、別のウインドウを右端に持っていけば、


Windows同様、余白に合わせてタイルしてくれます。余白に合わせてくれるわけではなく、特定の大きさでタイルしてくれるのみでした…(ただし3分割や横のタイルに対応など、Windowsよりも選択肢は多いです。)


1/4サイズのタイルも対応してます。

自分が普段使っているmacは特に画面が小さいので、ウインドウのタイルができれば作業しやすくなるので、とてもありがたいですね。
しばらく愛用していきたいと思います♪

本当に便利ですし、LinuxでもCompizあたりで標準同等の機能に対応しているので、是非今後のmacOSのバージョンで公式に搭載されてほしいところです。

「Magnet マグネット」をMac App Storeで – iTunes – Apple

takahashi 著者:takahashi

Windows用パッケージマネージャー Chocolatey でコマンドプロンプトをパワーアップさせてみた!

通常、WindowsではLinuxのようにコマンドラインから必要なコマンドのパッケージ追加して…ということができませんが、それを可能にするアプリがあります。

その名も、

Chocolatey です。

まずはインストールしてみます。
PowerShellを使ってインストールします。


これでChocolateyがインストールされました。
一度コマンドプロンプトを閉じ、再度開きます。

実際にパッケージをインストールしてみます。
今回は例として、サーバーのポートチェックで使用するnmapコマンドをインストールしてみます。

これだけでコマンドプロンプト上からNmapが直接使用できるようになりました。

他にもsshコマンドを利用可能にする”openssh”パッケージやnode.js用のパッケージマネージャー”npm”もインストールできます。

Windows用のネイティブバイナリが作れるものに限られますが、Unix系OSで使用しているコマンドをWindowsのネイティブ上で簡単に動かすことができるというのは非常にありがたいですね。

Windows上でもLinuxのCUIと同じようなことをさせたいけど、コマンドがない、インストールがめんどくさい、なんていう方には是非お勧めです。
是非一度試してみてはいかがでしょうか。

————————————————-
Chocolatey
https://chocolatey.org/

参考サイト:
Chocolateyを使った環境構築の時のメモ – Qiita
http://qiita.com/konta220/items/95b40b4647a737cb51aa

パッケージマネージャ[Chocolatey] – Qiita
http://qiita.com/hirohiro77/items/6f3f464fe1251fd615b1

takahashi 著者:takahashi

Macのシステム環境設定にHostsの設定画面を追加するアプリ”Hosts”

Webサイト・Webサービスの開発をしていると何かとよく使うHostsの設定。
たまに変更するだけであれば直接ファイルを触ってしまえばいいのですが、頻繁に変更するときがあったりするとなかなか面倒です。

そんな時に便利なのがGUIのHosts書き換えツール。

普段使っているWindows機ではこんなツールを入れています。

Hosts File Manager

管理者権限が必要ですが、分かりやすいGUIからHostsの設定を簡単に書き換えることができるので、毎回CドライブからHostsファイルを探し出して管理者権限のエディタで開いて…なんて操作が必要なくなります。とても便利です。

さて、最近はサブ機・動作確認用としてMacも利用するようになったのですが、やはり毎回ファイルを直接編集するのはなかなか面倒くさい…
Macにも同じようなアプリないかなーと思っていたらありました!

名前もそのままHostsというアプリです。
pkg形式で入手できるので、クリックしてインストーラーを起動します。

特に設定項目はないので、画面に従ってインストールしていきます。

インストール完了後、Applicationフォルダを探しても見当たらず、「あれ?どこいった??」となり、調べたところ、

なんとシステム環境設定画面に追加されていました。
なるほど、システム全体にかかわる設定なのでちゃんとシステム設定として起動できるようにしてくれるのですね。
これは分かりやすくていいですね。

Hostsのアイコンをクリックすると設定画面に飛びます。

操作方法はWindowsのHosts File Managerとさほど変わりません。
むしろ起動すれば現在のHostsファイルの内容が出てくるのでよりシンプルで分かりやすいです。

鍵マークをクリックし、管理者のパスワードを入力するとロックが解除状態(管理者モード)になります。
後は変更したい項目をダブルクリックして値を入力し、確定すると反映されます。

Web開発などで頻繁にHostsを書き換える必要がある方は是非一度試してみてはいかがでしょう?

参考サイト:
https://delightmode.com/mac-hosts-prefpane/

takahashi 著者:takahashi

丸亀製麵のアプリがリニューアル。クーポンがバーコードを読み込ませる仕組みに変更。

手作りのもちもちのうどんや出来立ての天ぷらが楽しめて、しかも安い。丸亀製麵は機会があるときは良く足を運ぶお気に入りのチェーン店です。

そんな丸亀製麵ですが少し前からスマホアプリを使ったクーポン配信などが始まり、よりお得に利用できるようになりました。
そんな丸亀アプリですが、最近リニューアルされたようで、

クーポンについているバーコードをレジで読み込ませる形式に変更されたようです。
いつも店員さんが忙しそうにしている中、恐らく画面を見てレジに割引を打ち込んでいたような感じだったので、これで少し負担が軽減されるといいですね。

他にもスタンプシステムが導入など、使いたくなるような工夫が追加されました。

ちなみに2月7~9の期間限定で夜6時から、鴨ねぎうどんが半額で頼めるようです。

半額カモン! 夜なきうどん – 丸亀製麵

めっちゃ食べに行きたい…

丸亀製麵公式アプリ – 丸亀製麵

takahashi 著者:takahashi

謎のHTTPステータスコード”418 I’m a teapot”が出た時の対処方法

は一つしかありません。
笑いましょう!

HTTPステータスコードとは、主にブラウザからサーバーへの要求に対して、その結果を3桁数字で表したものです。
例えばよく見かけるものとして、404なら”Not Found(見つかりませんでした)”、403なら”Forbidden(アクセスが拒否されました)”、500なら”Interlal Server Error(サーバー内で問題が発生しています)”などです。ほかにもたくさんの種類があります。

そんなステータスコードの中の一つとして存在しているのが”418 I’m a teapot” です。
意味は “私はティーポット。” で、”ティーポットにコーヒーを淹れさせようとして、拒否された場合に返されるステータスコード”です。わけがわかりません。

なんでこんなステータスコードが存在しているのかというと、”1998年4月1 のエイプリルフールに作成されたものが、そのまま実装されたコード”らしいです。
出典:HTTP ステータスコード 418 I’m a tea pot のページを実装してみた- thought is free

ちなみに、Googleの公式のサイトで、418ステータスコードが実装されているページがあります。
https://www.google.com/teapot


開発者ツールで開くとちゃんとエラーとして表示されます。さすがGoogle。

ちなみのちなみに、ステータスコード418を利用するプロトコル”HTCPCP/1.0″(ハイパーテキスト・コーヒーポット制御プロトコル)なるものがあり、ちゃんとRFC 2324として登録されています。ワケガワカラナイヨ!!!

インターネットのこういうちょっとしたおふざけを公式非公式関わらずに行う文化、個人的に結構好きです。
今年もあと数か月でエイプリルフールがやってきますが、ここ数年インターネット上ではは企業もこぞってジョークを投げあう、混沌とした日となっています。
今年は各方面からどんなジョークが飛んでくるのか…楽しみですね。

takahashi 著者:takahashi

気になる端末:GPD Pocket

持ち運びに特化したノートPC:ネットブックが一時期大流行しましたが、最近はその数をかなり減らし、タブレット型PCやキーボードと画面が分離するコンバーチブルPCが目立ってきています。

持ち運びに重点を置くのなら確かにタブレット型で、キーボードは必要な時に着ける形の方が理にかなっている気はします。ただ、個人的にはキーボードとタブレットを別々で持ち運ぶというのにもちょっとわずらわしいのでは…と思うときがあります。

やっぱり、ノートPCにはハードウェアキーボードがついていてほしい…でもかさばってほしくない….

そんなわがままを叶えてくれるのがネットブックだったので、少なくなってしまったのはちょっと残念に思っていました。

そんな中、彗星のごとく現れたのが、

中国・深センのデバイス製造メーカーGPDが発売した「GPD Pocket」という機種です。
大きさはなんと7インチという極小サイズ。電子書籍と見間違うほどの小ささなのですが、スペックはIntel Atom x7-Z8750、ストレージ128GB、RAMも8GBあります。
CPUを除けばMacBookAirとさほど変わらないスペックです。

ポートもUSB3.0、イヤホンジャック、USB Type-Cなど、主要なものは一通りそろえています。
OSもWindows 10 Home入りですが、Ubuntuも公式にサポートしている点はガジェット通な人の心をつかみそうです。

使用感はこちらのかたのブログでよくまとめられています。

7インチの極小ノートパソコン「GPD Pocket」と過ごした1ヵ月まとめ – goodegg.jp

昔は2番煎じ、3番煎じ間の強かった中華製ガジェットですが、最近は国内や主要メーカーよりもより痒いところに手が届く”一番手”なハードが増えてきた気がします。
是非今後も注目していきたいですね。

参考:
UMPCを忘れられないあなたへ 超小型パソコン『GPD Pocket』を日本でも – Makuake

7インチの極小ノートパソコン「GPD Pocket」と過ごした1ヵ月まとめ – goodegg.jp

takahashi 著者:takahashi

Linux(Unix)のscreenの外からコマンドを実行する方法

LinuxやUnixでSSHにつなぎながら作業する際、時間のかかる処理を行わせたりでしばらく放置しておく機会と言うのはしばしばあります。

そんなときに、途中でインターネット接続が切れてしまうと最悪です。また、トラブル以外でもは会社の業務終了時間になって退社する時するなどでマシンの電源を落とさないといけない場面があったりします。

そんなときにscreenコマンドは便利です。
サーバー側に仮装のターミナルを作成し、そこで様々な処理を実行することが出来ます。
途中でSSHが切断されてしまっても、screenはサーバーの中で動作しているので、処理も続行されます。途中で処理させながらscreenターミナルから抜けることも、再度入ることも可能です。

また、スクリプトを簡易的にデーモンっぽく動作させる使い方もできます。

このscreenコマンドですが、実は外部からコマンドや文字列を与えることができるのはご存知でしょうか。

例えば、s1という名前でスクリーンを作成し、

$ screen -S s1

s1スクリーン内でpythonのプロンプトを起動しておきます。

$ python

Python 2.7.5 (default, Aug  4 2017, 00:39:18) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

このs1スクリーンに、外からs1の標準入力に対して文字列を入力したい場合、
まず、ctrl+a d でスクリーンをデタッチした後で、

$ screen -S s1 -X stuff 'print "Hello world!"
'`echo -ne '\015'`

とした後、再度screen -r s1 でアタッチすると

>>> print "Hello world!"
Hello world!
>>> 

と表示されているはずです!

これは例えば、screenで実行中のプログラムに文字列を渡したい時や、特定のscreenでのみ定期的にプログラムを実行したいときに有効です。

予めシェルスクリプトにしておけば、cronで回すことも出来ます。
便利なので、ぜひ一度試してみてはいかがでしょうか?

参考サイト:
Minecraftサーバをscreenとcronでプラグインを使わずに自動再起動する – 純規の暇人趣味ブログ

別ターミナルで動いているscreenに外部からコマンド実行 – 戯術者の日記

takahashi 著者:takahashi

FuelPHPが”‘Monolog\Logger’ not found”で動作不能に。原因はComposerっぽい。

最近、fuelPHPを使ってWebアプリを開発中なのですが、コーディング外でエラーが発生してfuelが動作しなくなったので対処法をメモします。

ことは突然発生しました。
プログラムを書き換え、ブラウザで実行したら下記のようなエラーが…

さて見慣れないエラーです。
エラー内容にもスタックトレースにも自分のプログラムでエラーが発生している表示はなし。

なんとなくfuelPHP側っぽいなーとは思ったのですがわけがわからないのでGoogle先生に助けを求めたところ、下記のサイトを発見。

fuelphp1.7.2をzipで入れた場合にcomposer使うとfuelが動かなくなる – Qiita

僕の場合、上記記事の最後の”Composerでパッケージインストール実行“を実行。

今回の開発ではComposerを使って操作するようなことは何もしていなかったので、アレ?とは思ったのですが、試したところ正常に動作するようになりました。

どうもfuelPHPはいろいろなところでComposerに依存しているようなので、この辺はもう少しちゃんと調べないといけなさそうだな…と思った次第です。