2017/06/26(Mon)NASのディスク入れ替え

はてブ数 2017/06/26 5:03 計算機な日記::ボクと計算機 つーさ
NASの2TBが手狭になってきたので、4TBのディスクに入れ替えることにした。

あのことがあってから、しばらくSeagateのHDDは買ってなかったけど、
ばらくーだは他のメーカのHDDより動作音が静かで好きだったのをふと思い出して、
ひさしぶりにSeageteのHDDに手を出してみる。
巷では故障率高いと話題だが、果たして……。

ばらくーだ 4TBx2。

NASのディスクの入れ替え手順はよくわかんなかったが、
シングル2本で認識させてると、こんな感じ(下記はすでに入れ替え済み)なので、
$ df
Filesystem            Size  Used Avail Use% Mounted on
rootfs                 33M   18M   16M  54% /
/dev/root              33M   18M   16M  54% /
tmpfs                  64M  348K   64M   1% /tmp
/dev/sda4             371M  345M   27M  93% /mnt/ext
/dev/md9              510M  152M  358M  30% /mnt/HDA_ROOT
/dev/sda3             3.5T  1.9T  1.6T  54% /share/HDA_DATA
/dev/sdb3             3.7T  572G  3.1T  16% /share/HDB_DATA
tmpfs                 1.0M     0  1.0M   0% /mnt/rf/nd
tmpfs                 8.0M     0  8.0M   0% /var/syslog_maildir
tmpfs                  16M   40K   16M   1% /share/HDA_DATA/.samba/lock/msg.lock
tmpfs                  16M     0   16M   0% /mnt/ext/opt/samba/private/msg.sock

$ cat /proc/mdstat
Personalities : [raid1] [linear] [raid0] [raid6] [raid5] [raid4]
md2 : active raid1 sdb2[2] sda2[0]
                 530128 blocks super 1.0 [2/2] [UU]

md13 : active raid1 sdb4[0] sda4[1]
                 458880 blocks [2/2] [UU]
                 bitmap: 0/57 pages [0KB], 4KB chunk

md9 : active raid1 sdb1[0] sda1[1]
                 530048 blocks [2/2] [UU]
                 bitmap: 0/65 pages [0KB], 4KB chunk

unused devices: <none>

HDD2のディスクを2TBから4TBに入れ替えて
rsync -avH --delete --numeric-ids /share/HDA_DATA/ /share/HDB_DATA/
して、HDD2の4TBをHDD1に、空の4TBをHDD2に刺して、と試してみたところすんなり起動した。

ディスク容量も増え、動作音が静かになって、よい。壊れた時はまぁその時。

ここ一月ばかり、まただんだんHDDが安くなってきている。
が、ディスクを買ったのは安くなりはじめる前で、それだけは鬱。

引っこ抜いた2本の2TBはデスクトップPCに入れてRAIDでも組んでみようかな。

2016/12/30(Fri)Google C++ Style Guide 日本語全訳

はてブ数 2016/12/30 18:52 計算機な日記::ボクと計算機 つーさ
Google C++ Style Guide 日本語全訳 (GitHubリポジトリ)
字が小さいと思ったらブラウザのズームを使うと読みやすいかも。

きっかけは、
GoogleがGitHubで公開している版 (HTML)を、自分で読むついでに、英語を読むのがしんどい人のために日本語に訳してみた。

ついでにという気持ちで始めたけど、翻訳って思ってたよりめっちゃ大変だった。
最近機能をバリバリ使ってイケイケにコーディングしているんだろうなぁとか
勝手なイメージをもっていたので、それよりもかなり保守的って印象を受けた。

その精神は
「コードは読む人のために書く」
「読む人のリズムを崩さないために周りのコードとの一貫性を保て」
「平均的な読者が知らないかもしれない機能は使うな」
って感じ。

命名規則とかだけでなく改行の入れ方とかスペースの置き方とかを定めていて、
そのフォーマットのためのemacsスクリプトが配布されてて、守りやすくなってるのはいいなぁと思った。

2016/11/16(Wed)OpenSSLとOpenSSHのバージョンアップメモ

はてブ数 2016/11/16 7:40 計算機な日記::ボクと計算機 つーさ

家のNASのOpenSSLとOpenSSHのバージョンを上げた。
2017.04.20 - 1.0.2k に更新

$ tar xf openssl-1.0.2k.tar.gz
$ cd openssl-1.0.2k
$ ./config --prefix=/opt/local/openssl/1.0.2k --openssldir=/etc/ssl zlib -fPIC enable-tlsext shared
$ make -j
$ make install
$ cd /opt/local/openssl/
$ rm *
$ ln -s 1.0.2k/* .
$ tar xf openssh-7.3p1.tar.gz
$ cd openssh-7.3p1
$ ./configure --prefix=/opt/local/openssh/7.3p1 \\
  --with-tcp-wrappers --with-md5-passwords \\
  --sysconfdir=/etc/config/ssh \\
  --with-zlib=/opt/local/zlib --with-ssl-dir=/opt/local/openssl \\
  --without-stackprotect
$ make -j
$ make install
$ cd /opt/local/openssh/
$ rm *
$ ln -s 7.3p1/* .

最初 OpenSSHのconfigureで、 configure: error: OpenSSL version header not found. とか言われて、
config.log を見ると、 ./conftest がSegmentation fault ってた。
「……?」と思いながらも、 --without-openssl で試すと、今度は sizeof(short int) を調べようとしてセグフォ。
そんな馬鹿なと思って、自前で conftest 作ってオプションを色々試してたところ、
gcc に -fstack-protector-all と -fPIEをセットで渡すと int main() { return 0; } ですらセグフォで死ぬことがわかって、
--without-stackprotectをつけたら行けた。

gcc のバージョンもあげたら直るのかな……。
その前にNASを脱却して適当なPCにして適当なLinuxディストリ入れた方がいいよなーと思うのであった。

2016/10/30(Sun)Cygwin上のmingw32でfdk-aacをビルドしようとすると止まる

はてブ数 2016/10/30 7:21 計算機な日記::ボクと計算機 つーさ

Cygwin入れてるのにわざわざmingwを別で入れるのはなあ。
Cygwin上でMinGWのgcc使えるはずだし、それでビルドできるんじゃないの。

tu-sa@t8 ~/fdk-aac-0.1.4
$ ./configure --build=i686-w64-mingw32 --host=i686-w64-mingw32 --prefix=/usr/local/fdkaac-mingw

tu-sa@t8 ~/fdk-aac-0.1.4
$ make -j

  GEN    libfdk-aac.la

で止まる。

CPU使用率も下がるし、ディスクアクセスもないし、何かを待ってる?
Makefileやら./libtool やら眺めると以下の行がマズいっぽい。

 func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |

cmd //c が上手く動かず、cmdが普通に起動して入力待ちになってしまうので、 cmd /c に直す。

tu-sa@t8 ~/fdk-aac-0.1.4
$ sed -i libtool -e 'sZcmd //cZcmd /cZg'

tu-sa@t8 ~/fdk-aac-0.1.4
$ make
  GEN    libfdk-aac.la
copying selected object files to avoid basename conflicts...

make できた。

どうもmsysでは、/c は c:\\ に置換されるのがデフォで、//cでそれをエスケープして単に「/c」の意味になる*1
cmd /c に書き換えたものは、mingw+msysの環境では、同じように止まってしまって動かないんだろな。。

*1 : Cygwinだとそのまま「//c」

2016/07/18(Mon)双2次フィルタでLPF (他)

LPFがほしくて。

工学部だけど、アナログな信号処理とかぜんぜん勉強したことなくて、
解析学とかもまったく苦手だった情報系出身なので、
なんかLPFのサンプルプログラムとか見ても、パラメータをどう求めればいいかよくわかんなくて、
つまりどうすれば目的の関数が得られるだってばよ? 状態だったんだけど、

色々情報を探してさまよううちに↓のページを見つけて
http://www.g200kg.com/jp/docs/makingvst/04.html

RBJ Audio-EQ-Cookbook っていう つよい文書があって、つまりこれでLPFが作れるってことらしい。
理解度はやはりイマイチだけど、とりあえず低音が取り出せるようになった。
リンク先を見るに、HPFとかBPF、EQとかも作れるっぽい。便利。
今回は目的が別のところにあるので、勉強はここまでにして先に進めよう。

以下、とりあえず試したくて即席で書いたソース。

続きを読む

2015/12/28(Mon)WINAMPにStereo ToolというDSPプラグインを入れたら、音楽を聴くのが楽しくなる。

はてブ数 2015/12/28 2:50 計算機な日記::ボクと計算機 つーさ

作業用BGMを自分好みにEQかけて聴きたい。
マスタリングエンジニアの人には失礼な話だと思いながら。
(2016.01.18 ちょっと更新した)

いれたもの

Winamp → いつものプレーヤー。
in_!mpg123 → MP3デコーダプラグイン。32bit int PCM/64bit float PCMとかが出る。今回は32bit intで出す。
Stereo Tool → WINAMPのDSPプラグイン。マルチプレッサ他いろいろついてる。
Yet Another (WA)SAPI Output Plugin for Winamp (YASAPI) → WASAPIで、カーネルミキサーを通さず音が出せる。

Stereo Toolの設定ファイル(いじった)

テンション上がる感じのStereo Tool用の設定ファイル ※ダウンロードにならない場合は右クリックして保存
Stereo Toolの設定画面で、LOAD → ALL AUDIO SETTINGS → tu3.sts を読み込むと反映します。

個人の再生環境とか、むしろ好き嫌いがかなり大きい世界なので万人向けではないけど、
かなりドンシャリでプリエンファシスなテンションあがる感じにはなったかな。
プリセットの Bojcha - Enlightened をベースに、低音と中音と高音をいじった。(?)
あんまりコンプレッサーとかよくわかってないけど。

画は設定いじってる途中


本文

今までは普通に、MU2000のA/D Inputを、ただのPC用イコライザーとして使ってたのですが、
ノートPCにさすがにMU2000つないであっちこっち行くのはめんどくさくて、
WMPのイコライザーをオンにしてたんですが、PREAMPがないので、
上げる方向にだけ調整すると音が歪んじゃうんですよね。

んじゃ、PREAMPついてるEQついてるプレーヤー使えばいいじゃないと、
ノートPCにもWINAMPを入れたわけですが、WMPのEQに耳が慣れてしまうと、
なんかWINAMPのEQは音籠ったみたいになっちゃうんですよね。なんでかな。

で、そこはWINAMPなんで、プラグインとかきっとあるよなーと思って検索してたら、
Stereo Toolというのを見つけた。一部有料だけど、ほとんどの機能が無料でつかえる! 

続きを読む