Ubuntu-samba追加設定

Ubuntu機には、Ubuntuをインストールした2TBのHDDの他に、500GBのHDDがもう3台ついている。どれも古いものばかり。新しくても2014年、古いものは、2009年の製造。

CentOSでNASを作っていたときは、sambaの設定で各HDDを別々の共有領域にしていた。

今回は、こちらも面倒くさいので、/home/shareのsamba共有フォルダーに、各HDDをマウントして、sambaの最初の1つの共有のみでアクセスできるようにしてみた。

まずは、/home/shareのフォルダーの中に各HDD用のマウント用フォルダーを作成。分かりやすいように、HDDの型番の一部をフォルダー名にしておいた。

まず、/homeに共有用のフォルダーを作成。フォルダー名hdp725050の場合。
$ sudo mkdir /home/share/hdp725050

そこへ、HDDをマウント。マウントはGUIのディスクアプリから行った。

「ユーザーセッションのデフォルト」をオフにして、「システム起動時にマウントする」にチェックを入れる。「表示名」は分かりやすくするため、HDDの型番にしておいた。そして、「マウントポイント」に作った共有用フォルダーを指定する。

ただ、これだとフォルダーがユーザー専用になってしまうので、chownやchmodでsambaで共有可能なように設定する。HDD3個分を行った。

まず、/homeの共有用のフォルダーのオーナの変更。フォルダー名dt1050の場合。
$ sudo chown nobody:nogroup /home/share/dt1050

そして、アクセスの権限の設定。
$ sudo chomd 777 /home/share/dt1050

そして、sambaの再起動
$ sudo systemctl restart smbd

Windowsマシンに移動して、ネットワークにUbuntuマシンのIPを入れて、追加共有したフォルダーが見えれば動作OK。

10年物のHDDがどのくらいもつか分からないので、なんとも言えないが使える間はこれでやってみよう。一応UbuntuのNAS完成ということで。

Ubuntuマシンを再構築

Ubuntuマシンを再構築。

どうもHDDを入れ替えたり動作を確認したりしていたら、sambaの共有が不安定になったので、いっそうのことまたインストールしなおした。ついでにHDD起動としてみたが、起動もそれほど遅くないので、このままつかっていくことにした。せっかくのSSDは外してしまった。
インストール時にこの前までは、グラボのドライバも自動でダウンして入れるようにしていたら、今回インストーラが落ちる。なので、インストール時はそういった追加のドライバをいれないようにした。

「アップデートと他のソフトウエア」の所で、「グラフィクスとWifi・・・」のチェックを外した。

2TBのHDDをメインにしたので、これは2010年製造で48個ほど代替セクタがでているので、いつまでもつか???だけれども、今のところ調子はいい。

sambaの共有は、めんどうくさいのでパスワードなしのアクセス自由なモードにしてみた。
最初はファイアウォールが動作しているかチェック
$ sudo iptables -L
$ sudo ufw status
「状態: 非アクティブ」と出れば、動作しておらず外部からアクセス自由の状態。
そしてsambaのインストール

$ sudo apt install samba

インストール終了後、まず、/homeに共有用のフォルダーを作成。
$ sudo mkdir /home/share
アクセスモードを変更
$ sudo chmod 777 /home/share

次に、samba設定ファイルの修正(nano使用)
$ sudo nano /etc/samba/smb.conf

修正したのは以下の所

[global]
unix charset = UTF-8  <ー追加
dos charset = CP932  <ー追加
## Browsing/Identification ###
# Change this to the workgroup/NT-domain name your Samba server will part of
workgroup = XXX   <ーワークグループ名
# server string is the equivalent of the NT Description field
server string = %h server (Samba, Ubuntu)
netbios name = YYY   <ーネットバイオス名
#### Networking ####
# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
interfaces = 127.0.0.0/8 192.168.0.0/24   <ーネットワークの範囲に合わせる
# This option controls how unsuccessful authentication attempts are mapped
# to anonymous connections
map to guest = bad user    <ーここは#があったら削除

最後の行に追加で共有の設定を書く

[share]
path = /home/share
writable = yes
guest ok = yes
guest only = yes
force create mode = 777
force directory mode = 777

そして、sambaの起動
$ sudo systemctl restart smbd

Windowsマシンに移動して、ネットワークにUbuntuマシンのIPを入れて、フォルダーが見えれば動作OK。

インストール完了後、バックアップデータを書いたりしてテスト中。

今のところ順調に動作。SSD起動よりも若干遅いが、Linuxは軽いので、Windowsのように延々と待たされるほどではない。

 

デジタル時計ーその後

例のこの前からいじっている、VBで書いたデジタル時計。表示位置をマウスでドラッグして、自由に決められるようにした。

最初、マウスのどのイベントを使うかで、だいぶ悩むことに。
結局、フォームのロケーションチェンジイベントに書いたけれども、その他、位置を保存するファイルを作ったり、それを読んだりする部分を書いたので、結構なコードが増えた。
さらには、イベントの扱いでもトラブルが起こり、最初いくらマウスでドラッグしても、位置が変わらなかった。
結局これは、デザイン時のフォームの位置設定から、アプリ起動時にロケーションが変わるイベントが発生するためだと分かり、コードを修正したら治った。


どうも、プログラムは順に実行されるという古いプログラム常識の頭がイベントドリブンで考えるのがダメだということだなぁ。頭を柔軟にしなくては。
只今、毎日使ってみて、テスト動作させて様子をみているところ。

デジタル時計の改良

この前入れた、Vsual Studio、Visual Basicで以前作っていた、デジタル時計の修正をやってみた。以前の2017のプロジェクトをそのまま読み込めて、簡単に修正できた。

修正内容は、表示位置を左上から右上に変えた。

フォームのデザインはこんな感じ。

コードは単純、デスクトップの右端の位置を読み取って、それから表示位置を指定。

そのうち自由に表示位置を変えられるようにしてみよう。

Visual Studio 2019

なんだか、コードを書きたくなって、Visual Studio 2019を入れた。
とりあえずVisual Basicで書いてみることにした。今も変わらず懐かしい画面。
Visual Studio自体は、モバイル用はまだしも、なんとLinuxのアプリも書けるようだ。それにパイソン(Python)も書けるようだ。それもそのうちやってみるかな。

ダウンロードはここから
https://visualstudio.microsoft.com/ja/downloads/
無料のコミュニティ版が使える。

インストーラーをPCに保存

インストーラは適当な場所にコピーしておく。

インストーラを起動、「続行」をクリック。

本体のダウンとインストールが始まる。終わるまでしばらく待つ。

次に、インストールの選択画面となる。

.netデスクトップ環境を選択。そして、右下の「インストール」をクリック。

すると、.NET環境のインストールが始まる。

インストールが完了。スタートメニューにも登録されているはず。

ブレンドが起動するので、

マイクロソフトのIDでサインインする。

マイクロソフトのオフィスを使っているので、そのアカウントでサインイン。

準備中。しばらく待つ。

ブレンドが起動するので、これは一旦終了。

スタートメニューからVisual Studio2019を起動。

最初は、環境の設定が始まる。配色のテーマは以前の設定と同じ感じにした。

「開発設定」は「Visual Basic」を選択。

準備が始まるので、しばし待つ。

さあて、起動画面が出た。まずは簡単なものを作ってみる。「新しいプロジェクト作成」をクリック。

Visual Basicも色々な物が作れる。昔からよく使っていた、プロジェクトのテンプレートは「Windows フォームアプリケーション」を選択。そして「次へ」ボタンをクリック。

プロジェクト名や保存場所などの設定。今回は試しなので、初期設定のままで、「作成」ボタンをクリック。

いやあ、見慣れた開発環境(IDE)が出てきた。

ツールボックスはピン止めして、いつも表示するようにしておいた。

適当にボタンやテキストボックスを配置。

ボタン1に簡単なcodeを書いてみた。テキストボックスに”hello Visual Basic!!”と表示するもの。

試しに実行。実行はメニューの「開始」ボタンをクリック。

無事文字が表示された。

Ubuntuにsamba – 準備

Ubuntuマシンにsamba稼働の前準備に、この前Windows10 2004のマシンで交換した古~ぃHDDを取付けた。

2TBのHDDは、やはり48個の代替セクタが出ている。

しかし普通にNTFSでマウント出来て中のデータは読める。マウントの設定だけはやっておいた。まず、ギアアイコンにてオプションの設定。

メニューから、「マウントオプション」を選択。

一番上の「ユーザーセッションのデフォルト」をオフにしておく。また、「マウントポイント」を分かりやすい物にしておく。HDDの型番にしておいた。

「表示名」も分かりやすいものにしておく。こちらもHDDの型番にしておいた。

これでNTFSのまま、マウントされて中のファイルも見える。

$ ls /mnt/hds722020 -l
合計 9
drwxrwxrwx 1 root root          0 6月 18 16:07 ‘$RECYCLE.BIN’
drwxrwxrwx 1 root root          0 6月 19 08:29 CASPER
-rwxrwxrwx 1 root root     528 6月 19 08:28 MediaID.bin
drwxrwxrwx 1 root root          0 6月 19 07:55 ‘System Volume Information’
drwxrwxrwx 1 root root  4096 7月   2 19:19  crystalreportviewers12
drwxrwxrwx 1 root root  4096 8月 17 06:55 work2

しかし、sambaでの共有ができるかは不明。なにしろ、sambaでの共有の前準備でやるchown、chmodがうまくゆかない。これは当たり前。Linuxのファイル管理とは違うNTFSのままなのだから。sambaがうまく読み書きできるかが問題。

 

HDDと光学ドライブ入替

Windows10 2004を入れている、CPUがIntel Core i 3 540 の古~ぃPC、HDDの代替えセクタが480程出ており、心配にはなっていたが、なんとなく使っていた。

これは代替えセクタが結構出ていた2TBのHDDのスマート値の状況。

しかし、データだけは壊れるのはいやだなあと、交換することにした。丁度お盆のセールでクーポンが出ていて、シーゲートの4TBがクーポン適用で7千円ちょっとで買えた。

ちょっと不気味なシーゲートのHDDの箱

シーゲートの4TB HDD ST4000DM004
Seagate Guardian Barracudaシリーズ 3.5インチ内蔵HDD 4TB SATA 6.0Gb/s 5400rpm 256MB ST4000DM004 (送料無料)

さらには光学ドライブもDVDからBru-rayのドライブしようと、2Kまでのもののクーポン適用で5千円ちょっとのものにした。Bru-rayのドライブは4K対応のUltra HD Blu-rayドライブはまだ1~2万円するし、そもそもCPU、マザボの能力が4Kデータの転送に追いつかないし、さらにはディスプレイも2Kしかないので、猫に小判状態になりそうなので2KのASUSの安いものにした。

ASUSのBru-ray Drive 内蔵型BDドライブ(BDXL対応)(バンドルソフト無しモデル) BW-16D1HT
エイスース 内蔵型BDドライブ(BDXL対応)(バンドルソフト無しモデル) BW-16D1HT/ BLK/ G/ AS/

書き込みソフトPower2goとクラウドストレージがおまけで付いている。MDISCに対応もしている。ASUSも台湾のメーカーでお世話になっております。

交換して、今までついていたHDDは外した。ケースの中もすっきりした。

HDDが1個になったせいかなんだか心持早くなったみたい。

Windowsの起動ドライブはSSD(CRUCIAL CT480BX500SSD1 480GB)

 

外したHDDはそのうちUbuntuのマシンに入れSAMBAで共有をかけて壊れるまでつかってみるかなあ。

2TBの古いHDDは2010年製造。もう10年使っている。もっている方だ。

データを移すときは4TBの書き込みが2TBの読み込みスピードに追い付かない状況もでていた。やはりHDDの回転数の差がでたのか、それとも複数の古いHDDが足を引っ張っていたのか、マザボの古さがでたのかなにか原因があったのだろう。

Linux機(Ubuntu)ケース入替

NASとして使うためにsambaを入れる前準備。Linux機(Ubuntu)はスリムケースに入っているので、HDDをいくつか付けるのはちょっと無理。なので、以前NASを動かしていたミドルタワーケースに入れ替えることにした。
まずは取り外し。
ハードは、
CPU : Core 2 Duo E8500
マザボ:GIGABYTE GA-EP45UD3R
メモリ:4GB (2GB PC2-6400 DDR2 800 2枚)
SSD : SiliconPower SSD A55 128GB
グラボ:nVIDIA GeForce GT520 1GB

入れ替えは無事終了。SSDもこの前買っておいたアダプタでちゃんと固定しておいた。

HDDは試しにあった1TB1台と500GB2台をつけてみた。

ところが、1TBHDDはSMARTの代替えセクタが1696も出ていて、流石にこれはダメということで外した。

また、500GBの方も1台が最初は動いてるようだったが、Ubuntuを再起動したりしていると、起動時どうも問題が発生して起動しなかったりする。また、HDDの初期化などをしてみると異常に時間がかかったり、マウントしようとしてもこれも異常に時間がかかったりするので、これも使えないようだった。結局500GB1台だけでやってみることになった。2009年製のもっとも古いものが残った。sambaを仮設定して500GBの容量でNASとして運用してみよう。まあそのうち新品のHDDを調達しないと。今回使ったHDDもどれも10年位の古さで新しくても2012年製。新しいものの方がトラブルが出た。

起動時トラブルも出たので、もう一度Ubuntu 20.04を入れなおした。入れなおしてからは快調。webブラウジングや文書作成などもLibreOfficeでなら十分使える。完全MSフリー。YouTubeなどの動画も問題なく見れる。ただ、CPUやグラボが古いので、動画再生時はCPU負荷が50%~90%位になる。まあ仕方がない。