ドライブ追加の続きです。
今回はsambaでWindowsから見られるようにしてrsyncを設定するところまでやって終わりにします。
とりあえずsambaから見えるようにするためのディレクトリを作ります。
そしてwindowsからみた時にちゃんとファイルがあることを確認できるようにするために適当にファイルをおいときます。
windowsから見えるようにするのはマスタ側だけなのでaaaが見られればok。
webminから
一覧の下の Create a new file share. をクリックして追加します。
で Create をクリックすると設定完了。
がしかし、storage-00と違って
になっている。
これでは書き込めないので比較してみます。
新しく追加されたものをクリックして中に入ってみます。
が、storage-00との違いは無いっぽいです。
鍵のマークをクリックしてみます。
アクセスコントロールなのでココ感がすごい。
やはり違ってました。
となっていました。
Storage-00 は両方共YesになっていたのでYesに変更してみます。
save を押して戻る。
と、おなじになってます。
ではこれで完了のはずなのでWindowsから見てみます。
見えました。
中を見に行くと・・・
aaaが見えてます。素晴らしい。
そして編集してみると・・・
権限エラーです。
元のファイルをrootでtouchして作ったからか?と思って空のファイルを作ってみようとしてもエラー。
もう一度sambaの設定へ戻って、鍵のマークの隣の File Permissions を比較してみます。
この設定名も非常にあやしい。
やはり違いました。
となってました。
storage-00 は root となってたのです。
storage-00 の方はファイルの操作は全部rootで行われていたんですね。
以前の投稿を見なおすとわかるかもしれないけど面倒なので見直してない。
メモの意味が無い気がしないでも無いですが・・・。
で、rootといれて保存、再度windowsからやってみますが変わらず・・・。
sambaのサービスを再起動してみます。
できました。
ファイルも追加できたし、aaaの上書きもできました。
つづいてファイルミラーリングの設定。
これは自分で作ったものなので簡単。
一行追加するだけです。
01のmain/dataから01のmirrorへ差分コピーするだけ。
では実行してみます。
成功すればmirror/dataの中のbbbがなくなってaaaと新しいテキスト ドキュメント.txtになっているはず。
ログを見たら
こうなっていて、ディレクトリを見ると
となってました。
成功です。
これでドライブ追加は完了です。
今回はsambaでWindowsから見られるようにしてrsyncを設定するところまでやって終わりにします。
とりあえずsambaから見えるようにするためのディレクトリを作ります。
# mkdir /var/storage/01/main/data
# mkdir /var/storage/01/mirror/data
そしてwindowsからみた時にちゃんとファイルがあることを確認できるようにするために適当にファイルをおいときます。
# touch /var/storage/01/main/data/aaa
# ls -la /var/storage/01/main/data/
合計 8
drwxr-xr-x 2 root root 4096 7月 15 05:42 .
drwxr-xr-x 4 root root 4096 7月 15 05:40 ..
-rw-r--r-- 1 root root 0 7月 15 05:42 aaa
# touch /var/storage/01/mirror/data/bbb
# ls -la /var/storage/01/mirror/data/
合計 8
drwxr-xr-x 2 root root 4096 7月 15 05:42 .
drwxr-xr-x 4 root root 4096 7月 15 05:40 ..
-rw-r--r-- 1 root root 0 7月 15 05:42 bbb
windowsから見えるようにするのはマスタ側だけなのでaaaが見られればok。
webminから
servers > Samba Windows File Sharing
samba設定画面 |
一覧の下の Create a new file share. をクリックして追加します。
samba 追加内容入力 |
- Share name : storage-01
- Directory to share : /var/storage/01/main/data
- Automatically create directory : Yes
- Create with owner : root
- Create with permissions : 755
- Create with group : root
- Available? : Yes
- Browseable? : Yes
- Share Comment : (blank)
で Create をクリックすると設定完了。
samba に追加完了 |
がしかし、storage-00と違って
Read only to all known users
になっている。
これでは書き込めないので比較してみます。
新しく追加されたものをクリックして中に入ってみます。
が、storage-00との違いは無いっぽいです。
storage-01 の設定内容 |
鍵のマークをクリックしてみます。
アクセスコントロールなのでココ感がすごい。
samba の Security and Access Control の設定 |
やはり違ってました。
- Writable? : No
- Revalidate users? : No
となっていました。
Storage-00 は両方共YesになっていたのでYesに変更してみます。
save を押して戻る。
と、おなじになってます。
samba 一覧で Security が同じになっていることを確認 |
ではこれで完了のはずなのでWindowsから見てみます。
Windows から samba を見てみた状態 |
見えました。
中を見に行くと・・・
追加したstorage-01の中身 |
aaaが見えてます。素晴らしい。
そして編集してみると・・・
samba 上のファイルを上書きしてみようとしたら権限エラー |
権限エラーです。
元のファイルをrootでtouchして作ったからか?と思って空のファイルを作ってみようとしてもエラー。
samba 上にファイルを追加しようとして権限エラー |
もう一度sambaの設定へ戻って、鍵のマークの隣の File Permissions を比較してみます。
この設定名も非常にあやしい。
File Permissions で Force Unix user が空にになっている |
やはり違いました。
- Force Unix user : (blank)
となってました。
storage-00 は root となってたのです。
storage-00 の方はファイルの操作は全部rootで行われていたんですね。
以前の投稿を見なおすとわかるかもしれないけど面倒なので見直してない。
メモの意味が無い気がしないでも無いですが・・・。
で、rootといれて保存、再度windowsからやってみますが変わらず・・・。
sambaのサービスを再起動してみます。
# service smb restart
SMB サービスを停止中: [ OK ]
NMB サービスを停止中: [ OK ]
SMB サービスを起動中: [ OK ]
NMB サービスを起動中: [ OK ]
できました。
ファイルも追加できたし、aaaの上書きもできました。
windows からファイルの追加 |
つづいてファイルミラーリングの設定。
これは自分で作ったものなので簡単。
一行追加するだけです。
#!/bin/bash
# log directory
log_dir="/var/log/sync_storage"
if [ ! -d $log_dir ]
then
mkdir $log_dir
fi
# log file path
log_file=$log_dir"/"`date +%Y%m%d%H%M`".log"
# start
echo "### Start sync storage ##########" >> $log_file
date >> $log_file
# check dupe
running=`pgrep -fo $0`
if [ $$ != $running ]
then
echo "### Already running : $running ###" >> $log_file
exit 1
fi
# exec rsync
rsync -av --delete /var/storage/00/main/data /var/storage/00/mirror >> $log_file
rsync -av --delete /var/storage/00/main/svn /var/storage/00/mirror >> $log_file
rsync -av --delete /var/storage/01/main/data /var/storage/01/mirror >> $log_file
# end
echo "### End sync storage ############" >> $log_file
date >> $log_file
exit 0
01のmain/dataから01のmirrorへ差分コピーするだけ。
では実行してみます。
成功すればmirror/dataの中のbbbがなくなってaaaと新しいテキスト ドキュメント.txtになっているはず。
ログを見たら
sent 3442 bytes received 20 bytes 6924.00 bytes/sec
total size is 3909600 speedup is 1129.29
building file list ... done
deleting data/bbb
data/
data/aaa
data/新しいテキスト ドキュメント.txt
こうなっていて、ディレクトリを見ると
# ls /var/storage/01/mirror/data/
aaa 新しいテキスト ドキュメント.txt
となってました。
成功です。
これでドライブ追加は完了です。
コメント
コメントを投稿