unix
SHP-->NC(知り合いに教えてもらったもの)
gdal_rasterize -a ID_0 -ot INT16 -of netCDF -a_nodata -999 -te -180.0 -90.0 180.0 90.0 -tr 0.05 0.05 ${INDIR}/gadm36_mod.shp ${OUTDIR}/gadm36_mod_ID0_0.05d.nc
パーミッションの一括変更。
foo内の全てのディレクトリがグループにもその他のユーザにも見えるようにする
%find ./foo -type d -exec chmod 755 {} \;
foo内の全てのファイルがグループに見えるようにする
%find ./foo -type f -exec chmod g+r {} \;
(ファイルに対してはchmod 644や755は絶対に使わないこと。実行ファイルもテキストファイルも全部変わってしまう!)
外付けHDDにデータをバックアップする(1)
USB1.1/2.0対応の外付けハードディスクを用意する(USB3.0対応のものはうまく認識されない)
ディスクをext3にフォーマットする。
購入時のFAT32だと、一つのディレクトリに大量のファイルを入れたときに動作が極めて遅くなる。
omnioolabの「HDDをext3でフォーマットする方法」という記事が秀逸だった。ただし、mkfs.ext3に-O dir_indexというオプションを忘れないようにする。
fdisk -lu
fdisk /dev/sdt: パーティションを変更するコマンド(pで現在の状態を表示→dで削除→nで新しいパーティションを設定→wで書き込み)
mkfs.ext3 -O dir_index /dev/sdt1: フォーマットのコマンド
-Odir_indexオプションを忘れた場合の対応方法が、mini13i.comの「filesystem/ext3」という記事に書いてある。
tune2fs -O dir_index /dev/sdt1: ファイルシステムのパラメータを調整する。
e2fsck -D /dev/sdt1: ファイルシステムのチェック
tune2fs -l /dev/sdxxで確認。
マウントする
mount -t ext3 /dev/sdt1 /media/usb
fatの場合と違って-o uid=xx,gid=xxは使えないので、必要に応じてユーザの個人ディレクトリを作成する。
外付けハードディスクにバックアップする(2)
rsyncを実施
~/rsync-3.0.8/rsync -av --bwlimit=8192 --timeout=600 /home/foo /media/xx
本当はrsync -av /home/foo /media/xxが基本だが、以下のトラブルがあった。
トラブル1:「rsync: writefd_unbuffered failed to write 4 bytes: phase "unknown" [sender]:」と言ったようなエラーが出て止まってしまった。/var/log/messagesを見ると、Out of Memoryが発生している模様。
解決法1:rsyncをアップデートする。「rsync > rsync3.0のメリット」という記事が秀逸だった。
gunzip rsync-3.0.8.tar.gz
tar xvf rsync-3.0.8.tar
cd rsync-3.0.8
./configure --prefix=/home/hoge (homeにインストール)
make test
make install
トラブル2:アップデートして続行したところ、sshdやhttpdが落ちるなどサーバが不安定に。/var/log/messagesをみると、やはりOut of Memoryが発生している模様。
解決法2:rsyncに"--bwlimit=8192 --timeout=600"というオプションを追加したところ、正常に動作した。