www.smiyasaka.com は、 2022 年 11月から Oracle LInux 8.X にOSを変更しました。


● BUFFALO Tera Staition の HDD を市販品に交換する ●
( TS-WX2.0TL/R1 LS-WH2.0TGL/R1 )

アクセス数 昨日 5 今日 6
  累計 21,729   

※ この復旧は、あくまでも実験なので、試すときには、自己責任の範囲で行ってください。※
( この実験は、平成25年5月頃行った内容です。)
( "コピペ" で簡単にサーバ構築が出来るよう心掛けた作りにしています。)

※ 注 意 事 項 ※ を見る[ここをクリック]

目    次
[○○○○]のクリックで、その内容が目次の下に表示、再度クリックで非表示になります。
本文を総て先読み非表示(折り畳み方式)し、目次のクリックで表紙する方式を採用しています。

 ※ [ 総てを表示する ] ※ [ 総てを表示する 非表示 ] ※
 1. [ TS-WX2.0TL/R1 の HDD 交換 ( EMモード ) ] [ TS-WX2.0TL/R1 の HDD 交換 ( EMモード ) 非表示 ]
 2. [ TS-WX2.0TL/R1 の HDD 交換 ( 片方が動作する時 ) ] [ TS-WX2.0TL/R1 の HDD 交換 ( 片方が動作する時 ) 非表示 ]
 3. [ LS-WH2.0TGL/R1 の HDD 交換( No.1 側とNo.2 側 ) ] [ LS-WH2.0TGL/R1 の HDD 交換( No.1 側とNo.2 側 ) 非表示 ]
 4. [ KNOPPIX で NAS のフォーマット形式 xfs のデータを読む ] [ KNOPPIX で NAS のフォーマット形式 xfs のデータを読む 非表示 ]
 5. [ Ubuntu で NAS のフォーマット形式 xfs のデータを読む ] [ Ubuntu で NAS のフォーマット形式 xfs のデータを読む 非表示 ]
 6. [ CentOS 7 で NAS のフォーマット形式 xfs のデータを読む ] [ CentOS 7 で NAS のフォーマット形式 xfs のデータを読む 非表示 ]
 7. [ CentOS 7.4で samba サーバを構築する ] [ CentOS 7.4 で samba サーバを構築する 非表示 ]

1. TS-WX2.0TL/R1 の HDD 交換 ( EMモード )

○ 三年ほど使用した buffalo Tera Staition TS-WXL2.0TL/R1 の No.1側のHDDが、壊れ たので「ダメもと」の精神で、市販の HDD が使えないか実験してみました。
私の場合、リセットとか、フォーマットをしたので、 Tera Staition が、EMモードに なり web 設定ができなくなりましたが、下記の手順で復旧することができました。
しかし、結構、手間と時間がかかりました。

注意 HDD のデータは、すべて消去されるので注意してください。
必要な冶具として PC なしでクローンコピーできる冶具( 私の場合、Mr.Clone を使用 )が要ります。

① 使用した HDD は、地方でも簡単に手に入る buffalo 外付HDD 1.0TB の HDD を分解し、 取り出し使用しました。
新規購入する時には、Western Digital の WD Red シリーズが NAS 用で 1 ~ 6 TB の HDDがあり、良いのではないかと思います。ネット上で簡単入手できるようです。

② そのままでは、Tera Staition が認識しないので Mr.Clone を使用して No.2 側を buffalo 外付HDDから取り出した HDD へクローンコピーします。
( 1.0TB で、およそ三時間位かかります。 )

-----------------------------------------------------------------
※※ 参考 ※※
HDD のパーティション・フォーマットの種類を確認できるアプリ
として 「 復旧天使XFS 」というものがあります。
無料版は、ファイルの取り出しは、出来ませんが、HDD の中( ファイル名まで )は、見ることはできます。

復旧後、「 復旧天使XFS 」で見た、HDD の中は、下記の様になっていました。
( 正常時の内容です。 )

  1.  Ext2/3/4 パーティション 0.95GB
  2.  Ext2/3/4 パーティション 4.76GB
  3.  不明 パーティション
  4.  不明 パーティション
  5.  不明 パーティション
  6.  SGI
XFS パーティション 917.17GB

  1 番目のパーティションには、lost+found というフォルダがあり、次のファイルが保存されていました。

   cont_save.tgz      hddroots.buffalo.update.done
   intrd.buffalo       log.tgz  splx.tgz
   u-boot-88f6281.buffalo  uImage-88f6281.buffalo
   u-boot-mv78100.buffalo uImage-mv78100.buffalo
   u-boot.buffalo      uImage .buffalo

  2 番目のパーティションには、
Linuxのシステムが保存されていました。

  6 番目のパーティションには、
共有ファイルが保存されていました。

-----------------------------------------------------------------

③ コピーした HDD をNo.1 側に、No.2 側を元に戻し、Tera Station の電源を入れます。
当然エラー表示になります。

④ buffalo のダウンロードサイトから、TS-WXL シリーズ用の TeraStation Xシリーズ
ファームウェア アップ
データ(Windows)をダウンロードします。


tsx-159.exe というファイルがダウンロード出来たと思います。

⑤ tsx-159.exe を解凍して中にある、TS-X_FW1.59 のフォルダをクリックする。

⑥ その中にある TSUpdater.exe をクリックして、実行させます。

Tera Station の検索が始まり、検索が終了すると 製品名・IPアドレス等が表示されます。

[ファームウェア更新]をクリックします。

ファームウェアの書込みと HDD に対しての基本データ等の書込みが開始されます。
( およそ一時間位かかりました。 )

⑧ 「 Tera Station アップデート完了 」が表示すれば、成功です。

web設定画面の左側システム情報のディスク情報 RAIDアレイ1 と表示していれば、RAID1 になっています。
あとは、共有フォルダを作成すれば完了です。


RAID1 になってない時には、RAID1 の設定をします。

これで、Tera Station のバージョンは、1.59 ( H25.4 現在 )の最新版になりました。

⑨ RAID1 の設定

web設定で、RAIDアレイの再構築をします。 詳細の設定方法は、Tera Station 本体のマニュアルに記載されています。

この処理は、設定の指示を出したら、PC は、不要なので夕方から、夜中にさせると良いと思います。
INFO のランプ点灯します。ランプが消えたら終了です。
( この処理の完了には、8~10 時間位かかります。 )


⑩ web設定からの共有フォルダの設定は、この間でも設定できますので、しておきます。

※ 参考情報 ※
info ランプの消えるタイミングについて
info ランプの消灯は、管理者に知らせる現象が無くなった時ですが、実際に消したい時どうすればよいか。
----> エラーになった設定項目を再度「設定」をクリックして再設定すれば消えるようです。
( 間違った設定の時には、修正してください。 )


-----------------------------------------------------------------
H25.05.19 追記 

上記で復旧させた Tera Station の古い方の HDD が破損し、HDD を交換しました。

以下は、私が行った手順です。何かの参考になればと思い紹介します。

破損した HDD を windows 7 の CrystalDiskInfo でどの様な状態になっているか調べてみました。

結果は、健康状態は、「
異常 」、代替処理済セクター数の項目が赤丸に 使用時間は、12457時間になっていました。
Tera Station は、この値をチェックして、警告を出すのでしょうか。???

2. TS-WX2.0TL/R1 の HDD 交換 ( 片方が動作する時 )

リセットも何もせずに復旧に挑戦してみました。

注意事項 必要なデータは、動作している時点で、PC 側にバックアップを取ってください。
再度 RAID1 の構築をしなければならないかもしれませんので。


新品(リサイクル品)を購入して、そのままの状態で正常な HDD をクローンコピーします。

この作業は、1TB で約3時間ほどかかります。

ここがポイント!!正常な HDD だけを本体に戻して、電源をいれます。
( No.1, No.2 伴本体に戻すと、全く認識されなくなります。)

エラーになっても動作( 内部にアクセスできるとか。)していることを確認してください。
ここで、動作していないと、前に進めなくなります。万事休す!!!

ここで、コピーした HDD を挿入します。

正しく認識されれば、INFO ランプが点灯し、PC 側へメッセージが送信されます。
その内容は、 HDD の認識と、[ FUNCTION ]キーを押してフォーマットをしろというメッセージです。

④ 本体の[FUNCTION]キーを3秒ほど押すと No.2 の HDD のフォーマットが開始します。

⑤ しばらくの間、本体の液晶画面が点滅し、なにやらしているようです。

⑥ 私の場合、点滅が終了した時点で PC 側からアクセスできなくなりました。

ここで、電源スイッチを押して、再起動させました。

⑦ 再起動後、PC 側からアクセス出来るようになり、No.2 の HDD も認識されていました。

これで、復旧が完了しました。

⑧ web設定画面の左側システム情報のディスク情報 RAIDアレイ1 と表示していれば、RAID1 になっています。
RAID1 になってない時には、RAID1 の設定をします。
( HDD も初期化されるうえ、RAID1 の再構築は、約10時間かかります。)

----------------------------------------------------------------
※ 参考情報 ※
Tera Station の片方の HDD が破損した時には、同時に正常な方の HDD も交換しましょう。
交換しないと、近日中には、壊れる可能性が大です。

3. LS-WH2.0TGL/R1 の HDD 交換

LS-WH2.0TGL/R1 の HDD の稼働時間が2万時間を超えて、破損しそうなので交換する作業 があり、市販の HDD で出来るのではないかと思い挑戦してみました。

結論から言うと、この機種の HDD 交換は、非常に簡単です。市販の HDD を購入して入れ替えるだけです。
ただし、windows で認識するかは、確認してください。 なお、RAID1 の仕様の時の交換方法です。

No.1 側とNo.2 側とでは、操作方法が違っていますが、私が実際に体験したままを紹介しています。

---------------------------------------------------------------

下記の手順は、No.1 側を交換する場合です。

① No.1 側に購入したままの状態の HDD をセットする。
No.2 側に正常動作している HDD をセットする。

② 本体の電源を入れる。 ( 裏面のスライドスイッチを ON 側にする。)
数分待つとPC側にポップアップメッセージが出ます。

③ NAS Navigator2 のアイコン右クリックから、[ ウィンドウ表示 ]をクリックして NAS Navigator2 の画面を表示し、LSWHGL869 のアイコン右クリックから、[web設定を開く] をクリックしてログイン(admin, password)します。

[TOP]管理の画面が表示します。
警告の下のメッセージ(RAIDアレイ1にエラーが発生しました。)をクリックする。
[ディスク管理]画面に変わります。

⑤ 構成ディスクの □ にチェックの入っていない方(ディスク1)にチェックをいれます。
次に、[RAIDアレイの再構成]をクリックする。

⑥ webメッセージからのメッセージか出るので、[OK]をクリックします。

[通信確認]画面に変わるので、確認番号を入力して[設定]をクリックします。

⑧ [ディスク管理]画面に変わり、「RAIDアレイ再構成中」の表示が出ます。

15分位は、本体のランプは「赤」点滅のままですが、その後、「橙」点滅に変わりRAID アレイの再構成が始まります。

後は、6時間ほど待つだけです。

---------------------------------------------------------------

下記の手順は、No.2 側を交換する場合です。

私の場合、No.2 側の交換は以下の様になりました。
(上手く動作しない時には、ログインして、No1 側を交換するの手順でしてみてください。)

① No.1 側に正常動作している HDD をセットする。
No.2 側に購入したままの状態の HDD をセットする。
( 購入した HDD が、windows が認識する事を確認した HDD をセットしてください。
windows が認識しない時は、クイックフォーマットをして認識する様にしてください。)

② 本体の電源を入れる。
( 裏面のスライドスイッチを ON 側にする。)

③ 動き出して少しすると、前面の中央のLEDランプが「赤」に点滅し、しばらくすると
「橙」の点滅に変わります。

この点滅は、 HDD が認識され RAID1 の再構成が始まった事を意味します。

④ この時、PC 側にも「RAID1 の再構成中」のメッセージが送信されます。

RAID1 の再構成は、1TB で約6時間ほどかかります。

4. KNOPPIX でNASのフォーマット形式 xfs のデータを読む
(バッファローLink Station)

私の個人的な見解ですが、 xfsフォーマット上のデータを読み取るには、KNOPPIX を CD (またはDVD)ブートで行うのが一番の近道ではないかと思います。

KNOPPIX を CD(またはDVD)ブートで、Tera Station の RAID1 HDD を USB 接続して別の USB HDD へxfs フォーマットされたパーティション上のデータをバックアップする方法を紹介します。

使用した
KNOPPIX のバージョンは、6.7.1 です。

私のサーバ機( ONKYO DP315 )では、素直に動作しました。動作しない PC もありますので、 バージョンを変えて相性の良いものを探してみてください。

私の手持ちの PC でインストール出来るかを確認したところハイスペックの PC では上手く インストール出来ないようです。

先人の知恵を拝借して下記の手順で簡単にバックアップが出来ました。

※ 参考になるかな? ※

KNOPPIX を HDD にインストールするのは、チョット面倒だし、状態も変わるみたいので、 CD(またはDVD)ブートで、することを勧めます。
KNOPPIX は、[ Enter ]キーだけ押して スタートさせると CD(またはDVD) ブートします。

私の ONKYO DP315 + USB CD/DVD の環境では、USB ブート開始から、約1分で大きなペンギンが、表示します。
トップ画面の表示までは、2分位です。
( 起動画面が表示しても、何も操作しないでください。勝手に次のステップに移行します。)

起動画面ペンギンマークトップ画面コマンド入力画面
A B C D

決して、HDD には、インストールされませんので、安心して[ Enter ]キーを押してください。

電源を入れる前に、RAID1 の HDDバックアップ先の USB HDD は、
接続しておいて ください。

なお、RAID1 の HDD は、PC 本体の USB に接続をしてくだい。
SATA - USB の機種によっては、認識しにくい物があります。

USB ブートの機器選択の時、下記の様に接続した USB HDD が、正しく認識されてないと KNOPPIX をインストールしても認識しないので注意してください。

A

-----------------------------------------------------------------
KNOPPIX 6.7.1 または、7.0.2 日本語版を CD (またはDVD) からブートします。
ブート中に
大きなペンギンが表示すればインストールは、成功 します。

② デスクトップの左下3番目のアイコン(
Terminal emulater )をクリックします。
コマンド入力画面が表示します。

③ root 権限に移行するため、[ su - ]を入力します。

④ RAID1 仕様の HDD を読めるよう raid1 のモジュールを modprobe を使用して追加します。

modprobe raid1 と入力する。

この結果、私の環境では、/etc に mdadm というフォルダーが作られていました。
mdadm は、RAID の管理用モジュールです。

⑤ mdadm.conf を編集します。

vi /etc/mdadm/mdadm.conf

下記の1行を DEVICE ・・・・の下( 9行目 )に追加します。

DEVICE /dev/sd[ab][0-9]


( sd[ab][0-9] は、sda0~sda9,sdb0~sdb9 を認識の対象にさせます。
sdc も含める時は、[ab] を [abc] にします。)

A

⑥ RAID1 仕様の HDD を読めるか確認します。下記コマンドを入力する。
-----------------------------------------------------------------
テストしたRAID1仕様の HDD ( LS-WH2.0TGL/R1で使用してた HDD )を「 復旧天使XFS 」
で見たら、HDD の中は、下記の様になっていました。

 1. Ext2/3/4 パーティション 0.95GB
 2. SGI XFS パーティション 4.76GB  <---- Linux のシステムが入っていました。
 3. 不明 パーティション
 4. SGI XFS パーティション 923.85GB  <---- データが入っていました。
-----------------------------------------------------------------

  mdadm --examine --scan

  下記の様に表示せすれば、認識され読むことが出来ます。

  ARRAY /dev/md0 UUID= ...
  ARRAY /dev/md1 UUID= ...
  ARRAY /dev/md10 UUID= ...
  ARRAY /dev/md2 UUID= ...

A

⑦ md0,md1,...を読めるように mdadm.conf を下記コマンドで編集します。

  mdadm --examine --scan >> /etc/mdadm/mdadm.conf

  cat /etc/mdadm/mdadm.conf を入力して行末に⑥での出力結果が追加されているはずです。

  mdadm --examine --scan の結果が、追加された mdadm.conf の出力結果

A

⑧ 認識されたデバイスをマウント出来るよう下記コマンドで有効にします。
テストしたRAID1仕様の HDD では、md2 にデータが入っていました。

  mdadm --assemble /dev/md2

  mdadm /dev/md2 has been started with 1 drive ( out of 2 ) と表示すれば、md2 が有効になっています。

A

⑨ 有効になったデバイスをマウントします。

1. デスクトップの[ KNOPPIX ]のアイコンをクリックする。
2. KNOPPIX ウィンドウが開くので左側の md2 を右クリックして[ボリュームをマウントする]をクリックする。
3. 保存先の USB HDD ( 今回では、HD-PCTU2 )も同様にマウントします。

[ KNOPPIX ]のアイコンmd2 のマウントUSB HDD のマウント
A B C

xfsフォーマット上のデータをバックアップをする。

データのバックアップは、デスクトップの[ KNOPPIX ]のアイコンをクリックし、開いた ウィンドウの左側のデバイスのアイコン md2 をクリックし、コピーしたいホルダを右ク リックで[コピー]を選び、次に保存させたい USB HDD のアイコンをクリックして、保存 するフォルダを選んで右クリックから[貼り付け]を選ぶだけです。

md2 を開いた画面A

以上の操作で、RAID1 の xfsフォーマット上のデータを普通に[コピー]/[貼り付け] だけで簡単にバックアップ(復旧)することができるようになります。

⑪ システムの終了

1. 左下のアイコンをクリックすると、ホップアップメニューが、表示するので、一番したの[ログアウト] をクリックする。

2. 表示したメニュー画面の一番上の[シャットダウン(U)]をクリックする。

⑫ 再度行うときには、再起動してから行って下さい。

A B

---------------------------------------------------------------
※※
参考情報 ※※
1. 別の方法で NAS の HDD(フォーマット形式 xfs)を読み込んでみました。
① KNOPPIX を CD(またはDVD)ブートで、起動し、コマンド dmesg で NAS が認識されているデバイス名を調べます。
( デバイス名及び番号は、私の PC での場合です。)


( 上部省略 )
[ 49.878767] scsi 10:0:0:0: Direct-Access SAMSUNG HD103UJ ……
[ 49.879097] sd 10:0:0:0: Attached scsi generic sg4 type 0
[ 49.879969] sd 10:0:0:0: [sdd] 1953525168 512-byte logical blocks……
[ 49.880840] sd 10:0:0:0: [sdd] Write Protect is off
[ 49.880851] sd 10:0:0:0: [sdd] Mode Sense: 34 00 00 00
[ 49.881731] sd 10:0:0:0: [sdd] Write cache: disabled, read cache: ……
[ 49.931427] sdd: sdd1 sdd2 sdd4 < sdd5 sdd6 >  
<---- ここが、NAS のデータ
[ 49.934808] sd 10:0:0:0: [sdd] Attached SCSI disk
[ 50.141959] scsi_verify_blk_ioctl: 14 callbacks suppssed
[ 50.141961] mdadm: sending ioctl 800c0910 to a partition!
[ 50.141964] mdadm: sending ioctl 1261 to a partition!
[ 50.141967] mdadm: sending ioctl 800c0910 to a partition!
( 下部省略 )

この結果から、NAS の HDD は、デバイス名が sdd で認識されている事が分かります。

② コマンド parted でデバイス sdd を調べます。

root@Microknoppix:~# parted -s /dev/sdd print
Model: SAMSUNG HD103UJ (scsi)
Disk /dev/sdd: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start  End  Size  Type   File system  Flags
 1  32.3kB  1028MB 1028MB primary  ext3
 2  1028MB 6153MB 5124MB primary  xfs
 4  6153MB 1000GB  994GB extended
 5  6153MB 7181MB 1028MB logical  linux-swap(v1)
 6  7181MB  999GB  992GB logical  xfs 
<---- ここが、NAS のデータ

③ マウント先のディレクトリを作成します。

  mkdir -p /home/hdd  
マウント先、ファイル名( hdd )は、任意に決めます。

④ HDD を下記コマンドでマウントする。


  mount -t xfs /dev/sdd6 /home/hdd

   
sdd6 は、①②で確認したデバイス名です。
   
hdd は、③で作成したディレクトリ名です。

⑤ マウントした sdb6 を読み込む。


ファイルマネージャーを開いてマウント先のディレクトリ /home/hdd を開きくと NAS のデータがあります。

2. 他の Linux Centos 等の HDD ( LV : Logical Volume ) を読む方法

knoppix では、他の Linux HDD をボルュームグループ名を使用すると簡単に読むことが出来ます。


※ 豆知識 ※

LVM (Logicl Volume Manager : 論理ボリュームマネージャ)とは、HDD のパーティション を、論理ボリュームと呼ばれる単位で提供して物理的なディスクの存在を隠します。
その結果、物理的なディスクの増設や変更などのディスクデバイスの管理の柔軟性を向上 させることが出来るシステムです。

例としてコマンド parted -s /dev/sdc print を実行したとき
( デバイス名は、コマンド dmesg で調べます。 )


----------------------------------------------------------------
モデル: WDC WD16 00BEVT-00ZCT0 (scsi)
ディスク /dev/sdc: 160GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: msdos

番号  開始  終了 サイズ タイプ ファイルシステム フラグ
1  32.3kB 107MB 107MB プライマリ ext3   boot
2  107MB  160GB 160GB プライマリ      lvm 
<---- ここが、
                            
読みたいデータ
----------------------------------------------------------------

の様にサイズ 160GB 部分は、 LVM (Logicl Volume Manager) なのでファイルシステムが表示されていません。

下記方法で ここを読むことが出来ます。

① 下記コマンドでボルュームグループ名を調べます。

  pvscan

  表示例
  pv /dev/sdc2 VG centos_leomiya lvm2[59.5GiB・・・・・・・
           ↑ ↑ この centos_leomiya がボルュームグループ名です。

② 下記コマンドでこのボルュームグループをアクティブにしてファイルマネージャーで読めるようにします。

  vgchange -a y ○○○○○  ○○○○○は、ボルュームグループ名

  コマンド入力後、・・・・volume group "○○○○○" now active と表示すれば ファイルマネージャーで読めるようになります。

③ ボルュームグループ名○○○○○のアンマウント

  アクティブ化したボルュームグループ名を非アクティブしてアンマウントします。

  vgchange -a n ○○○○○

5. Ubuntu でNAS のフォーマット形式 xfs のデータを読む
(バッファローLink Station)

Ubuntu のバージョンに関係なし下記操作で xfs のデータを読むことができます。

windows が認識する USB HDD は、USB に差し込むだけで認識し、ボリューム名は、 windows の
時と同じ名前になります。

下記で使用しているデバイス名は、私が検証した時に使用した名前です。
デバイス名は、使用する環境によって変わりますのでよく確認して設定してください。


① 端末を起動します。

デスクトップ左上の[Dashホーム]をクリックして検索欄に「端末」と入力します。
表示した[端末]のアイコンをクリックします。


※ [端末]のアイコンをサイドバーに入れる方法 ※

[端末]のアイコンをサイドバーにドラックするだけでサイドバーに入ります。

以後、端末から root 権限で操作するため root のパスワードを設定します。
( 次回からは不要です。 )


root 権限にしたくない時は、コマンドの先頭に sudo を付けて④から実行してください。

sudo passwd root と入力します。

[sudo] password for ○○○○:
<--- ユーザーのパスワードを入力する
( 上記の○○○○は、ユーザー名です。)
新しいUNIXのパスワードを入力してください: ○○○○○○○
<--- ○○○○○○○は、
新しいUNIXのパスワードを再入力してください: ○○○○○○○    
パスワード

③ 操作権限を root へ移行します。


su - を入力した後、パスワードの入力が要求されますので、②で設定したパスワードを入力します。 # が表示すれば成功です。


④ XFS ファイルシステム管理用ユーティリティーをインストールします。

( 次回からは不要です。 )

  apt-get -y install xfsprogs


⑤ USB に接続した HDD が認識されたデバイス名を下記コマンドで調べます。


  fdisk -l

  下記は、表示例です。
-----------------------------------------------------------------
  # fdisk -l

   ( ここは、ubuntu 用 HDD なので省略 )

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
ヘッド 255, セクタ 63, シリンダ 121601,  合計 1953525168 セクタ Units = セクタ数 of 1 * 512 =  512 バイト セクタサイズ (論理 / 物理):  512 バイト / 512 バイト I/O サイズ (最小 / 推奨):  512 バイト / 512 バイト ディスク識別子:  0x9d457f08 デバイス ブート 始点 終点 ブロック Id システム /dev/sdb1 63 2008124 1004031 83 Linux /dev/sdb2 2008125 12016619 5004247+ 83 Linux /dev/sdb4 12016620 1953520064 970751722+ 5 拡張領域 /dev/sdb5 12016683 14024744 1004031 82 Linuxスワ…… /dev/sdb6 14024808 1951544069 968759631 83 Linux
<---                   ここが、NAS のデータ

-----------------------------------------------------------------

⑥ xfs フォーマット形式のファイルが何番のデバイス名になっているかを下記コマンドで調べます。
表示された番号は、⑤で調べたデバイス名の番号に対応しています。


  parted -s /dev/sdb print  
sdbは、⑤で調べたデバイス名です。

下記は、表示例です。
-----------------------------------------------------------------

# parted -s /dev/sdb print
モデル: SAMSUNG HD103UJ (scsi)
ディスク /dev/sdb: 1000GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: msdos

番号  開始    終了   サイズ  タイプ ファイルシステム フラグ
 1    32.3kB  1028MB  1028MB  primary   ext3
 2    1028MB  6153MB  5124MB  primary   xfs
 4    6153MB  1000GB  994GB   extended
 5    6153MB  7181MB  1028MB  logical   linux-swap(v1)
 6    7181MB  999GB   992GB   logical   xfs   <---- ここが、
                                                           NAS のデータ

-----------------------------------------------------------------
表示されたリストの右端は、フォーマット形式形式なので xfs フォーマット形式の 番号をメモしておきます。


⑦ マウント先のファイルを作成します。( 次回からは不要です。 )


  mkdir -p /home/mnt/hdd  
ファイル名( hdd )は、任意に決めます。

⑧ HDD を下記コマンドでマウントする。


  mount -t xfs /dev/sdb6 /home/mnt/hdd

       
sdb6 は、⑤⑥で確認したデバイス名です。
       
hdd は、⑦で作成したファイル名です。

⑨ マウントした sdb6 を読み込む。


 1. サイドバーの[ホームフォルダ]クリックしてホームフォルダ開く。


( この時、開いたホームフォルダ内にサイドバーが表示していない時には、マウスをデス クトップの上のバーへ移動し、[表示(V)][サイドバー]を選び、[サイドバーを表示(S)] にクリックしてチェックを入れる。)


 2. サイドバー内の[ファイルシステム]をクリックする。
 3. 表示されたフォルダ一覧から、マウント先のフォルダを開く
 4. 必要とするファイルを選んで右クリックから[コピー(C)]をクリックする。
  5. 保存先のフォルダを選んで右クリックから[貼り付け(P)]をクリックする。

⑩ マウントの解除( HDD の取り外し )は、下記コマンド入力する。


  umount /dev/sdb6  
<--- /dev/sdc6 は、⑧でしたマウント先フォルダです。

windows が認識する HDD は、サイドバーの該当する HDD のデバイス名を右クリックし [アンマウント(U)]をクリックする。
-----------------------------------------------------------------
簡単に済ませたい方は、「 復旧天使XFS 」のライセンスを○千円払って購入すれば Windows PC で同じことができます。
-----------------------------------------------------------------
※ 参考にしたサイト
どぶお / Linuxで遊ぼう! / USBでマルチブート へジャンプし、タイトル下から、「 Linuxで遊ぼう! 」に戻り、 一覧から「 RAIDをちょこっと使う 」を探してみてください。

6. CentOS 7 でNAS のフォーマット形式 xfs のデータを読む
(バッファローLink Station)

CentOS 7 のシステムは、フォーマット形式が xfs なので簡単に NAS の HDD を読むことが出来ます。
CentOS 7 のインストールは、「 CentOS-7-x86_64-DVD.iso インストールとサーバ構築 」で紹介しています。
但し、PC は、64bit 対応の CPU 搭載機にがぎります。確認は、PC のプロパティでシステムの種類 : x64ベースと表示していれば、64bit 対応機です。
以下の操作は、CentOS 7 システムを windows 側から Tera Term でログインし、行うか、 直接 CentOS 7 システムにログインして root 権限で行って下さい。


① NAS HDD を USB につなぎます。

コマンド lsblk を入力します。

下記の様に表示(一例 BUFFALO NAS LS-WHGL869 の HDD)します。


-----------------------------------------------------------------

NAME                    MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sda                 8:0    0 232.9G  0 disk
|-sda1              8:1    0     1G  0 part  /boot
`-sda2              8:2    0 231.9G  0 part
          (省略)
sdb                 8:16   0 931.5G  0 disk
|-sdb1              8:17   0 980.5M  0 part
| `-md125           9:125  0 980.4M  0 raid1   <--- RAID1
|-sdb2              8:18   0   4.8G  0 part
| `-md126           9:126  0   4.8G  0 raid1   <--- RAID1
|-sdb4              8:20   0     1K  0 part
|-sdb5              8:21   0 980.5M  0 part
| `-md127           9:127  0 980.4M  0 raid1   <--- RAID1
`-sdb6              8:22   0 923.9G  0 part
  `-md124           9:124  0 923.9G  0 raid1   <--- RAID1

-----------------------------------------------------------------

  上記の様に HDD が RAID 状態に成っていることがわかります。

  このままでマウントすると下記の様なエラーになります。

  ( /mnt/〇〇〇〇 は、マウント先のディレクトリ )


  
mount: /dev/sdb2 is already mounted or /mnt/〇〇〇〇 busy

② RAID1 仕様の HDD を読めるよう すべての RAID アレイを停止します。

  mdadm --stop --scan と入力する。

  mdadm : RAIDアレイの作成や制御に使用するコマンド

③ 再度 コマンド lsblk を入力します。

  下記の様に表示するはずです。

-----------------------------------------------------------------

NAME                    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                       8:0    0 232.9G  0 disk
|-sda1                    8:1    0     1G  0 part /boot
`-sda2                    8:2    0 231.9G  0 part
          (省略)
sdb                       8:16   0 931.5G  0 disk
|-sdb1                    8:17   0 980.5M  0 part
|-sdb2                    8:18   0   4.8G  0 part    <--- Linux OS
|-sdb4                    8:20   0     1K  0 part
|-sdb5                    8:21   0 980.5M  0 part
`-sdb6                    8:22   0 923.9G  0 part    <--- ここが、
                                                     NAS のデータ

-----------------------------------------------------------------
  上記の様に raid1 の表示がなくなり HDD の RAID が解除されています。

④ NAS HDD をマウントします。

  マウント先のディレクトリ(〇〇〇〇)は、事前に作成して置きます。

  mount -t xfs /dev/sdb6 /mnt/〇〇〇〇

  エラーが出なければ、マウントされています。

  後は、直接読むか、FFFTP を使用して windows 側に転送し、読むかです。

7. CentOS 7.4 で samba サーバを構築する

ネットワーク HDD ( NAS ) の動作を学ぶ目的で CentOS 7.4 で samba サーバを構築してみました。
CentOS 7.4 のインストールは、[ CentOS-7-x86_64-DVD.iso インストールとサーバ構築 ] で紹介していますので詳細は、そちらを参照してください。


-----------------------------------------------------------------
ここでの samba サーバの設定条件


① アクセスユーザーの ID ・パスワード

  ログイン ID : user1 , パスワード : samba-user1
  ログイン ID : user2 , パスワード : samba-user2
② user1 がアクセスできるディレクトリ名を[ 共有1 ]とします。
  user2 がアクセスできるディレクトリ名を[ 共有2 ]とします。
  ゲストがアクセスできるディレクトリ名を[ 共有3 ]とします。


  [ 共有1 ]は、ID : user1, パスワード : samba-user1 を入力してアクセスします。

  [ 共有2 ]は、ID : user2, パスワード : samba-user2 を入力してアクセスします。
  [ 共有3 ]は、認証無しでアクセスします。


※ 注意事項 ※
windows 側からは、複数のユーザー名でのアクセスは禁止されています。

この場合は、user1 か user2 のどちらかでアクセスします。ゲストの場合は、制限なしです。

-----------------------------------------------------------------

1. samba のパッケージのインストール

下記 yum コマンドで samba のパッケージをインストールします。

yum -y install samba

この結果、下記パッケージがインストールされます。

インストール:
  samba.x86_64 0:4.6.2-11.el7_4

依存性関連をインストールしました:
  pytalloc.x86_64 0:2.1.9-1.el7
  samba-common-libs.x86_64 0:4.6.2-11.el7_4
  samba-common-tools.x86_64 0:4.6.2-11.el7_4
  samba-libs.x86_64 0:4.6.2-11.el7_4

2. samba 用のポートの解放

samba 様のポートは、137,138,139,445 を解放する必要があります。これは下記コマンドで行います。

firewall-cmd --permanent --add-service=samba;\
firewall-cmd --reload


ポートの解放を確認します。

iptables-save

Generated by iptables-save v1.4.21 on Mon Nov 20 09:06:39 2017
省略
-A IN_public_allow -p udp -m udp --dport
137 -m conntrack --ctstate NEW -j ACCEPT
-A IN_public_allow -p udp -m udp --dport
138 -m conntrack --ctstate NEW -j ACCEPT
-A IN_public_allow -p tcp -m tcp --dport
139 -m conntrack --ctstate NEW -j ACCEPT
-A IN_public_allow -p tcp -m tcp --dport
445 -m conntrack --ctstate NEW -j ACCEPT

〇 SELinux 有効( Enforcing )の時の設定

SELinux はデフォルトで下記の様に samba のポートは有効になっています。

  
semanage port -l| grep smb

smbd_port_t        tcp   445, 137-139

このままでは、windows 側からフォルダ内が見えないので下記コマンドで外部からのフルアクセスを許可します。


samba 関連の初期状態の確認 : コマンド
getsebool -a | grep samba で行います。

samba_create_home_dirs --> off
samba_domain_controller --> off
samba_enable_home_dirs --> off
samba_export_all_ro --> off
samba_export_all_rw --> off
<---- 変更箇所は、ここです
samba_load_libgfapi --> off
samba_portmapper --> off
samba_run_unconfined --> off
samba_share_fusefs --> off
samba_share_nfs --> off
sanlock_use_samba --> off
tmpaper_use_samba --> off
use_samba_home_dirs --> off
virt_use_samba --> off

設定値の変更は、下記コマンドで行います。

setsebool -P samba_export_all_rw 1

この設定の確認は、setsebool の設定確認コマンドで行います。

getsebool samba_export_all_rw

samba_export_all_rw --> on
<--- ここが off から on になります

上記の設定だけでは、FTP(FFFTP等) でフォルダ内が見られません。見られようにする には、SELinux の ftp 関連の設定を変更します。 下記にその手順を紹介します。

ftp 関連の初期状態の確認 : コマンド
getsebool -a | grep ftp で行います。

ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
<---- 変更箇所は、ここです
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
tftp_home_dir --> off

設定値の変更は、下記コマンドで行います。

setsebool -P ftpd_full_access 1 <---- 1 or on

変更には、チョット時間(数秒)がかかります。

変更されたか確認します。


getsebool ftpd_full_access

ftpd_full_access --> on <---- デフォルト値 off が on になりました。

これで、FTP(FFFTP等) でフルアクセスできるようになり、ftp でのデータ転送 も受付されるようになりました。
但し、サーバ運用時は、フルアクセス禁止にしておく事を進めます。


3. samba サーバーアクセス用ユーザー作成

① ユーザー新規登録

useradd -m user1 <--- user1は、ユーザー名

このコマンドによって、ディレクトリ /home に /user1 のディレクトリが作成されます。

ディレクトリ /home/user1 は、FFFTP で展開できないので属性変更( 700 を 777 に変更 )します。


chmod 777 /home/user1

user2 も同様にして行います。

ゲストユーザーのディレクトリを /home に /guest で作成します。

mkdir /home/guest;\
chmod 777 /home/guest


①で登録済のユーザーをSambaサーバーアクセス用ユーザーとして新規登録、 合わせて認証用のパスワードの登録もします。

pdbedit -a user1 <--- user1は、ユーザー名

new password:
samba-user1 <--- パスワード応答 samba-user1は、パスワード
retype new password:
samba-user1 <--- パスワード応答(確認)

この結果下記の様に表示します。

Unix username:        user1
NT username:
Account Flags:        [U          ]
User SID:             S-1-5-21-2080734789-460182111-626224244-1002
Primary Group SID:    S-1-5-21-2080734789-460182111-626224244-513
Full Name:
            ( 中略 )
Workstations:
Munged dial:
Logon time:           0
Logoff time:          木, 07  2月 2036 00:06:39 JST
Kickoff time:         木, 07  2月 2036 00:06:39 JST
Password last set:    月, 20 11月 2017 13:24:48 JST
Password can change:  月, 20 11月 2017 13:24:48 JST
Password must change: never
Last bad password   : 0
Bad password count  : 0
Logon hours         : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

4. samba の設定ファイル smb.conf の設定
下記コマンドで samba の設定ファイル smb.conf を上記条件で設定します。


vi /etc/samba/smb.conf

------------ ここから ------------------------------------------
[global]
    unix charset = eucJP
    dos charset = CP932
    mangled names = no
    vfs objects = catia
    catia:mappings = 0x22:0xa8,0x2a:0xa4,0x2f:0xf8,0x3a:0xf7,0x3c:0xab,0x3e:\
    0xbb,0x3f:0xbf,0x5c:0xff,0x7c:0xa6

    server string = Samba-Server
    workgroup = workgroup
    security = user
    passdb backend = tdbsam
    hosts allow = 192.168.0.0/24

# %m : アクセスしてきた PC 名
    log file = /var/log/samba/log.%m
    max log size = 1

#guestユーザにマッピング
    map to guest = Bad User
    guest account = nobody

[共有 1]
    comment = Home directory
    path = /home/user1
# ここの認証ユーザー user1
    valid users = user1
    browsable = yes
    printable = no
    read only = No
    writable = Yes
    guest ok = no
    create mode = 0666
    directory mode = 0777

    vfs objects = recycle
    recycle:repository = .recycle
    recycle:keeptree = no
    recycle:versions = yes
    recycle:touch = no
    recycle:maxsize = 0
    recycle:exclude = *.tmp ~$*

[共有 2]
    comment = Public Files
    path = /home/user2
# ここの認証ユーザー user2
    valid users = user2
    browsable = yes
    printable = no
    read only = No
    writable = yes
    guest ok = no
    create mode = 0666
    directory mode = 0777

    vfs objects = recycle
    recycle:repository = .recycle
    recycle:keeptree = no
    recycle:versions = yes
    recycle:touch = no
    recycle:maxsize = 0
    recycle:exclude = *.tmp ~$*

#ここのディレクトリは、認証不要
[共有 3]
    comment = Free Files
    path = /home/guest
    browseable = yes
    writable = yes
    guest ok = yes
    create mask = 0666
    directory mask = 0777

    vfs objects = recycle
    recycle:repository = .recycle
    recycle:keeptree = no
    recycle:versions = yes
    recycle:touch = no
    recycle:maxsize = 0
    recycle:exclude = *.tmp ~$*

------------ ここまで ------------------------------------------------------

※※ 参考情報 [共有 1]を認証不要(ゲストユーザー用)に変更する設定例 ※※

[共有 1]
    comment = Home directory
    path = /home/user1  
<--- ゲストユーザー用に変更 ex. path = /home/guest
# ここの認証ユーザー user1
    valid users = user1  
<--- コメントアウト
    browsable = yes
    printable = no
    read only = No
    writable = Yes
    guest ok = no     
<--- no を yes に変更
    create mode = 0666
    directory mode = 0777

変更後は、samba を再起動します。

5. samba の起動

systemctl start smb nmb ← Samba起動 nmb起動

systemctl enable smb nmb ← Samba自動起動設定 nmb自動起動設定

なお、設定変更後の再起動は、
systemctl restart smb でだけでOKです。
以上で windows 側から、samba サーバ機か見えるはずです。PC のネットワークを開い てサーバ機のホスト名があるか確認してください。 無い時には、どこか間違いがあります。

サーバ機のホスト名が見えたらアイコンをダブルクリックして更にフォルダをクリック してみてください。[ネットワーク情報の入力] でユーザー名とパスワードの入力が求 められます。後は、設定したユーザー名とパスワードでアクセスできるかを確認します。
ゲストユーザーフォルダは、クリックだけで開くことができます。


6. samba の設定ファイル smb.conf の設定項目の機能説明

[global]

   unix charset = UTF-8  ← 追加(Linux側日本語文字コード)
   dos charset = CP932  ← 追加(Windows側日本語文字コード)
   mangled names = no   ← 追加(長いファイル名の文字化け対処)
   vfs objects = catia  ← 追加(上記対処でファイルアクセス不可になる
                    一部文字の置換)
#  文字単位の マッピングを指定する。 (上記対処でファイルアクセス不可になる
                    一部文字の置換)

catia:mappings = 0x22:0xa8,0x2a:0xa4,0x2f:0xf8,0x3a:0xf7,0x3c:0xab,0x3e:\
0xbb,0x3f:0xbf,0x5c:0xff,0x7c:0xa6

  server string = Miyasaka-Samba-Server ← コンピュータのコメントとして
                        表示される文字列
  workgroup = workgroup ← Windowsのワークグループ名を指定
  security = user    ← ユーザー名とパスワードでローカル認証を行う設定

#  ユーザー認証方式は[global]セクションのパラメータsecurity =で指定します。

#  security = user   ← ユーザー名とパスワードでローカル認証を行う設定
#  security = share  ← パスワードだけで認証を行う設定
#  security = domain  ← ドメインコントローラにより認証を行う設定
#  security = server  ← ほかのSMBサーバにより認証を行う設定
#  security = ads   ← AD(アクティブディレクトリ)ドメインのドメイン
              コントローラで認証を行う設定


  passdb backend = tdbsam    ← TDB(Trivial DataBase)を使用する
  hosts allow = 192.168.0.0/24  ← 追加(内部からのみアクセスできるようにする)

  log file = /var/log/samba/log.%m ← ログデータの保存先 %m : アクセスしてきた PC 名
  max log size = 1         ← ログファイルの最大サイズの指定 単位はキロバイト

#guest ok = yes で guestユーザを有効にする。

    map to guest = Bad User
    guest account = nobody

同一ユーザー名のアクセスフォルダを複数作成する時には、[homes] の名前と path を変更する事で実現できます。
ゲストユーザーフォルダとして設定する時には、guest ok = Yes とするだけでもOKです。

[homes] ← windows 側に表示するファイル名 日本語でもOKです。
    comment = Home directory ← ファイルのコメント windows 側に表示する
    path = /home/user1   ← ディレクトリ[homes]のパス指定
    valid users = user1  ← ここの認証ユーザー指定 user1
    browsable = yes     ← ディレクトリ[homes]を windows 側に表示する
    printable = no     ← このセクションがプリンタ共有でない宣言
    read only = No     ← 読み取り専用ファイルとしない指定
    writable = Yes     ← ファイルへの書き込み許可の指定
    guest ok = no      ← no : guestユーザを無効にする。
                 yes : 認証無しでアクセスできます。但し、path
                    で指定するディレクトリをゲストユーザー
                    フォルダに変更と valid users をコメント
                    アウトしてください。
                    ( 認証要以外のフォルダー ex root 等 )
    create mode = 0666   ← 新規に作成するファイルのパーミッション(属性)
    directory mode = 0777  ← ディレクトリのパーミッション(属性)

#  各ユーザー専用のごみ箱機能追加(ここから)
#  ※ファイル削除時に自動的にごみ箱へ移動されるようにする
    vfs objects = recycle  ← ごみ箱の有効化
    recycle:repository = .recycle ← ごみ箱のディレクトリ名(/home/ユーザ
                     ー名/.recycle)
    recycle:keeptree = no  ← ごみ箱へ移動時にディレクトリ構造を維持しない
    recycle:versions = yes ← 同名のファイルがごみ箱にある場合に別名で移動
    recycle:touch = no   ← ごみ箱へ移動時にタイムスタンプを更新しない
    recycle:maxsize = 0   ← ごみ箱へ移動するファイルのサイズ上限(0:無制限)
    recycle:exclude = *.tmp ~$* ← ここで指定したファイルはごみ箱へ移動せず
                    に即削除する

--------------------------------------------------------------------------

7. samba ユーザー管理

① ユーザーの削除

  ユーザーディレクトリ毎の削除は、オプション -r を付けます。

  
userdel -r 〇〇〇〇 <--- 〇〇〇〇は、ユーザ名

② samba ユーザーの削除

  
smbpasswd -x 〇〇〇〇 <--- 〇〇〇〇は、ユーザ名

 samba ユーザ削除後、必要なければOSユーザーも削除して下さい。

 ユーザを削除した場合、sambaを必ず再起動して下さい。


③ samba ユーザーの一覧表示

  
pdbedit -L

8. windows 側でのログイン情報を編集/消去する方法

ログイン情報を編集/消去する[ 資格情報マネージャ ]を表示する方法は、二通りあります。

方法 1

コマンドプロンプトで次のコマンドを実行すると、資格情報マネージャ(Windows)が起動する。

「ファイル名を指定して実行」で rundll32 keymgr.dll KRShowKeyMgr

と入力すると編集画面が表示されるので、対象のサーバーを選択して表示した中の[削除]をクリックする。

方法 2

[スタート] ---> [windowsシステムツール] ---> [コントロールパネル] --->> [資格情報マネージャ] ---> [windows資格情報] の順にクリックし、windows資格情報欄の 該当欄をクリックし、表示した中の[削除]をクリックする。

※ 注意 ※ これで切断すると PC を再起動しないと再接続できなくなります。

戻る