2015年12月26日土曜日

[日常]arrows m02を買いました!

Xperia M2を買ってからまだ1年と経ってないんですけどね・・・。物欲に負けて買ってしまったんや・・・。
ということで、mineoのAプランを申し込んでarrows m02を購入しました! カラーはホワイトを選択。mineo専用カラーがピンクだったんだよなぁ・・・。 ミクさんカラーがあれば迷わずそれにしたんだけど。黒は野暮ったくて嫌ってことで、消去法にて白。まぁ白は好きなんで問題ありません。

さて、Xperia M2ではMVNOにIIJを使ってたんですが、SIMカードのサイズがmicroSIMだったんですねー。ところが最近のスマホはnanoSIM・・・。 どうすっかなーと思ってたんですが、MVNOは安いだけじゃなく乗り換えもお手軽。違約金も発生しないし、カード再発行とそんなに価格変わらないからいっそのこと乗り換えてしまえ!ってことで乗り換えました。
mineoさんは実家で母親が使ってますが(私がお古のスマホをあげて使っている)、価格もお安い上にLaLa CallというIP電話サービスが基本使用料無料(※ユニバーサルサービスは必要)なのが魅力。

私がXperia M2を買った時にはDプランが提供されてなかったんですよねぇ。されてたらIIJではなくmineoにしていた可能性もあります。
ってなたらればはさておき、今回のarrowsでAプランにしてみたのは、なんとなくドコモ系MVNOよりau系MVNOの方がユーザ数が少なくて空いてそうだったから。実際のところは知りませんが、ま、これまでずっとHSPAで通信してきたので多少混んでいても気にならないでしょう・・・。

arrows m02はミドルレンジスマホという扱いですが、そもそも私のスマホ遍歴が
IS03 → Xperia acro(中古) → HTC J(中古) → NW-880(音楽プレーヤーとして HTC Jと併用) → Xperia M2
ってな具合に、最初のIS03以外は基本的に型落ちかミドルレンジばっかりなんですね・・・。 なんで、ハイエンドの凄さをしらないので、arrows m02にも順当に性能アップを感じています。
まだ全然触れていないですが、ファーストインプレッションは結構いいです。タッチがXperia M2に比べて遥かに良いですねぇ。Xperia M2もLollipopに上がってかなりマシになったんですが、arrows m02の方がはるかによかですねぇ。まぁXperia M2はミドルというよりローかな?という気もせんではないので、そこら辺で比較するのは酷かも知れませんが。

あと地味に嬉しかったのは充電スタンドがついていたこと。あったらそれはそれで便利なんですよねー。あとは電池持ちがどんなもんかってところですな。富士通さんのお手並み拝見と参りましょう。

発売前の機器紹介なんかでは、ミドルレンジの中では防水やおサイフケータイなどがついているということで評価は上々でしたが、何より興味が湧いたのがauもドコモも行けるという変態仕様(笑) SIMフリーのスマホはいろいろと出てきましたが、基本はドコモだけですからねー。
まぁauの電波だけに合わせたSIMフリーなんてあまり嬉しくないだろうところで、まさかの両対応! 発想が斜め上すぎですわーでも大好き(笑)

ということで、しばらくはこの子で遊んでみようかなと思います。Android 6.0くらいまでは上がってくれると思うけど、どこまで面倒見てもらえるかなぁ・・・?
長く付き合えるといいんですけどね。 富士通さん頑張れ・・・!

[Linux]Fedora23へアップグレードしてみた

Linux奮闘中! -某OSとも共存-: [Linux]Fedora23が出たからアップグレード・・・したかった・・・[未解決]の続きです。エラーが出てDNFからのアプデができない、だから修正されるのを待とうじゃないか。そう思っていた時期が私にも有りました(ぇ
結局それを待ちきれず、先の記事で書いたとおり、ロケールをen-USに変えてアップグレードしました。結構前にやったんですが記事にする暇がなくて結局この時期に・・・。と言っても特に書くこともなく、大量のパッケージ更新をただ放置していただけでした。
今回のアップグレードではKDEは目玉になるほどの変化はなかったので(安定性はかなり上がってきたと思いますが)、これまた書くことがない。。。
ま、無事にアップグレードできたんだから良しとしますかね。

さて、お次はいつになるんかな? こないだKDEもWayland対応がかなり進んできたっていう記事を見掛けたし、Gnomeに続いてKDEもWaylandに切り替えてくるかなー?

Waylandになって画面描画がぬるぬるとなってくれりゃ嬉しいがはてさて・・・?
次か次の次。面白くなりそうね?

2015年11月7日土曜日

[Linux]Fedora23が出たからアップグレード・・・したかった・・・[未解決]

先日、Fedora23がリリースされたというニュースを見かけたので、よっしさっそくアップグレードするかーと意気揚々と臨んだわけであります。
・・・えぇ、見事に返り討ちにされたわけですが・・・Orz

結論から言うと、まだアップグレードできてません。メディア作ってアップグレードしたら多分できると思いますが、まぁ時間が解決してくれる問題のような気がしたので気長に待つとします。Gnomeは結構いい感じにアップグレード内容が書かれてたんですがKDEはこれといって書かれていなかったのでそんな急いで上げる必要もないかなぁと・・・。
ちぃと日和ってます(笑)

さて、では事の顛末を。
アップグレードについては早々に色んな所で記事にされるので、とりあえずぐぐってみたところ、どうやら22→23はこれまでのFedUpによるアップグレードではなく、DNFのプラグインであるdnf-system-upgrade-pluginによって実行するようです。
FedUpのコマンドも残っているそうなんですが、yum同様、上記プラグインを使ったコマンドを内部で叩くだけらしいです。
ま、ユーザとしてはやること大して変わらないので早速叩いてみたら・・・
[code_air_edge@localhost ~]$ sudo dnf system-upgrade download --releasever=23 --best
プラグインの読み込みに失敗しました: system_upgrade
Traceback (most recent call last):
File "/bin/dnf", line 36, in
main.user_main(sys.argv[1:], exit_code=True)
File "/usr/lib/python2.7/site-packages/dnf/cli/main.py", line 198, in user_main
errcode = main(args)
File "/usr/lib/python2.7/site-packages/dnf/cli/main.py", line 84, in main
return _main(base, args)
File "/usr/lib/python2.7/site-packages/dnf/cli/main.py", line 117, in _main
cli.configure(map(ucd, args))
File "/usr/lib/python2.7/site-packages/dnf/cli/cli.py", line 1006, in configure
self.base.plugins.run_init(self.base, self)
File "/usr/lib/python2.7/site-packages/dnf/plugin.py", line 104, in run_init
plugin = p_cls(base, cli)
File "/usr/lib/python2.7/site-packages/dnf-plugins/system_upgrade.py", line 359, in __init__
super(SystemUpgradePlugin, self).__init__(base, cli)
TypeError: must be type, not None

What's!?
まさかのエラー。しかもばっちり、system-upgradeプラグインがエラーを出していやがる・・・。
はて一体何のエラーかしらね、リポジトリが悪さしているのかしら、と思ってサードパーティのリポジトリを一旦無効にして試してみましたが状況変わらず。
なるほどリポジトリのせいではないとするとさて分からんなー、とりあえず通常のアップデートを済ませるか、って思ったらここでも同じエラーが。

ってーことはアレか、system-upgradeそのものに不具合があるんだな。こんなエラー最近まで出てなかったから、つい先週辺りにアップデートした時になんかおかしくなったなこりゃ。
となるとまずはsystem-upgradeプラグインを再インストールだ!ってやってみたけどやっぱり状況変わらず。

うん、うんうん知ってた知ってた、それくらいじゃ変わらないよねー(泣)

とまぁここまで来たら正直お手上げなのでググる。素直にググる。
そしたら冒頭のリンク先、コメント欄で見つけたよ同じ症状の人・・・。
Upgrading from Fedora 22 to Fedora 23 - Fedora Magazine
Help me please!

I just ran sudo dnf update minutes ago, which installed dnf-plugin-system-upgrade. But after the update dnf failed to run any command.
(省略)
加载插件失败:system_upgrade
Traceback (most recent call last):
(省略)
(The Chinese characters means ‘failed to load plugin’)
この人への返信コメントで、ようやく真因を発見。
Bug 1278031 – dnf fails to find system-upgrade plugin with certain locales (Chinese, Japanese and maybe more)

これだからPython2は嫌なんだ!!!

って愚痴はまぁ置いといて。まぁよくあるCJKハブられ問題ですよ。マルチバイト文字バンザイですよ。
ってことで、認識はされているっぽいのでそのうち修正版が降ってくるでしょう・・・。 FedoraのPythonも標準が3系に移行しているのでこうした問題も少なくなってくるとは思うんですけどね。
まーロケールを一時的にen_USにするっていう手もあるけど、そこまでせんでもええかなぁ・・・。

ということでFedora23はしばらくおあずけ!
私と同じ症状にハマるFedoraユーザがどの程度居られるか分かりませんが、解決策はともかく要因はコレです。ロケール変えて対応するも良し、待つも良し。

11月中には解決しますかねー?

2015年6月21日日曜日

[Linux]PulseAudioのDLNA Sinkを使ってみた

先日引っ越したわけですが、それに伴いPCの音響周りが様変わりいたしまして。
これまではPCからHDMIにてAVアンプに映像と音声を出力して、AVアンプから7.1chスピーカ構成となっていたわけですが、現在はAVアンプはリビングにTV周りとつながっており、PCは自室にてPCディスプレイと直結。
このため、PC内の音楽を再生するには自身がDMSを立て、AVアンプからアクセスして再生するとか、まぁいくつかの方法が考えられるわけです。
が、私が知る限り、DLNAクライアントでアルバムシャッフルに対応したものは見たことがありません・・・。
いわんや、うちのAVアンプ(ONKYO TX-NA579)も当然対応しておりません。

うーん、どうしようもないんかなーと思ってダメ元で「PulseAudio DLNA」でぐぐってみたところ、なんとPulseAudioのSinkとしてDMRを使うことができる、まさに私が欲していたばっちりなプロジェクトがGithubにあるじゃないですか!!!
masmu/pulseaudio-dlna · GitHub
これにはなかなか興味を惹かれまして。
導入を試みていたのですが、本日ようやく音を出すことができたのでそのやり方をば。

事前準備

まず事前準備として、Firewallにて適当なポートを開けてやります。DMRからpulesaudio-dlnaで公開するDMSにアクセスできるようにしてやらないといけないんですね。
引数無しでpulseaudio-dlnaを起動した場合、8888番で待ち受けます。これをそのまま使ってもいいでしょうし、何かとバッティングしているなら適当な番号で公開しましょう。ポートの開け方についてはここでは説明を省かせていただきます・・・(Fedora20以上ならFirewalldのはず。iptablesを使っている場合はそちらで設定ください)。

DMRへ接続

ポートが空いたらDMRへ接続です。なお、私の場合は自動探索でなぜかうまくDMRを見つけてくれなかったのでURL直接指定です・・・。
DMRのサービスURLについてはgupnp-universal-cpというアプリで調べることができます。DLNA周りでいろいろと調べるなら入れておいて損はないアプリです。
うちのアンプの場合はサービスURLは下記のようになります(ポート番号とかは適当です)。
http://xxx.xxx.xxx.xxx:1234/upnp_descriptor_0
これを指定してpulseaudio-dlnaを起動するには以下のように実行します。
$ pulseaudio-dlna --renderer-urls http://xxx.xxx.xxx.xxx:1234/upnp_descriptor_0
このあたりは機種によってまちまちでしょうから環境に合わせて設定ください。。。
うまくいけば「INFO:root:"TX-NA579" registered.」みたいなメッセージが出ます。

音を再生

DMRへ接続が完了したらpavucontrolなどから再生Sinkデバイスをpulseaudio-dlnaによって接続されたDMRに変更して通常通り再生すればOK!
DMRから音が流れだしたら成功です!

その他

デフォルトでは再生音はmp3にエンコードされてDMRに転送されるようですが、うちの環境ではmp3への変換がうまくできなかったのかエラーを起こしていたのでエンコード形式はwavにしております。これもpulseaudio-dlnaの引数に「--encoder wav」と指定すればOKです。ただ、どうもPulseAudioの設定は無視されている模様?
当方の設定では48000Hz/32bit le形式にしており、PulseAudio的にはDMRのSinkもその形式になっているのですが、AVアンプが再生しているストリームの形式を確認すると44100Hz/16bit なんですよねぇ。これだとハイレゾ音源がダウンサンプリングされてしまうのでせっかくのDLNAを活かせていないような気も・・・Orz
ただ、このPulseAudioのSinkプラグインの方式では、元のファイル情報は残っていないだろうから難しいのかな・・・?
ココらへんはソースを見ながら追いかけて行ったらどうにか出来たりするのかしら。フォーマット指定はあるけどサンプリングレートとかビットレートについては指定できないんだよなぁ。でも多分やってできないことはないだろうからそこは要調査かな。

ということで、非常にニッチなアプリでしょうがPC(Linux)の音をDLNA経由でアンプから再生したい人は一度お試しあれ。
ストリーム扱いなのでPCからの音すべてがDLNA経由でAVアンプから再生されます。結構面白いです。

まだまだ不安定ですが、こういう自由度がLinuxはたまりませんなぁ・・・w

2015年6月7日日曜日

[Linux][Fedora]Fedora22へアップグレード


ということでFedoraのアップグレード記録。
今回もアップグレードはFedUpを使用しました。
しかし今回のアップグレードはなぜか大変苦戦・・・。途中で自身の引越も挟んだためにちゃんと動くようにできるまでにかなり掛かってしまいましたがなんとかなりました!
ということでTopはPlasma5のデスクトップ絵。天気予報のウィジェットは野良のものをインストールしました。まだPlasma5用のウィジェットは数が少ないようですねぇ。
そのうち増えてくるとは思いますが、なんのかんのとKDE5になって仕様が変わっているようで、そこいらはまだまだ触りきれておりません・・・。
かなり見た目がおしゃれになったなーという感じ。KDE4の頃から大好きでしたがより好きになりました。
ただ、まだ安定はしてないようですかねぇ? うちの環境だとめちゃくちゃCPUリソースをPlasma5が持って行くんですが他の方だとどうなんでしょう・・・? GPUをうまく使えていない・・・?
このあたり、Waylandになったら改善されるんですかねぇ? Gnomeの方はWayland対応が進んでいるとかいないとか。Gnomeは使ってないのでさっぱり分かりませんが。KDEがWayland対応するのを楽しみに待っておくとしましょう。

それでは今回の悪戦苦闘日記。
気付けばFedora22がリリースされたということで、引越を週末に控えた土曜日にささっとFedUp。これ自体はすんなり完了したんです、えぇ。 ただFedUpを使ったのが運の尽きだったかも知れません・・・。
FedUpが完了し、Fedora22を起動しようとするとブート開始直後にフリーズ。なんじゃこれ、さっぱり分かんねぇ!って思って旧カーネルを選択肢てみても全く同じ所でフリーズ。 せめてEmergency Modeに落ちてくれたらと思うものの、そんなことはなくフリーズ。

埒が明かないので、Grubに登録してあったレスキューモード用のカーネルで起動してみると、こちらは起動。とりあえずjournalctlで起動エラーの内容を確認してみると、なんとUEFIにて指定しているvfatのEFIパーティションのマウントに失敗。これのせいで起動できていないという感じに。

※ なお、これは後で判明しますが全く関係なかったようで、真因は別に有りました。

おいおいおいおい一体どうなってやがると。vfatがマウントできないって一体何の冗談かと。dracutでinitramfsを作るときにvfat用のモジュールが取り込まれなかったとでも? そんな馬鹿げた話があるか! とかやさぐれながら、とりあえず検索してみると同様のエラーで起動できなくなった案件がちらほらと。
が、悲しいかなどの案件も未解決のままでレスが終わっている・・・。
これ、もしかしてやべぇのかなとか思いながらも自身の引越なんかもあって1週間ほど放置してたんですが、まぁ触ってないので久々に触ってももちろん起動してくれるわけもなく。

dracutでinitramfsを作りなおしてみてももちろんダメ。レスキューモードで起動して、それぞれのbootやらefiパーティションやらをマウントしてchrootしてdracutでinitramfs再生成してもダメ。というかレスキューモードで起動した時にはvfatが読み込まれていないのか知らないけれどefiパーティションをマウントできないのよねー。その状態でinitramfsを再生成してもそりゃダメだろうと。

そいじゃーFedora22のLiveUSBだと起動するのかしら、と試しにLiveUSBを作って起動したらすんなり起動。あぁ美しいかなPlasma5のデスクトップ・・・!
くっそこれを早く使いたい! LiveUSBが起動するということはハード的には問題なく、なんかの設定だろクソ!って思いながらここでもchrootしてinitramfsを再生成してみたけどやっぱりダメだった・・・Orz

ココらへんで挫けそうになったんですが、そういやまだ試してなかったなと思ってランレベル1、シングルユーザーモードで起動してみたところなんとすんなり起動。
ちゃんとefiパーティションもマウントされている。 あっれあっれ、なにこれどうなってんの? と思いつつ、そのままtelinitでランレベル5で起動しようとするとフリーズ。
HAHAHA、おいまさかこれXが起動できないとかそういうオチか? え? って思いながら次はランレベル3で起動したらなんと起動。
これはいよいよXが怪しい、そう思ってstartxしたら案の定起動失敗。
ログを確認したところ、どうもABIのバージョン不一致。しかもradeon。

なるほど、バージョンがおかしくなっているのだというのならパッケージ更新してやろうじゃねぇの、って更新しようとしたら800MB程度の大漁のパッケージがあったんでちょっとWait。多い、これ全部やっておまけに起動しなかったら悲しいぞ、ということでX関連だけアップグレード。

そうするとstartxでのABIバージョン不一致によるエラーは解消。されたものの、やっぱり立ち上がらない。
今度はブロックデバイスファイルにアクセスできないというエラー。まぁ一般ユーザーでの実行だしね、仕方ないね、無意味だろうけどブロックデバイスへのアクセス権限を666にしてみようか、ってやってみたら、エラーは消えたもののXは起動しない。
そしたらsudoでX起動したらどうなるんだろう、ってやってみたらX起動するじゃないですか・・・!

でもroot権限でXが起動したところで仕方ないし、この状態でtelinit 5ってやってもやっぱりフリーズ。

くっそあと少しなのに・・!って思いながら、もうこうなりゃしかたない、残りの更新パッケージ全部当ててやるか・・・!って当てたところなんとすんなり起動Orz
EFIパーティションがマウントできないとかいうjournalctlのエラーは一体何だったのかと。

どうも、FedUpのタイミングが悪かったのかなんなのか、fc22のパッケージとfc21のパッケージが混在していたためにXがうまく起動しなかったのが原因だったようです。最新パッケージに更新したことでバージョンの不一致等が解消され、無事起動したようでした。

しかしながら解せないのはFedUpで実行したのになんでそんなパッケージの混在が発生してしまったのか。基本的には全部最新のパッケージにしてくれるはずだと思ってたんだけどなあ・・・・。 つまるところ、chrootでやるべきはinitramfsの再生成ではなく、dnf updateだったようですOrz

何はともあれ、Plasma5による新しいKDEを楽しんでいます。
まだちょっと不安定なところも有り、KDE4.0の頃を思い出しますが、そこから怒涛の勢いで更新されてすぐ安定しましたし、そんなに心配は要らないですかね。
目下の課題は接続環境が変わったために音が鳴らなくなってしまったこと・・・。ここはまぁUSB DACなんかを追加して環境を整えたいところですねー。

あと、いよいよ22でyumがdnfに完全に置き換わりました。yumだとインストール済みのパッケージに対してinstallコマンドを実行したらupdate扱いでコマンドを実行してくれたんですが、dnfだとinstallコマンドとupdateコマンドは完全に分かれてるっぽい? installだと「最新だよ!」って言ったくせに、updateコマンドだと更新を取ってきたりしてちょっと面食らいました。 そういえばインストールされていないパッケージに対してupdateコマンドは実行しなかったなぁ。そっちを試しても面白かったかも知れない。

ま、今回もいろいろと勉強になりました(笑)
やっぱFedoraはこうでないとな・・・!

2015年5月2日土曜日

[日常]Android 5.1.1が降ってきたNexus7(2013) 特定の通知を受けてハングアップ


うーん、Lolipopは随分とバギーなようですね・・・?

Nexus7(2013)使っていて5.1.1が降ってきた人は、古いバージョンのまま更新されてないアプリの通知は切っておくほうが無難かもしれません。
今回はそんなお話。

世間的には5.2がリリースされた?らしい?という話が出たまさに次の日、遅れていた5.1.1がようやくNexus7(2013)に降ってきました。なんかNexus7(2012)より払底来るのが遅かったとかなんとか。
ただ、5.2でようやくメモリリークが直ってたようで、ってことは5.1.1では直ってないってことで。
なんでアップデートはどっちゃでもよかったんですがそこはそれ。上げてなんぼですよえぇ。そういうの大好きですし!

で、さっそくアップデートしてしばらくしたら
「カチッ・・・カチッ・・・カチッ・・・」
とエンドレスでディスプレイのON/OFFを繰り返す音が。

おっかしーなー、なんだなんだ?ってタブレットを眺めてみるとなんか壁紙が初期化された上にずっと点滅を繰り返してる。
電源ボタンを押してディスプレイをOFFにしたら音は収まるんだけど、次にスリープから復帰させたらまた点滅を繰り返す。

で、電源長押しのシャットダウンについては実行できまして。再起動したらとりあえず問題なく動いていたり。
って思ってしばらくしたらまーた「カチッ・・・カチッ・・・カチッ・・・(ry」

うん、これやばい、これアカンやつや! って思ったけれどもう夜も遅い。とりあえず原因も分からんからしばらく様子を見ながら一体何がこの現象のトリガーになってるのか調べよう。そう思って動画だけSNSに上げて寝ました。

でもって次の朝、どうやら問題なかったらしい。いつものごとく朝の挨拶つぶやいて朝の支度してたらまーた点滅。
もうここらへんになってくると慣れたもんで、さっさと再起動して出社。 電車内でもまぁハングアップしたりしてもうほんとどうすっかなこれって途方に暮れた一日でしたが、帰って調べてみるとどうやらちらほらと報告はされてたみたい・・・?(日本語では見つかりませんでしたが)。

で、やれ「Google検索アプリの ok,google 機能を殺せばOK」だの、「SmartLockを全部無効にしておけばOK」だのちらりほらり見つけた対処法らしきものを試しますが効果なし。
そんな中見つけた次のスレッドでティンときた。
Issue 163385 - android - systemui crash when setting Notificaion.icon but not through Builder.setSmallIcon() - Android Open Source Project - Issue Tracker - Google Project Hosting
このスレッドいわく、どうも通知絡みで不具合なのかなんなのか、システムが意図しない通知を送られるとちょうど私の端末の症状が発生するらしい。
(なおこの症状を調べていて、初めて「crash loop」と英訳されることを知りました。今後役に立ちそうだ。立てたくないけど)

確かに、Android5.0で通知周りは結構変更が入って、古めのアプリであればシステムが意図しない通知を送ってきている可能性はあり得る、そして自分は_ks/問題強調/モンキチ ベータ版 (@_ks) | Twitterさんの作ってくれたSNSクライアントを使っている・・・。
このクライアント、かなり前に作ってもらってそして随分更新されていない。もちろん5.0対応もしていない(4.0くらいに作ってもらったような・・・?)。
通知周りで意図しない挙動をしている可能性は少なくない。

そういえば、症状が出てから次の朝まではなんともなかった。私は寝るときには端末のWi-Fiを切り、さらに部屋のルータを始め家電の電源を電源タップからOFFする人なのです。なので夜中は一切通信をしないため、もちろんSNSの通知も受信しません(※ なお、その日は夜に通知来てなかったので通信してても一緒でしたが・・・w)

で、朝起きて挨拶ツイートしたしばらくあとにcrash loop。さらに電車内で適当なニュースをつぶやいてしばらくしたらcrash loop。帰ってきて適当なニュースをt(ry

タイミング的にはSNSクライアントの通知が非常に怪しい。こうなったら通知が来るのをばっちり見届けようって、じーっと端末見てましたら見事にTwitterのリプをもらった瞬間端末がcrash loopへ。
あぁ、もうこいつでほぼ確デス!(ピスタチオ風)ってことでそのクライアントの通知を切ってみると、それまでのcrash loopが嘘のように快適に過ごせるようになりましたとさ。

今回のケースの場合、サードパーティのクライアントのため、それの通知を切っても本家アプリも入れていたので通知自体は本家アプリからも届くってことで特に困りませんでした。アプリ自体をアンインストールする必要はなかったので助かってます。個別に通知が切れるんでしのげましたね・・・。

ただ、これ、多くの人が「壊れた!」って匙投げるレベルの不具合じゃないかなぁ・・・? Nexus7(2013)以外では出ていないのか、かなり致命的な不具合の割に話題になってません。Nexus7(2013)ですら英語で数件しか見つかりませんでした。探し方にもよるんでしょうが、なんせ遭遇する確率は低いようです。ただ、低くても食らっちゃうとかなり面倒です。
通知を切ればいいじゃないって話ですが、これ、システムUIがクラッシュしてるので、セーフモードでも通知を受けたらcrash loopに入っちゃいます。
タスクアプリのように、完了処理をするまでスヌーズで起動直後すぐに通知を出すようなアプリが原因だった場合、通知を切る設定をする前にcrash loopに入る可能性も有ります。そうなるとadbで該当アプリを削除するくらいしか手がないと思いますが(ファクトリーリセットとかは除く)、それをやれってのは酷な話だと思うんですよねぇ・・・。

しかしマイナーバージョンアップだと思って油断した。まさかこんな罠が待っているとは・・・。
日本語での記事を見かけなかったので書いてみた。今は記事出てたりするのかな?

運悪く症状にぶち当たっちゃった人は通知を疑ってみてくださいませ!
ではでは!

[日常]SWR10壊れました・・・(修理見積もり中)


えぇ、買ってちょうど11ヶ月。ソニータイマーちょっとフライングでしたね(違

買ってからとりあえずほぼ毎日着けてたわけですが、まさかこんなところが壊れようとは。。。
少し接触が悪くなってきてるなー、あぁ、洗ったあとの乾かし方が不足してて端子がちょっと錆びついちゃったか? さびとれーる使わないとなぁ、とか思ってたらまさかですよ。

で、壊れたのが4/28の夜。明日からGWっていうまさに直前。まー修理に持ち込むにはある意味でちょうどいいタイミングでしたけどね・・・?
で、買ったのがソフマップの通販だったのでとりあえず神戸のソフマップへ。幸い修理カウンターは空いてて誰も居なかったので受付レシートを発行して問診票?をカキカキ。

程なくして呼ばれて状況説明。写真も撮っておいたのでそれを確認してもらって、手続きはつつがなく終了。
ただ、ソニーさんもうGW入ってると思われるので、第一報が2週間後とかになるかもしれませんとのこと。まーしゃーないね。。。

実のところ、コネクタがあんまりにも綺麗に外れた(というか充電用のmicroUSBケーブルの方のコネクタにひっついてきた)ので、押しこんだら充電できたんですよね。
ってことで、使えなくはなかったんですが1年以内の保証期間なんで一応修理依頼出しておこうかと。ただ、店員さんいわく、完全破損ということで無償修理の対象外かもしれないとか。うーん、そうなると正直時計機能もついてる後継機種の方が欲しくなってくるんだよなぁ・・・。つか後継機種出るの早すぎるよ! あんなに早く出るとは思ってなかったんだよ! クソッ!

ということで、SWR10を外してる生活に戻ってきたわけですが、通知はともかく、端末忘れ防止に一役買ってくれていたのでそこが不安ですねぇ。GW、飲みに行く機会がちょろちょろあるので、そこでお店にスマホをうっかり忘れないように普段以上に気をつけなくては・・・。

ということで、SWR10をお使いの方(がどれくらい居られるか疑問ですが・・・)は、端子部分に起きをつけ下さいませ。
デジタルガジェットは結構たくさん持ってるつもりだけど、端子壊れたのは初めてだったなぁ・・・。

2015年3月21日土曜日

[Linux][Fedora]HDD故障のため、環境移行

経緯

ここ数日、なんかHDDがおかしいらしい。起動時にfsckでジャーナルの復旧が走り、挙句にemergencyモードに落ちる。
ただ、^C+Dで通常ブートに戻れるって書いてあって、実際戻ったら普通に使えてたんで、気持ち悪いなーとは思いながらもそのまま使ってたんですが・・・。
とはいえ怖いので、SMARTをチェックするもオールグリーン。はて、なんかの不具合か?と思っても毎日出る。
ゼッタイ消えるとまずいファイルだけバックアップしてずっと使っていたところ、19日の夜、突然のフリーズ。 あぁ、いよいよもって死期が近づいているらしいと悟り、急遽環境移行策を検討することに。

まだブログにまとめられてませんでしたが、つい先日、MBRからUEFIに無事移行することができてあぁよかったよかった、と思っていた矢先ですよ・・・。Windowsは再インストールしたけれどUEFIに移行できて、Fedoraの方は再インストールすらせずにUEFIに移行できたからこれで新しいHDDを買うのは当分先でいいわーとか思ってたのに・・・Orz

で、悲しくもFedoraのHDDを交換することになったわけですが、そっくりそのままの構成でミラー的なコピーではなく、もういっそのこと入れなおしてしまおうとは思っていました。今の環境は/bootの容量が200MBしかなく、容量不足でkernelの更新やFedUpでよく怒られてましたからねぇ・・・。

で、今ならせっかくだしSSDも興味がある。ただ、ユーザデータが多いので(600GB超)、SSDにすべて放り込むのは現実的ではない。ってかどうせならSSD+nasneも捨てがたい・・・。
とまぁ、今までもやいのやいのと考えてはいたんですが、壊れたからには急ぎということでもう決めてしまわなくてはならない。
nasneは追々欲しいなと思っていたけど、今ここで予定外に2万円をSSDに上乗せは厳しい・・・。
ってことで、構成としてはSSD+HDDで行くことに。

で、HDDはさておいて、SSDはどんくらいの容量を買うかというのが問題に。
当初、
「SSDは高いし、とりあえず起動が早くなりゃ十分だから/boot/が収まる程度でいいかなー。32GBか、最悪16GBくらいかなー?」
なんて思ってたんですが・・・。
モンキチさんから
「随分価格も下がりましたし(約1万円で256GB)ここはもうちっと頑張りましょうよ。」
ってツッコミが。
はて、そんなに値下がりしてたっけ?って思ってカカクコム見たら確かにそれくらいの価格・・・。 いつの間にこんなに値下がりしてたんだ、ってか自分が動向を追いかけてなさすぎただけか!?
ってことで、なるほどそのくらいの価格ならHDDとセットで買っても2万円程度で収まるってことでSSD 256GB、HDD 1TBで行くことに決定!

いざ買い出し!

無事構成も決まったということで、いざ買い出し。神戸のソフマップへれっつらごー。
点灯で見てみると、なるほどカカクコムで見た程度の価格。特にメーカーにこだわりとかがあるわけでもないので真ん中くらいの価格のものをチョイス。困ったらあまりに安いのはよけていく主義。
購入したのは
SSD: crucial M550 (256GB 11858円)
HDD: WesternDigital WD Green (1TB 6782円)※ 3/21 23:53 価格が逆だったのを修正
これとSATA3のケーブルを2本買って、しめて2万円なり。ぴったり予算通りです。

SATAのケーブルについては、使い回しじゃなくて買い増し。M/B自体はSATA3に対応してたんですが、HDDが対応してなかったんでケーブルも古いのを使いまわしてたんですが、せっかく買い換えるならってことで。
まぁ、SATA2用のケーブルでも理論上SATA3の速度は出せるとか言う話だけれど、高いもんでもないしどうせならってことで。速度差があったよ!っていう記事もあったりするからここはプラセボでもよしってことで。あとから交換はめんどいし。

HDDの移行(物理)

データ移行を開始するにあたり、まずは旧HDDを取り外して新HDDへ交換する作業をば。
これがめちゃくちゃ難航した・・・。
使ってるケースはAntecのちっこいやつなんですが、これ、中がいわば2階建て構造というか、完全に分離しておりまして、まぁ言葉で説明しにくいのでこちらから引用。
NSK3480 製品情報 コンピュータ関連製品の代理店事業 l 株式会社リンクスインターナショナル
特殊なハードディスク設置箇所①
通常のケースとは異なり、ケースの上部ユニットにハードディスクの設置箇所があります。下からハードディスクのネジ穴に合わせ、ハードディスクを固定します。ネジ止め部分にはシリコングロメットを備え、ハードディスクの振動を吸収しノイズを低減します。 ※ケースの上部ユニットにハードディスクを設置した場合は、5.25インチベイが1基使用できなくなります。
まぁ、これ、このケースで組んだことがある人でないとイメージつかないと思うんですが、ほんっとここがキツイ。
構造的にかなり余裕がないのはさておき、ここにHDDか光学ドライブを計2台、底側にHDDを1台搭載する以上の搭載はまずできないと思われるんですね。

それに対し、当方は上部にHDDとDVDドライブの計2台、下部にHDDとSSDの計2台、合計4台搭載しようとしている・・・。
SATA用の電源の口は実はちゃんと4つはあるんだけれど、その位置が絶望的・・・。
SATA用の電源コネクタは、大体の場合、電源ケーブルの房に2個(真ん中辺りに1個と末端に1個)ついていますが、NSK3480も多分にもれずその構成です。
が!!!
こいつ、電源が上部に有り、部屋が物理的に分離されているためにケーブルも容易には下の部屋に持ってこれないんですよね・・・。末端側のコネクタはギリギリケーブル通しの穴を通るんですが、中間位置のコネクタは通らない。
つまるところ、ケーブルの長さとHDD/SSDの設置場所の関係で、かなり無茶をしないと電源コネクタが届かない・・・。

で、かなり無茶して電源コネクタを接続してドライブを固定しましたよ、えぇ・・・。マジきつかった。特にDVDドライブはもうこれ外したくないよ・・・。

なお、データ移行中はこんな状況でした。

外に飛び出しているHDDは故障したHDDです。SSDはこのあと、FDDのベイにガムテープで固定しました(笑)

まずはFedora再インストール

つい最近、会社でCentOS7のインストールをやったのでまぁ似たようなものってことで。うちに帰ってPCケース開けてきったなかったんで掃除機でホコリ吸ってFedoraの入ってるサムスンのHDDを抜き出して買ってきたSSDとHDD繋いでLiveUSBをPCにぶっ挿していざインストール!
ユーザデータは後でコピーするし、必要なソフトはあとから気付いた時に入れてやればいいってことでここではパーティション設定だけ注意。
CentOS7では標準ファイルシステムがXFSになってましたが、Fedoraの方は今もext4。そこはちょっと意外だったなー。こっちも変わってるかと思ってた。

で、どんな構成にするのがいいかなー、とりあえずおまかせにしてみるかーって任せてみたら
SSD: /dev/sda
HDD: /dev/sdb

/boot/efi /dev/sda1 200MB EFIパーティション
/boot /dev/sda2 500MB ext4
/ /dev/sda3 64GB ext4
swap /dev/sda4 70GB swap
/home /dev/sdb1 931.5GB ext4
ってな感じになってました。いやまてswap摂り過ぎやろ・・・。ってことでこれをベースにswapを消して/に全振りでセットアップしました。
今のシステムは8GBのメモリを積んでいて、メモリの使用量は多い時で4GBちょっと超えるかなーってくらいだったので、swapはなしで。
仮想OSとか動かし始めたらメモリ増強してもいいんだけど(あと2スロット余ってる)、まぁそれでもメモリを買い足すだろうからswapはなくてもいいと思うんだよなぁ。

で、さくっとインストール。インストール中に洗いものしてたんで、いつくらいに終わったかはよく分からず。まぁLiveUSBのイメージからのインストールなんでパッケージ数は知れてるはず。30分はかかっていないかと。

データコピー

セットアップはさらっと終わったので、まずちゃんと起動するかを確認。いやーしかし、ほんとに起動はくっそはえぇな! さすがSSD。驚きの速さ。これまでとは比較になりませんね・・・。 Linuxもこんな高速起動できたんだな・・・。今までが遅すぎたんで隔世の感がありますね。
$ systemd-analyze
Startup finished in 2.064s (kernel) + 6.562s (initrd) + 2.113s (userspace) = 10.739s
なお、fsckがジャーナルを復旧してた時は起動に2分弱掛かってました。まー復旧しててもその程度だからまだマシとも言えましょうが・・・。

とまぁ、無事に起動することも確認できたので再びUSBメモリからブートして旧データの移行。
念の為リードオンリーでマウントして、ユーザデータのディレクトリに移動したらtarでまるっとコピー。
$ tar cO . | tar xvf - -C ../dest/
cpとかでもいいですが、なんとなくtarで。まあ容量そこそこあるし、時間も掛かるだろうってことでこの間に夕飯の買い出しとか行ってました(笑)
600Gb程度ありましたし、さすがに時間かかりましたねー。エラーは何も出なかったのが救い。ジャーナリングの復旧に走られるのは間違いなく/home含む/パーティションだから、ちょっと心配してたんだけど、不良箇所はそこじゃなかったのかね?

復旧完了!

データ移行が終わってSSDも設置完了して、ようやくさくっと起動。
一旦rootでログインし、コピーしたユーザデータの所有者をchownで変更しつつ、適当にパッケージ更新&インストール。
とりあえずよく使ってたなと思い浮かぶものをぽろぽろと入れていったけど、意外と追加のパッケージは入れてない。
まぁ今後、開発系のパッケージを入れることはあるだろうけどそんときでいいやー。

いやーしかし、HDDが故障した時にはどうしたものかと思いましたが、なんとか無事に復旧しました。
まだいくつかの後処理(旧FedoraのUEFIブート情報がNVRAMに残ったままだったりとか)がありますが、まぁそこはのんびりやっていきましょう。

SSD、起動速度はちょっぱやだけどそれ以外での恩恵はまだほとんど感じられてないんだよなぁ。
さて、いかがなもんでしょな?

さて、次は寿命的にはWindowsのHDDだがはてさて・・・?

2015年2月14日土曜日

[Linux][Fedora] PulseAudioでHDMIの5.1/7.1chを鳴らしたい!

概要

かなり前にも一度チャレンジして、鳴らすこと自体はできたんだけど弊害も大きそうだったんで放置してたPulseAudioでのHDMIマルチチャネル再生設定。
今回久しぶりにまたやってみようってことでいろいろとググったらうまく行ったので備忘録として記録しとこうかなと。

ぶっちゃけ海外の質問サイトに書いてあったことをそのまんま実行しただけなんだけどね!

前置き

実のところ、PulseAudioのデフォルト設定ではアナログデバイスについてはサラウンド設定をきちんとプロファイルとして拾ってくれるんですが、HDMIについてはなぜかプロファイルを拾ってこない。例えつないでいるアンプがマルチチャンネルに対応していようとも「そんなの関係ねぇ!」である。

ただ、それはPulseAudio(というかudev?)に自動検出させた場合。デバイスの自動検出を無効化して、搭載しているデバイスごとにチャンネル数とチャンネルマップを指定すればマルチチャンネル再生するHDMIデバイスを認識できる。
だがこの場合、2つの弊害がある。
  • プロファイルではないので「ステレオ」「5.1ch」「7.1ch」などを切り替えられない
  • 自動検出を殺しているので複数のサウンドデバイスを使っている場合は各々の設定を自分で行う必要がある
1つめの弊害については実用上それほど問題にならないと思うが、2つめは割と面倒。
USBオーディオI/Fなんかを使っている場合は割とデバイス番号が変わったりするのでその都度修正が必要に鳴る可能性があるのと、新しいサウンドデバイスを追加しても当然それも手動設定。このご時世それはあまりに嬉しくない。。。

自動認識させよう!

ってことで、デバイスは自動認識させつつ、HDMIのマルチチャネルをプロファイルとして認識させる方法を調査。
そしたらaudio - How do I configure PulseAudio for 7.1 Surround Sound over HDMI? - Unix & Linux Stack Exchangeなるページを見つけました。
ドンピシャです。この通りに実行してもらったら大丈夫だよ!って話なんですが、せっかくなので手順を書いておこうと思います。
ぶっちゃけ、そのまんまなぞってるので、英語でも平気だぜ!って人は以下は読まなくて平気です。

まずは下準備

上記Q&Aによると、どうも /usr/share/pulseaudio/alsa-mixier/profile-sets/extra-hdmi.conf にHDMIのサラウンド設定について記載があるようなんですね。
読んでみると確かにHDMIのサラウンドに関する記載が・・・。
[Mapping hdmi-stereo]
device-strings = hdmi:%f
description = Digital Stereo (HDMI)
paths-output = hdmi-output-0
channel-map = left,right
priority = 4
direction = output

[Mapping hdmi-surround]
description = Digital Surround 5.1 (HDMI)
device-strings = hdmi:%f
paths-output = hdmi-output-0
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
priority = 3
direction = output
上記は一部抜粋です。しっかりHDMIのマルチチャネル設定があることがわかります・・・。
だったらPulseAudioでも頑張ってくれよ・・・!

で、こちらのAnswerでも
このドキュメントによると、udev-basedによる自動認識を無効化して、全部を手動で設定しなくちゃいけないらしい
って書いてあります(超意訳)。
でも設定ファイルはあるようなので、そいじゃってことでudevの検出ルールを作っちゃおうぜ!ってのが今回の趣旨っぽい!

udevルールを作ろう!

残念ながらここの設定をすべて理解できているわけではないのですが、どうもPulseAudioのProfileとして先のドキュメントのようにサラウンド設定を追加しよう、ということみたいです。
具体的には下記のファイルを /etc/udev/rules.d/95-local-pulseaudio.rules に作成します。
ATTRS{vendor}=="0x1002", ATTRS{device}=="0x1714", ENV{PULSE_PROFILE_SET}="/etc/pulse/my-hdmi.conf"
なお、「ATTRS{vender}」と「ATTRS{devices}」の数値は各自の環境に合わせて変更ください。
自身のデバイスID等のチェックは lspci -nn コマンドにて確認できます。
$ lspci -nn | grep -i hdmi
00:01.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] BeaverCreek HDMI Audio [Radeon HD 6500D and 6400G-6600G series] [1002:1714]
こちらに書いてある末尾の2組をそれぞれ転記すればOKっぽい!

で、次に
udevadm trigger -ssound
なるコマンドをroot権限で実行すれば先のudevルールが登録されるようです。きちんと登録されたかどうかについては
udevadm info --query=all --path /sys/class/sound/card0
なるコマンドを実行すれば確認できます。なお、card0 のカード番号についても各自の環境に合わせて確認ください。実行してみてHDMI端子の情報じゃなければ1なり2なりに変えてみて確認していけばそのうち当たります。きっちりと確認するなら aplay -L コマンドなどで確認ください。。。

上記コマンドを実行した際、
E: PULSE_PROFILE_SET=/etc/pulse/my-hdmi.conf
なる文字列が見つかればOKです。

これを確認できたらinitramfsを再生成して再起動後も適用されるようにします。
元のQ&AではUbuntuかDebianかなんかなので update-initramfs -u なるコマンドでinitramfsを再生成していますが、Fedoraの場合はdracutなのでさくっと生成します。
# cp /boot/initramfs-`uname -r`.img /boot/initramfs-`uname-r`.img.org
# dracut /boot/initramfs-`uname -r`.img `uname -r`
これでinitramfsが再生成されました。

HDMIサウンドデバイスのプロファイルを作るよ!

下記内容のファイルを /etc/pulse/my-hdmi.conf として生成します。
[General]
auto-profiles = yes

[Mapping hdmi-stereo]
device-strings = hdmi:%f
channel-map = front-left,front-right
description = Digital Stereo (HDMI)
priority = 4
direction = output
paths-output = hdmi-output-0

[Mapping hdmi-surround-40]
device-strings = hdmi:%f
channel-map = front-left,front-right,rear-left,rear-right
description = Digital Quadrophonic (HDMI)
priority = 1
direction = output
paths-output = hdmi-output-0

[Mapping hdmi-surround-51]
device-strings = hdmi:%f
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe
description = Digital Surround 5.1 (HDMI)
priority = 2
direction = output
paths-output = hdmi-output-0

[Mapping hdmi-surround-71]
description = Digital Surround 7.1 (HDMI)
device-strings = hdmi:%f
channel-map = front-left,front-right,rear-left,rear-right,front-center,lfe,side-left,side-right
priority = 3
direction = output
paths-output = hdmi-output-0
なお、人によってはチャンネルマップがコレとは異なる場合が有ります。その場合は以下のサウンドチェックでチャンネルを確認して、入れ替わっているところを修正してください。
$ pulseaudio -k
$ speaker-test -c 8 -f 800


おまけの設定!

これでひとまずマルチチャネルのプロファイルが登録されましたが、さらにサンプリングレートやビット深度についても設定しておきます。
デフォルトでは44.1kHz/16bitですが、まぁもっとハイスペックな設定で十分鳴らせるだけのスペックを持っていると思いますので。
まずは /etc/pulse/daemon.conf を $HOME/.pulse/ にコピーします。ユーザごとに設定しておくほうがトラブルが少なくていいでしょう。
$ cp /etc/pulse/daemon.conf $HOME/.pulse/
続いてコピーしてきたファイルを適当なテキストファイルで開き、下記の行をそれぞれ編集します。 なお、このファイルでは「;」以降がコメントとして扱われます。
default-sample-format
こちらはビット深度の設定です。デフォルトはs16leで、これが16bit整数です。HDMIであればs32leで32bit設定にしておくといいでしょう。
default-sample-rate
こちらはサンプリングレートの設定です。アンプ等が対応している最大のレートを指定しておけばいいでしょう。192000で192kHzです。
PulseAudioを経由する音声はここで設定されたサンプリングレートにリサンプリングされます。
resample-method
こちらはリサンプリング時のアルゴリズム指定です。品質を高くするほどCPU負荷が高くなります。とりあえず最高品質で設定して、途切れたり負荷が高くなりすぎるようであれば元に戻せばいいと思います。
最高品質は src-sinc-best-quality です。

これらの設定を変更したあとは必ず pulseaudio -k で一度PulseAudioを殺して再起動してください。そうしないと設定が読み込まれません。

まとめ

以上、PulseAudioでHDMIのマルチチャネル再生の設定でした。
ぶっちゃけ音周りはLinuxはほんと面倒ですねぇ・・・。 ドライバ的には対応しているけれど設定方法が全然こなれていないというか・・・。
今回の設定も標準で成されていて欲しいもんだがなぁ。できそうなもんだけど。

ディストリによってはきちんと設定されているかもしれません。Arch LinuxのWikiにはHDMIの5.1/7.1ch再生ができないってことに言及が有ります。
ただ、今回のような細かい設定は書かれておらず、基本的には自動認識されるはずという扱いなのかな・・・?

で、とりあえず鳴らせるようにはしたものの、ぶっちゃけ活かしどころはない・・・w
マルチチャネルのFLACとかを配信サイトから購入するような状況が日常的になれば意味が生まれてくるんだけど、今のところそういう音源持ってないしなぁ・・・。
DVDとかBDはPS3で見るし。ハイレゾ音源はちょくちょく購入するようになったんだけどまだまだマルチチャネル音源は出回ってないからなぁ。

ま、そこいらは今後の潮流を眺めながらってことで。PC側の設定方法は分かったんだし、まーどうにでもなるでしょう。

ってことで、よいLinuxライフを!