server関係

(最終更新:2024年1月19日)

mlocate

ファイルサーバーでファイル検索する際にfindでは時間が掛かるので,(m)locateを使う.ファイルindexのupdateは

# updatedb

で /var/lib/mlocate/mlocate.db にファイル名インデックスのデータベースが保存される. ただし,私はファイルサーバーのファイルシステムにbtrfsを採用しており,同ディレクトリ上にsnapshotを保存しているので,これを除外しないと mlocate.dbのファイルサイズが肥大化する. 具体的には5TB程度のデータでsystemのストレージ(128GB)を全て占有してしまい,updatedbが中断された.

updatedbの設定ファイルは /etc/updatedb.conf にあり,PRUNEPATHSで除外が可能なので,次のようにしてsnapshotのディレクトを除外する.

PRUNE_BIND_MOUNTS="yes"
# PRUNENAMES=".git .bzr .hg .svn"
PRUNEPATHS="/tmp /var/spool /media /var/lib/os-prober /var/lib/ceph /data/snapshots"
PRUNEFS="NFS afs autofs binfmt_misc ceph cgroup cgroup2 cifs coda configfs curlftpfs debugfs devfs devpts devtmpfs ecryptfs ftpfs fuse.ceph fuse.glusterfs fuse.gvfsd-fuse fuse.mfs fuse.rozofs fuse.sshfs fusectl fusesmb hugetlbfs iso9660 lustre lustre_lite mfs mqueue ncpfs nfs nfs4 ocfs ocfs2 proc pstore rpc_pipefs securityfs shfs smbfs sysfs tmpfs tracefs udev udf usbfs"

これによって5TBのファイルサーバーのmlocate.dbのサイズは1GB程度に収まる.

ssh x11 forwarding

x2go

セキュリティーの観点からInternet経由の接続はsshしか許可していないので,必然的にGUI applicationを開く場合にはsshのx11 forwardingを利用することになる.しかしながらLAN内であってもx11 fowardingの場合,動作や入力がもたついたり,場合によってはプロセスが落ちる場合がある.そこでx2go を利用すればそこそこのネット回線速度があればかなり快適に操作できる.x2goはシングルアプリケーションの起動の軌道のほかにDestop環境も実行可能なのでなので快適性が求められるアプリ(目的はMathematica NotebookとMatlab)は設定しておければかなり快適に利用できる.

ただし,macからmatlabはSingle Applicationでうまく起動できなかった.OpenBox経由では起動できたものの,whindowが白くなったり黒くなったりする問題があってそのままでは使えないが,リモートのホームディレクトリに

$ cat ~/java.opts
-Dsun.java2d.xrender=false
-Dsun.java2d.pmoffscreen=false

としておけば問題は生じないようだ.ただ実際に使用してみてmatlabはx2goを使うと遅延しまくって操作がまともにできない.普通にssh経由でx11 fowradingした方が圧倒的に速いのだが上記の java.opts を設定するとmatlabのUI windowのサイズが変更できない・・・.

ただし日本語入力はできない?模様.macからx2goでdebianサーバーに接続しているがキーボードレイアウトは特に問題はないが, Command + C, V, Z などはControl + C, V, Zになるので注意. Control + E, A などが emacs likeではなくWindows likeなので注意. また,\¥ で入力されてしまうので表示されてしまうので,初心に戻って Option + ¥ と入力しなければならない.

備考:

  • Mathematicaの場合はEsc text Esc\の代用も可能である.

  • mac で英数の入力をgoogle日本語にすると¥\として入力できる

  • x2goclientでProxyサーバー(踏み台)経由でssh接続できそうではあるものの,設定すると127.0.0.1への接続となって,timeoutしうまくいかない・・・

  • localの端末のメモリが8Gしかないのと,matlabが結構メモリを喰うので・・・

x2go 以外

但し,pdfやpngなどの画像をssh経由越しに確認する際には設定が面倒なので,以下のコマンドが比較的軽量

  • pdf -> qpdfview aptからinstall可能

  • png, jpeg 画像 -> qview deb ファイルが配布されているので dpkg -i でインストール可能だが libQt5X11Extras.so.5 が見つからないということでエラーになったので

    $ apt-file search  libQt5X11Extras.so.5
    libqt5x11extras5: /usr/lib/x86_64-linux-gnu/libQt5X11Extras.so.5
    
    $ sudo apt install libqt5x11extras5-dev
    

画像が1枚ならimagemagickのdisplayでも良いかもしれない(displayで複数枚の画像を確認できるが操作が面倒). テキストや(環境依存のない)プログラミングであればvs codeからサーバーにssh経由で接続し直接編集・実行できる.

当然LAN内にいる場合はnfsやsambaなどでmountして,画像を確認した方が快適.