2016/04/30(土)ubuntu 16.04インストール(10) IntlabとBLAS
Intlabは、INTLAB version 9をubuntu上のoctaveで使うの記事の通りで大丈夫です。
numpy, octave, Intlabなどは、高速なBLASが無いと本来の性能を発揮できないので、BLASを入れます。こちらも大体ubuntu 14.04でBLASを使うの記事と同じです。
sudo apt install libatlas-base-dev sudo apt install libatlas-doc sudo apt install libopenblas-base (既に入っていた) sudo apt install libopenblas-devこの時点で有効になっているライブラリを見ると、
$ sudo update-alternatives --config libblas.so.3 alternative libblas.so.3 (/usr/lib/libblas.so.3 を提供) には 3 個の選択肢があります。 選択肢 パス 優先度 状態 ------------------------------------------------------------ * 0 /usr/lib/openblas-base/libblas.so.3 40 自動モード 1 /usr/lib/atlas-base/atlas/libblas.so.3 35 手動モード 2 /usr/lib/libblas/libblas.so.3 10 手動モード 3 /usr/lib/openblas-base/libblas.so.3 40 手動モード 現在の選択 [*] を保持するには <Enter>、さもなければ選択肢の番号のキーを押してください: $ sudo update-alternatives --config liblapack.so.3 alternative liblapack.so.3 (/usr/lib/liblapack.so.3 を提供) には 3 個の選択肢があります。 選択肢 パス 優先度 状態 ------------------------------------------------------------ * 0 /usr/lib/openblas-base/liblapack.so.3 40 自動モード 1 /usr/lib/atlas-base/atlas/liblapack.so.3 35 手動モード 2 /usr/lib/lapack/liblapack.so.3 10 手動モード 3 /usr/lib/openblas-base/liblapack.so.3 40 手動モード 現在の選択 [*] を保持するには <Enter>、さもなければ選択肢の番号のキーを押してください:のような感じでした。14.04のときと違って、openblas版のlapackが入るようになってそれが有効になっていました。
更に、octave+openblas+intlabで丸め変更を検証の記事と同様に丸めの向きが正しく変わっているか検証すると、やはりマルチコアでopenblasは丸めの向きが変わりませんでした。そこで、先の記事と同様にopenblasを作り直します。
やり方は先の記事とほとんど同じですが、ひとつだけ注意点があって、Ubuntu 16.04 LTSをインストールする - Narrow Escapeの記事にあるように、16.04ではデフォルトでaptでパッケージのソースが落とせないようになっています。記事にあるように、
/etc/apt/sources.listでコメントアウトされているdeb-srcをコメントアウトを外す。 sudo apt updateを実行し、パッケージのソースを落とせるようにします。
後は14.04のときとほとんど同じです。
apt source openblas sudo apt build-dep openblas (必要なものを入れる。liblapack-picが入った) cd openblas-0.2.18/Makefile.ruleを編集し、コメントアウトされている
CONSISTENT_FPCSR = 1を有効化する。
dch -i で、version番号を進め、changelogを書く。 dpkg-buildpackage -b -uc -us cd .. sudo dpkg -i libopenblas-base_0.2.18-1ubuntu2_amd64.deb sudo dpkg -i libopenblas-dev_0.2.18-1ubuntu2_amd64.debこれで、マルチコアでもきちんと丸めの向きが変わるようになりました。
2016/04/28(木)ubuntu 16.04インストール(9) その他
sudo apt install openssh-serverこれでsshログイン出来るようになります。
sudo apt install gitgitはいまどきは必修科目ですね。(使えるとは言ってない)
後は個人的に必要なもの。
sudo apt install lv sudo apt install checkinstallこれは14.04の頃からあるのですが、bashでccとc++に対してファイル名補完が効きません。これを解決するため、/usr/share/bash-completion/completions/gcc の末尾の方の2行
cc --version 2>/dev/null | grep -q 'GCC\|Debian' && complete -F _gcc cc || : c++ --version 2>/dev/null | grep -q 'GCC\|Debian' && complete -F _gcc c++ || :を
cc --version 2>/dev/null | grep -q 'GCC\|Debian\|ubuntu' && complete -F _gcc cc || : c++ --version 2>/dev/null | grep -q 'GCC\|Debian\|ubuntu' && complete -F _gcc c++ || :のように修正しました。
また、ホームディレクトリに作られる「ダウンロード」などのディレクトリが日本語だと何かと不便なので、英語表記に直します。
LANG=C xdg-user-dirs-gtk-updateとして「Update Names」をクリックします。これでホームディレクトリが
examples.desktop テンプレート ドキュメント ピクチャ 公開 ダウンロード デスクトップ ビデオ ミュージックから
Desktop Downloads Pictures Templates examples.desktop Documents Music Public Videosに変わりました。
さらに、ふと目を離すとロックされてパスワードが要求されるのが嫌なので、システム設定(左側の歯車アイコン)→画面の明るさとロック で「ロックする」をオフに。ついでに、「サスペンドからの復帰時にパスワードを要求する」のチェックを外しました。
また、時計の表示が寂しかったので、上部の時刻をクリックし、時刻と日付の設定→時計 で、時計の表示設定の「曜日」と「月日」をクリックしました。
これで大体14.04で日頃使っている環境が出来た気がします。使ってみた感想は後ほど報告します。Intlabやopenblas関連についても後ほど試して報告します。
2016/04/27(水)ubuntu 16.04 インストール(8) マルチメディア系
sudo apt install ubuntu-restricted-extrasで、著作権上の制限があってインストーラには入れられないアプリケーション群が入ります。flashのプラグインもこれで入りました。
市販dvdの再生を可能にするには、以前は
sudo /usr/share/doc/libdvdread4/install-css.shでしたが、15.10から
sudo apt install libdvd-pkg sudo dpkg-reconfigure libdvd-pkgになりました。
その他、
sudo apt install handbrake sudo apt install vlc sudo apt install ffmpeg sudo apt install ffmpeg-docを入れました。ffmpegは14.04では消されていたのが復活したようです。
なお、画像ビューアはデフォルトで入っているものを使っています。名前が分かりにくいですが「eog」です。
2016/04/26(火)ubuntu 16.04 インストール(7) samba
sudo apt install sambaさて、以前は、
sudo apt install libpam-smbpassとすることによってunixパスワードとsambaパスワードを共有できてましたが、これはサポートされなくなったようです ( Ubuntu 16.04 | kofler.info の情報)。そこで昔ながらの方法に戻ってsamba用のパスワードの作成を行います。コマンドは昔はsmbpasswdでしたが最近はpdbeditに変わった模様。
sudo pdbedit -a kashihome directoryの共有をするため、/etc/samba/smb.conf で、
;[homes] ; comment = Home Directories ; browseable = noのコメントを外し、
# By default, the home directories are exported read-only. Change the # next parameter to 'no' if you want to be able to write to them. ; read only = yesを
read only = noに変更します。
sudo systemctl restart smbdこれで、homeがwindowsから見えるようになりました。
2016/04/25(月)ubuntu 16.04 インストール(6) apache, php
sudo apt install apache2いくつかのモジュールを有効化します。
sudo a2enmod userdir sudo a2enmod include sudo a2enmod cgidこれらは、実際には/etc/apache2/mods-availableにあるファイルから/etc/apache2/mods-enabledへリンクを張っていて、mods-enabled以下のファイルが設定に読み込まれるという仕組みです。
次に、自分のよく使う設定をしていきます。public_htmlの有効化とcgiの有効化です。デフォルトで使われている設定ファイルは/etc/apache2/sites-available/000-default.confですが、これをを適当な名前 (custom.confとした) でコピーして設定することにします。
<IfModule mod_userdir.c> UserDir public_html UserDir disabled root <Directory /home/*/public_html> (ここは各自違うと思う) </Directory> </IfModule> <IfModule mod_mime.c> AddHandler cgi-script .cgi </IfModule>を(<VirtualHost *:80> </VirtualHost>の中に)加えます。
public_html以下の設定は、ユーザを最大限信用するなら、例えば、
AllowOverride All Options All Order allow,deny Allow from allのような感じでしょうか。
sudo a2dissite 000-default sudo a2ensite custom sudo systemctl restart apache2で、000-defaultを無効化し、customを有効化します。
さらに、自分の好みで、public_html以下に置いたcgiはそのディレクトリのユーザの権限で動くようにする、suexecを設定します。
sudo apt install apache2-suexec-custom /etc/apache2/suexec/www-data の2行目を、public_html/cgi-bin → public_html に。 sudo a2enmod suexec sudo systemctl restart apache2次にphpの設定。7.0になりました。
sudo apt install php sudo apt install libapache2-mod-php /etc/apache2/mods-available/php7.0.conf で、php_admin_value engine Off をコメントアウト (ユーザのpublic_html以下でphpを使えるようにする。) sudo systemctl restart apache2最後に、logrotateの設定を。/var/log/apache2 以下のlogが、デフォルトだと14日しか保存されないので直します。/etc/logrotate.d/apache2 の中の、
daily rotate 14という行を、
monthly rotate 120とし、10年間はもつようにしました。