CentOS7.7にWindowsServer2016の隠しフォルダをマウントしてみた。

目的

CentOS7.7にWindowsServer2016の隠しフォルダをマウントしたい。

環境情報

Azure上に以下のOSで仮想サーバを計2台用意しました。 - Linux OS:CentOS7.7
- Windows OS:WindowsServer2016

インスタンス情報 - スポットインスタンス - 最小スペックのインスタンス - 2つのサーバ間のNSGはガバガバです。

検証

WindowsServer側作業

1. ログインし、日本語化します。

  • リモートデスクトップで、WindowsServerのグローバルIPにログンします。
  • スタートメニューからControl Panelを開きます。

f:id:Tk24:20200124160158j:plain

  • Clock, Language, and Regionをクリックします。

f:id:Tk24:20200124160223j:plain

  • Languageをクリックします。

f:id:Tk24:20200124160244j:plain

  • Add a languareをクリックします。

f:id:Tk24:20200124160258j:plain

  • 日本語を選択します。

f:id:Tk24:20200124160316j:plain

  • Languageの画面に日本語が追加されたら、選択し`Move upをクリックします。

f:id:Tk24:20200124160357j:plain

  • 日本語が最上段に来たら、右側のOptionsをクリックします。

f:id:Tk24:20200124160419j:plain

  • Download and install language packをクリックして、インスールが完了するのを待ちます。

  • インストールが完了すると、Installation complateされるのでcloseをクリックします。

  • Languageの画面に戻るため、`Clock, Language, and Regionに移動します。

  • Regionをクリックします。

  • Regionの設定画面が開くため、Locationタブをクリックしす。

  • Home location:Japanに変更する。

f:id:Tk24:20200124162722j:plain

  • Administrativeタブに移動し、Copy settingをクリックします。

f:id:Tk24:20200124162704j:plain

  • Welcom screen and system accountsNew user accountsにチェックを入れ、OKをクリックします。

f:id:Tk24:20200124162625j:plain

  • 再起動を促されるためRestart nowをクリックします。  

f:id:Tk24:20200124162606j:plain

日本語化完了です!

再起動後、表示される時間を日本時間に変更する場合
  • 画面右下の時刻を右クリックする。

  • 日付と時刻の調整をクリックします。

  • タイムゾーン(UTC+09:00)大阪、札幌、東京を選択します。

f:id:Tk24:20200124163112j:plain

2. フォルダ共有用のユーザーの作成

adminユーザーでも共有できますが、できる限り最小の権限で共有したほうが安全です。
目的に沿ったユーザで共有したいので、今回はファイル共有用の一般ユーザーを作成します。

  • スタートメニューからコントロールパネルを開きます。

  • ユーザーアカウントをクリックします。

  • アカウントの種類の変更をクリックします。

f:id:Tk24:20200124191151j:plain

  • ユーザーアカウントの追加をクリックします。

f:id:Tk24:20200124191309j:plain

  • 各項目に入力し、次へをクリックします。

f:id:Tk24:20200124191636j:plain

  • 設定内容が、問題がなければ完了をクリックします。

f:id:Tk24:20200124191703j:plain

ユーザーの作成完了です!

3. 共有する隠しフォルダを作成する

  • Cドライブ直下にbackupというフォルダを作成します。
  • 作成したフォルダを右クリックし、プロパティをクリックします。

f:id:Tk24:20200124163629j:plain

  • 共有タブをクリックし、詳細な共有をクリックします。

f:id:Tk24:20200124163745j:plain

  • このフォルダーを共有するにチェックを入れ、共有名の最後に$マークを入力します。
    $を末尾に入力することにより隠しファイル扱いになります。

f:id:Tk24:20200124164258j:plain

  • 最下部のOKをクリックします。
  • 共有をクリックします。

f:id:Tk24:20200124170401j:plain

  • 作成したユーザーを入力し、追加をクリックします。
  • ユーザーが追加されたことを確認し、共有をクリックする。

f:id:Tk24:20200124165940j:plain

  • 終了をクリックする。
  • ネットワーク パスを控えておきます。 ※CentOSから、マウントする際に使います。

f:id:Tk24:20200124170401j:plain

  • 閉じるをクリックする。
  • 確認用にbackupフォルダ内にtest.txtを作っておきます。

これで、windows側の設定は完了です!

CentOS側作業

  • teratermなどを使って、CentOSサーバーのグローバルIPにログンします。
  • rootユーザーになります。
$ sudo su -
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

[sudo] password for ユーザー名: 
#
  • 必要なパッケージをインストールします。
    linux側からマウントするだけであれば、sambaはいらないかもしれませんが念のため。
# yum install -y samba-client cifs-utils

# rpm -qa | grep samba
samba-client-4.9.1-10.el7_7.x86_64
samba-common-4.9.1-10.el7_7.noarch
samba-client-libs-4.9.1-10.el7_7.x86_64
samba-common-libs-4.9.1-10.el7_7.x86_64

# rpm -qa | grep cifs
cifs-utils-6.2-10.el7.x86_64
# mkdir ./test /mnt/backup

# ls -l ./ /mnt
./:
drwxr-xr-x. 2 root root    6 Jan 24 06:06 test
/mnt:
drwxr-xr-x. 2 root root    6 Jan 24 06:21 backup
  • 資格情報をもたせたファイルを作成します。
# cd test

# vim mnt-info

以下の情報を記載し、保存します。
username=Windowsサーバで作成したユーザー名
password=パスワード
  • マウント前の状態を確認します。
# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        1.7G     0  1.7G   0% /dev
tmpfs           1.7G     0  1.7G   0% /dev/shm
tmpfs           1.7G  9.0M  1.7G   1% /run
tmpfs           1.7G     0  1.7G   0% /sys/fs/cgroup
/dev/sda2        30G  1.5G   29G   5% /
/dev/sda1       497M   64M  433M  13% /boot
/dev/sdb1       6.8G   32M  6.4G   1% /mnt/resource
tmpfs           343M     0  343M   0% /run/user/1000
  • マウントします。
mount.cifs //ホスト名/backup/ /mnt/backup -o credentials=/root/test/mnt-info,file_mode=0755,dir_mode=0755
  • マウントの状態を確認します。
# df -h
Filesystem        Size  Used Avail Use% Mounted on
devtmpfs          1.7G     0  1.7G   0% /dev
tmpfs             1.7G     0  1.7G   0% /dev/shm
tmpfs             1.7G  9.0M  1.7G   1% /run
tmpfs             1.7G     0  1.7G   0% /sys/fs/cgroup
/dev/sda2          30G  1.5G   29G   5% /
/dev/sda1         497M   64M  433M  13% /boot
/dev/sdb1         6.8G   32M  6.4G   1% /mnt/resource
tmpfs             343M     0  343M   0% /run/user/1000
//ホスト名/backup$  127G   12G  115G  10% /mnt/backup
  • WindowsServerに作成したファイルを参照します。
# cd /mnt/backup/
# ls -l
-rwxr-xr-x. 1 root root 4 Jan 24 05:49 test.txt

見れました!マウント完了です!!

感想

今まで、Windowsサーバーはほとんど触ってこなかったのですが、意外と簡単にできましたね!

Windowsサーバーを最初に立ち上げたときが、重すぎて一番困惑しました。。
しばらく放っておいたら安定ましたが。。

Azureは同じ仮想ネットワーク(VNet)であれば、何もしなくても名前解決できるんですね!
便利!