ザキンコのブログ

ザキンコの日記のはてなブログ版です。

openmediavault4がreleaseに

Release of openmediavault 4 (Arrakis) | openmediavault
そしてバージョン3系は終了。
openmediavault 3 goes EOL | openmediavault
標準でインストールされているSambaでWindowsから見られる共有フォルダとして使ってます。そこそこ安定してます。btrfsのRAIDはまだ不具合あるみたいで使わない方が良いかもだけど、RAIDにしなければ普通に使えるしext4より容量効率は良いようです。

センチュリー CROS4EU3S6G 裸族のお立ち台QUAD メモ

www.century.co.jp

買って使ってみたけど、Stablebit DrivePoolでディスクを4個まとめて、バランシングやらスキャンやらかけてると1日持たずに調子が悪くなる。ただ認識しなくなるだけならいいんだけど、管理情報を別のドライブに書き込んだりしてくれるおかげで、ファイルシステムが派手に壊れる。具体的にはGUIDやラベルやディスクの情報が同じディスクが2台できる。そして間違っている方がマウントされて正しい方は管理情報が重複しているのでマウントできなくなる。TestDiskで復旧を試しているけどたぶん無理だろうなあ。一度目はなんかディスクの設定ミスったかな?と思っていたけど、二回目も起きたのでたぶん不良。でも再現させるのは難しいから返品するのもねえ。使い方が特殊だからかもしれないけど、うちでは使えないや。

裸族のカプセルホテル Ver.2 (CRCH35U3IS2)の方は調子が悪くなってもドライブが外れるだけなので、そのドライブだけ再起動すればとりあえず動いてくれる。ドライブが独立しているからかな。値段は少し高いがこちらにすべきだったなあ。
www.century.co.jp

(2018.12.8 追記)
Debianでも安定しないので外れをひいたのかも。調子の悪いディスクがあると全体が調子悪くなるみたい。

(2019.1.28 追記)
使われているチップはJMicronのJMS 567。LinuxではUSB2.0で接続される。その場合はきちんと動く。USB3.0で接続させようとすると繋がらない。
https://usb-ids.gowdy.us/read/UD/152d/0567

Ubuntuが動くパソコン

質問があったのでメモ。
Linux触りたいって言われたらとりあえず紹介するUbuntuなんだけど、動くパソコンのリストとかインストール方法とか説明がないのか探してみた。

Dellはインストールの方法が載っていた。これはありがたい。この通りにやれば大抵どのパソコンでも大丈夫。
http://www.dell.com/support/article/jp/ja/jpbsd1/sln151664/デルpcにubuntu-linuxをインストールする方法?lang=ja

Dellのサイトに載っていたがUbuntuの公式サイトにリストがある。これは助かる。Ubuntuは重いので新しいパソコンの方が良い。
https://certification.ubuntu.com/certification/certification.ubuntu.com

VVAULT(Ver.7.15.5)メモ

無料のPersonalライセンスで使ってるけど現状では安定して動いています。で、いくつかハマった点をメモ。

マスタードライブにネットワークドライブを割り当てる時は容量制限をする。しないと容量ギリギリになった時にエラーが出ることが多い。

バックアップドライブにディスク(ローカル、ネットワークを問わず)を割り当てる時は容量制限をする。しないと容量ギリギリになった時にエラーが出ることが多い。

バックアップドライブにローカルドライブを割り当てる時はとりあえずドライブレターを割り当てる。フォルダにだけマウントしているドライブは割り当てできなかったので。

容量足りないエラーが出た場合、コンテンツを削除する設定にして取り外しをして容量が少し空いた所でストップして容量制限をしなおす。

そろそろ7.15.6を入れるかな。

StableBit CloudDriveメモ

StableBit - The home of StableBit CloudDrive, StableBit DrivePool and the StableBit Scanner

StableBit DrivePoolの方は使いやすいとの評判だけど、それと連携して使うCloudDriveが微妙だったのでメモ。

OpenMediaVaultのSambaで共有している4Tのネットワークドライブを4台マウントしてそれぞれにVHDXを作って問題なくWindows8.1のクライアントから使えていたのだが、これをCloudDriveによるマウントに切り替えてデータを移していたら、ローカルドライブに作ることを強制されたキャッシュドライブがあっという間にフルになってまともに書き込みができなくなった。
システムのCドライブとは別にスワップ用にDドライブを切っていたのでそちらを指定したのだが、数十GBがあっという間に埋まって残り容量が0になった。おいおい。
これCドライブにキャッシュを作っていたらシステムが死んだんじゃないかとちょっと焦った。多少マウントが面倒でもネットワークドライブはVHDXをDrivePoolで使う方が安全だな。

ちょっと追記。CloudDriveのキャッシュを1G固定の設定に変えたらディスクを使い切ることはなくなったみたい。これで一応使えるけど遅くてダメだわ。
VHDXのマウントはSimple VHD Managerを使えば自動にできるし、LAN内の共有フォルダを使うならVHDXを作ってSimple VHD ManagerでマウントしてDrivePoolに追加して使う方法が良いのだろう・・・、と思っていたら、ネットワーク上のVHDXをマウントしたディスクはDrivePoolで使えない。VHDX自体使えないのかも。

www.sordum.org

あと、いろいろ無茶な操作をしたけどシステムが不安定になることはなかったので、ドライバはしっかり作ってあると思う。技術力はあるんだろうなあ。

(追記 2017.12.26)
CloudDriveはキャッシュを必ず内蔵ドライブに作る必要があって、常にそこを経由してデータをやり取りしているようなので、キャッシュの性能がCloudDriveの性能に直結するようだ。SSDを内蔵してキャッシュにすれば性能が上がるのだろうか?内蔵HDDをキャッシュに使っている現状ではCloudDriveよりVVAULTの方が圧倒的に速い。

World of Tanks(WoT)が起動しなくなったメモ

ここ何日か起動してなかったのだが遅くても昨日あたりから起動しなくなってる。ランチャーは立ち上がるのだがそこからクライアントを起動しても何も反応がない。ログ見たらエラーが出てるのだが何のことやら。Update関係っぽいけど。
アンインストールして
World of Tanks — 無料オンラインゲーム
公式インストーラーのWoT_internet_install_asia.exeで再インストールしてもダメ。

英語サイトの
asia.wargaming.net
から wargaming_game_center_install_asia.exe でランチャーをインストールしてそこからさらにWoTをインストールすると起動するようになった。
原因はなんだろうね?

Windows10 でVHDXファイルのマウントが何らかの原因で外れる

Windowsでのディスクの仮想化はVHDXファイルを作ればできるのだが、これを外付けUSBハードディスクに入れておくとUSBのちょっとした不調(負荷がかかってリセットされてしばらくして再認識やスリープしてしまう等)があるとVHDXのマウントが外れてしまって不便。
あと、VHDXへのアクセスがないと外れてしまう気もするので、安定稼働させようすると何かしら一定期間で書き込み続ける必要も気がする。
なので、簡単なRubyスクリプトを書いた。

diskpartで自動再マウント。タスクスケジューラーに設定しておけば使える。
(2017.9.28 追記)
UTF-8だとdiskpartが非ASCIIなパスを認識しないのでCP932(SJIS)で。
auto_mount.rb

# coding: CP932

# diskpartを呼び出すので、要管理者権限
# 一度マウントしてマウントポイントを設定済みであること

require 'tempfile'

# 監視するディスク、フォルダとそのvhdxへのパス
# [['U:/', 'C:\var\test.vhd']] #後ろはWindowsパスを使う
target_aa = [['U:/', 'C:\mnt\test.vhdx']]

# マウントが外れてる?
target_aa.each do |target_a|
  unless FileTest.directory?(target_a[0])
    puts "#{target_a[0]} - Disconnected."
    # txt作成
    arg_txt = <<"EOS"
select vdisk file="#{target_a[1]}"
attach vdisk
EOS
    #puts arg_txt

    tf = Tempfile.new(['auto_mount', '.txt'])
	#p tf
	
    begin
	  tf.write arg_txt
	  tf.close
	  
	  # Windowsパスへ変換
	  winpath = tf.path.gsub(/\//, '\\')
	  
	  # diskpart呼び出し
	  p system('diskpart -s "' + winpath + '"')
    ensure
      tf.unlink # 一時ファイルを削除
    end

  else
    puts "#{target_a[0]} - Connected."
  end
  
end

exit

一定間隔でファイルを書き込み続ける。実行して最小化しておく。
loop_writefile.rb

# coding: UTF-8

require 'date'

# ファイル名
logfilename = 'datetime.log'

# 間隔(s)
sleeptime = 30

# チェックするディレクトリリスト
a = ['U:/']

# ファイル書き込み
loop do
  # 時間を取得
  t = DateTime.now
  puts t
  
  a.each do |p|
    begin
      File.open(p + logfilename, 'w') do |f|
        f.write(t.to_s)
        f.fsync
      end  

      File.open(p + logfilename, 'r') do |f|
        if f.read != t.to_s
          puts 'Read Error! - ' + p + logfilename
        end
      end

    rescue Exception => e
      # フォルダが開けなかった場合のエラー処理
      # エラーを表示して無視して次へ
      p e
    end
  end

  puts 'Completed!'
  sleep sleeptime
end

exit