NAS復旧-1

NASの復旧作業。HDDに色々バックアップデータを書き込んで、様子をみている。今の所HDDは普通に動作している。

一応念のため、例の/bootを割り振っていたHDDは10GB程度の使わないパーティーションを作って、その他の部分を使うようにした。

40個の不良セクタはあるが、使えるとは出ている。

HDDを取り付けていると、どのHDDがどこについているかわかりずらいので、型番等を見える部分に書いておいた。

これで、どのHDDが壊れても、新しいHDDに取り換える時に迷わずにすむ。HDDが壊れて読み書き出来なくなったら、順に交換してゆきマザボやCPUが壊れるまではこのまま使うかな。

ところで、今回HDDからの読み込みに失敗して起動しなかったようなので、取り付けているHDDはどれも古いものばかり。今の起動HDDも2014年製でもう6年経っていることになる。

そこで、起動ドライブはHDDでなくSSDにすることにした。CentOSを入れるだけなので、SSDも120GB程度あれば十分で、安いやつを見繕って発注した。シリコンパワー の SSD A55シリーズ 128GB SPJ128GBSS3A55B

どうもSSDもコロナウイルス騒ぎで価格がじわりと上がっているらしい。このクラスでも500円程上がっているらしい。まあ、3千円前後なので安いのでちょっとはしかたがない。

NAS起動せず!!

NASが起動しない。電源をいれてしばらくして、なにやらメッセージが表示される。どうもCentOSが起動に失敗しているようだ。

ブート失敗のメッセージ


そもそも/bootが書かれていたHDDは、SeagateのST2000DL003、2TBで、製造年月日は2011年!!、動いていた時も代替セクターが40個ほどでていた。

左がSeagateの2TBHDD。このHDDからブートするようにしていた。
/bootの割り振りの様子 。40個の不良セクタ!!


NASはバックアップデータが主なので、特には困らないので、しばらくほっておいた。しかし、まったくバックアップしないのも怖いので、修理を始めた。
まず、起動HDDを一番新しい東芝製のDT01ACA050、500GBにした。まあ新しいと言っても2014年製。

今回起動ドライブにしたのは、左の東芝の500GBHDD。少しは新しい2014年製。

さらにいままでは4台のHDDをまとめて1個の論理ドライブにしてCentOSをいれていたが、それはやめて起動ドライブは前述の東芝のHDDにし、他の3個のHDDは別々にマウントして別個のドライブで使うことにした。こうすれば例えば1個HDDが壊れてもそこのデータはなくなるが、他の分は残っているという考え。CentOSを入れ直し、SAMBAで共有をかけて、各HDDにデータを読み書きして、HDDがまだ使えるか具合をみている。

なお、使っているマザーボードはGigabyteのGA-H67M-D2-B3、CPUはインテルのPentium G630T省電力CPU。メモリーは2GBのDDR3-1333。1066で動作。

Centos7のリーモート環境

CentOS7でのNAS構築、sambaも稼働し使えるようになったが、普段使っているLAN内のPCからもNASの操作が行えると便利だ。すぐにSSHでの接続は可能だが、せっかくGUIが動いているので、GUIベースでのリモート操作ができるようにする。
これができるようにするにはVNCを稼働させる。まずはyumでインストール

[root@centos7 ~]# yum install vnc-server
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile

‐‐‐‐‐‐‐‐‐‐ 中略 —————

総ダウンロード容量: 215 k
インストール容量: 509 k
Is this ok [y/d/N]: y
Downloading packages: tigervnc-server-1.8.0-13.el7.x86_64.rpm | 215 kB 00:00
Running transaction check Running transaction test Transaction test succeeded
Running transaction
インストール中 : tigervnc-server-1.8.0-13.el7.x86_64 1/1
検証中 : tigervnc-server-1.8.0-13.el7.x86_64 1/1
インストール: tigervnc-server.x86_64 0:1.8.0-13.el7
完了しました!

vncサーバを起動する。その時、接続先のPCでの画面の解像度を指定しておく。 -geometry 1280×1024 がそれ、当たり前だが、接続するPCの解像度より小さくしておくと便利。またもし、接続するPCでフルスクリーンで使いたい時は、同じ解像度にしておく。接続用のパスワードも聞かれるので、設定しておく。見るだけのパスワードはなしにしておいた。

[root@centos7 ~]# vncserver -geometry 1280×1024

You will require a password to access your desktops.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n
A view-only password is not used
———- 中略 ———-

なお、vncサーバを止めるには、

[root@centos7 ~] # vncserver -kill :1

とする。-killと:1の間にはスペースが1個入るので要注意。

そして、ファイアウォールにVNCサーバに接続できるよう穴をあける。「アプリケーション」メニューから「諸ツール」->「ファイアウォール」を選択。

そして、vnc-serverのところにチェックを入れる。

これで、サーバ(NAS)側の設定は終わり。続いて、LAN内のPCにこのVNCサーバへ接続するアプリをインストールする。
ここからダウンロードできる。(https://www.realvnc.com/en/connect/download/viewer/
その他Vectorなどからもダウンできる。

EXEファイルの場合は、ダウンロードしたファイルをダブルクリックすると、起動できる。起動したら、NASのIPアドレス+「 :1 」を上部に入力する。この「:1」は重要で、VNCサーバはメモリーなどのリソースが許す限り何個も起動でき、順に番号が付く。どれと接続するかの設定。

つながると、暗号化されていない通信だと警告がでるが、LAN内の使用なので、問題ないので、「Continue」ボタンをクリックしそのまま次へ進む。

するとパスワードの入力になるので、先ほどサーバ(NAS)で設定したパスワードを入力する。

無事つながったら、サーバ(NAS)のデスクトップが見えるはず。デスクトップの背景によっては表示がおかしい場合もあるので、その場合は、VNCビュアーの上側にマウスを持ってくると、操作パネルが出てくるので、ギアマークをクリックして、グラフィックの色数を多くすると良くなる。

調整が終わったら、これで接続設定は完了。以後、サーバまで行かなくてもサーバ内の設定や状況確認がLAN内のPCからもできるようになった。

centos7-samba-2

LAN内のWindowsマシンからはこのように見えるはず。

見えるまで時間がかかる場合もあるので、見えないときはしばらく待つ。または、上のアドレスのところに「¥¥CENTOS7」の様に、sambaのネットバイオス名に指定した文字を直接打ってもいい。

するとユーザー認証になるので、samba用に作成したユーザー名とパスワードを入力する。

「資格情報を記憶する」にチェックを入れておくと、次回からパスワード入力なしでログインできる。セキュリティの面からは入れないほうがいいが。

入力が終わると、NASの中が見えるはず。

これでNASの稼働が無事開始。あとは、データをアップしたりダウンしたりしてみる。

centos7-samba-1

CentOS7にsambaを入れて、NAS機能を持たせる。
まずは、sambaをインストール。CentOS7インストール時に「 ソフトウエアの選択 」から 「サーバー(GUI使用)」をクリック、そして「選択した環境のアドオン」では、「ファイルとストレージサーバー」 を選択していれば、自動的に入っているはずだが、これをチェックを兼ねて。

[root@centos7 ~]# yum install samba
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile

---------- 中略 ----------

パッケージ samba-4.8.3-4.el7.x86_64 はインストール済みか最新バージョンです
何もしません

ちゃんとはいっているようだ。入っていなければ、ここでインストールされるはず。
次に、samba用ディレクトリを作成。 HDDの領域が一番ある/homeに作成。

[root@centos7 ~]# mkdir /home/samba
[root@centos7 ~]# chmod 777 /home/samba

次に、sambaの設定ファイルをいじる。

[root@centos7 ~]# nano /etc/samba/smb.conf

エディターは最近nanoを使いだしたが、もちろんviでもOK。
まずは、[global]セクション。

workgroupの設定(XXXX)はLAN環境に応じて設定してください。
netbios name = CENTOS7 これも自由に設定可
192.168.11.のLAN内からのみアクセスokに。
プリンタは使わないので、止めておく。
[global]
workgroup = EKBT
server string = CentOS7 smb %v
security = user
netbios name = CENTOS7
host allow = 192.168.11.

passdb backend = tdbsam
dos charset = cp932

# printing = cups
# printcap name = cups
load printers = no
disable spooles = yes
# cups options = raw

次に、[Publoc]設定を追加。

[Public]
comment = Nas Public
path = /home/samba
public = yes
writable = yes
guest ok = yes
guest only = yes

これで設定はおわり。一応設定ファイルをチェックしておく。

[root@centos7 ~]# testparm

問題なさそうだったら、続いて、samba用のユーザーを作る。ユーザーはCentOS7インストール時作っているので、それを使用。
また別にユーザーを作ってそれを使ってもいい。

[root@centos7 ~]# pdbedit -a user1

あとはSELinuxがうごいているはずなので、これを止める。
まずは動作状況を確認。

[root@centos7 ~]# getenforce
Enforcing

動いているようだ。
一応動作を止めて、警告のみにする。

[root@centos7 ~]# setenforce 0
[root@centos7 ~]# getenforce
Permissive

LAN内のみのNAS運用の場合は、完全に止めてもいいと思われる。
そのためには、SELinuxの設定ファイルをいじる。

[root@centos7 ~]# nano /etc/sysconfig/selinux

SELINUX=disabledと入力しSELinuxを止める。

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing – SELinux security policy is enforced.
# permissive – SELinux prints warnings instead of enforcing.
# disabled – No SELinux policy is loaded.
#SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of three values:
# targeted – Targeted processes are protected,
# minimum – Modification of targeted policy. Only selected processes are pr$
# mls – Multi Level Security protection.
SELINUXTYPE=targeted

これでsambaの動作の下準備は終了。sambaを起動する。

[root@centos7 ~]# systemctl start smb
[root@centos7 ~]# systemctl start nmb

sambaは起動ステップが二つあるので両方とも起動する。
さらに、NAS起動時に自動で起動するよう設定。

[root@centos7 ~]# systemctl enable smb
[root@centos7 ~]# systemctl enable nmb

これで、LAN内から見えるようになっているはずなので、LAN内のWindowsマシンに移動して、ネットワークを見てみる。

Centos7 afterinst-1

インストールは無事終わったので、ネット環境もろもろのチェック。有線LANも自動で認識していて、DHCPでつながっているはずなので、チェック。ブラウザーファイアーフォックスでネットが見れるかチェック。

続いて、LAN環境のチェックついでに、WebサーバーApacheも動作させてみた。インストールされていなかったので、yumで入れてみた。

[root@centos7 ~]# yum install httpd
読み込んだプラグイン:fastestmirror, langpacks
------- 中略 --------
インストール:
httpd.x86_64 0:2.4.6-88.el7.centos

依存性関連をインストールしました:
httpd-tools.x86_64 0:2.4.6-88.el7.centos mailcap.noarch 0:2.1.41-2.el7

完了しました!

そして、httpdの起動。

[root@centos7 ~]# systemctl start httpd

うまく動作しているか、ブラウザーで確認。

OKのようだ。さらには、ファイアウォールに穴をあけて、LAN内のマシンからも見えるかどうか確認しておく

これがうまくゆけば、LAN環境は正常にインストールされている。つぎは、いよいよsambaの設定。

centos7 inst-4

インストール終了後、「ようこそ」画面が出たら、右上の「次へ」クリックして進む。「ようこそ」の次には「入力」の設定になる。NASの場合にはあまり関係なにので、確認したら「次へ」をクリック。

次は、位置情報の確認になる、NASには必要ないし、GPSセンサーも積んでないので、「オフ」にしておく。そして「次へ」をクリック。

次は、オンラインアカウントへの接続となる。NASからさらにクラウド環境へのバックアップを考えるならば、接続を設定する。今回は特に必要ないのでそのまま「次へ」をクリック。

これで、再起動後の初期設定は終了。この後、使い方の動画なども見ることができるので、必要であれば見ておくとよい。

続いて、インストール直後は、ディスプレイの解像度があっていないことも多い。今回もあっていなかったので、左上のプルダウンメニュー「アプリケーション」をクリックしてそのメニューの中から、「システムツール」->「設定」を選択してクリック。

「設定」の中から、「デバイス」を選択。

そして、「ディスプレイ」を選択して、「解像度」をクリックして使っているディスプレイに合わせる。

これで、ディスプレイの解像度も合わせられて、使いやすくなった。とはいえ、NASを直接操作することがどれほどあるかは、なかなかの問題。

HDDは4.9TBの容量になった。

centos7 inst-3

CentOS7のインストールが進んでいる間に、rootのパスワードとユーザーを作成しパスワードを設定する。ユーザーはあとあとsambaのユーザーにもするので、必ず1つは作っておかなくてはいけない。sambaの設定時にあとで作ってもいいのだが。
まずはrootのパスワードの設定から。僕は、UNIXやLinuxを昔から使っているので、rootと聞いてもそう驚かないが、Windowsから入ってきた人は違和感があるのだろう。最近はユーザーを作ってそのユーザーに管理権限を割り振るやり方もある。ぼくはそちらのほうが違和感があるので、昔ながらのrootを使っている。パスワードの設定が終わったら、「完了」をクリック。

次にユーザーを作る。ユーザー名とパスワードの設定を行う。終わったら「完了」をクリックする。その後は、OSのインストールが終わるまで、しばらく休憩だ。

インストールが終わると、右下に「再起動」のアイコンが出るので、それをクリック。

無事再起動して、CentOS7が起動すれば、まずライセンスの認証になる。ライセンスの認証をクリックして、ライセンスの認証を行う。

ライセンスの認証はGPLv2に沿っている旨表示される。GPLというのは、 昔から、フリーソフトウエアありかたを色々と提唱してきたリチャード・ストールマンにより作成されたフリーソフトウェアライセンスである。 ご存じない方は、一読されることをお勧めする。(https://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.ja.html

下の「ライセンス契約に同意します。」にチェックを入れて、「完了」をクリック。

次に、先ほど作成したユーザーのログイン画面が出る。これが出ればインストールは成功。

rootでログインするためには、「アカウントが見つかりませんか?」をクリックすると、ユーザー名を入力できるようになるので、rootと入力。

「次へ」をクリックして、パスワードを入力する。そして、「サインイン」をクリック。

「ようこそ」が表示されたら、無事OSのインストールに成功しrootでのサインインにも成功。ここでサインインできないとなると、先ほどのrootのパスワードの設定や、ユーザーの設定で失敗した可能性が高い。もう一度DVDからの起動からやり直してみるとよい。

centos7 inst-2

HDDの設定が終わったところで、次はネットワークの設定をしよう。左下の「ネットワークとホスト名」をクリック。

すると、ネットワークとホスト名の設定が出てくるので、ネットワークが「オフ」だったら「オン」にする。一応DHCPが効いていてIPアドレスが割り振られているはずなので、それも確認しておく。サーバなので、固定IPで運用する予定だが、とりあえずは自動で振られたIPアドレスで。あとで固定IPにする予定。ホスト名もわかりやすいものにしておくとよい。

設定が終わったら「完了」をクリック。次は、「ソフトウエアの選択」をクリック。

そうすると、ソフトウエアの選択が表示されるので、まず、ベース環境は「サーバー(GUI使用)」をクリック、そして「選択した環境のアドオン」では、「ファイルとストレージサーバー」・「開発ツール」・「セキュリティツール」・「システム管理ツール」などをクリック。ここで設定しなくても、あとでyumで入れたりもできるので、無理にする必要もないのだが...。

設定が終わったら、左上の「完了」をクリック。インストールの概要にもどるが、依存性の確認のため、ソフトウエアの選択には黄色の三角が出ているはず。依存関係のチェックが終わるまでしばし待つ。結構数分かかることもあるので、じっくり待つこと。10分以上かかるのはなにかおかしいので、HDDの構成や、DVDの状況を確認する必要があるかも。

依存関係のチェックが終わると、右下に「インストール開始」アイコンがでるので、それをクリック。これで、インストールが開始されるので、インストールの終わるまで、しばし待つ。

その間ユーザー、パスワードの設定ができるので、それをやりながら待 つ。そこからは、また次回に。

Centos7 inst-1

CentOSのインストールの手順。HDDの設定まで。

まずは、ダウンロード。CentOSのHP(https://www.centos.org/)からisoファイルをダウン。

DVD用isoファイルを選択。

USBメモリーからもインストールできるが、PCによっては、インストール用HDDの認識に問題が発生することもあるので、DVD-Rに書いておくのがいいです。PCの起動設定を光学ドライブ(CDもしくはDVD)にしておいて、作成しておいたDVD-Rから起動させる。DVDから起動したら、「i」キーを押して「Enter」キーを押す。

すると、最初は言語の設定になる。ずっと下にスクロールして「日本語」を探して「続行」をクリック。

そうすると、インストールの概要が出る。黄色のビックリマークの三角形が出ているところを設定してゆく。まずは赤で「ディスクが選択されていません」と出ている。「インストール先」から。ここをクリックする。

そうすると、ディスクの選択になる。今回取り付けている4台のHDDが見えているので、これを順にクリックして選択してゆく。

そして、今回使っているのは色々と入っている中古のHDDなので、中身を消去したいので、「パーティションを自分で構成する」をクリックしておく。

そして、左上の「完了」をクリック。すると、詳しいHDDの構成の画面になる。不必要なパーティションなどを消す。

以前使っていたHDDの構成などが出るので、左下の「-」をクリックして、パーティションなどを消しておく。Windowsなどで使っているHDDでは「不明」の中にも出ていることもあるので、ここをクリックして、同じようにパーティションを消してゆく。まっさらなHDDの場合はこの作業は必要はない。 消し終わったら、 「ここをクリックして自動的に作成します」をクリック。自動設定された内容を確認して、「完了」をクリック。

「完了」をクリックすると、設定内容をHDDに書き込むと注意が出るので、「変更を許可する」をクリック。

HDDの構成は何度でもやり直しができる。気になったらパーティションを消して、やり直してみるとよい。

RSS
Follow by Email