UbuntuにSambaをインストールしてNAS化する - 白猫のメモ帳
前回の続きです。
Sambaの設定をしたのでWindowsからUbuntuのフォルダが見られるようになったのですが、Windows側のネットワークのところに対象のサーバが出てきません。
IPアドレスやホスト名を入れてのアクセスはできているのに不思議です。
参考にさせていただきました。
pcvogel.sarakura.net
qiita.com
wsddをインストール
色々調べていたらWindows側でSMB1.0を有効にするといいよみたいなことも書いてあったのですが、わざわざ無効になっている古い機能を有効にするのも何かなと思ったのでWeb Service Discoveryに対応させる方向で行きます。
wsddを使わせてもらいます。
wsdd implements a Web Service Discovery host daemon. This enables (Samba) hosts, like your local NAS device, to be found by Web Service Discovery Clients like Windows.
まずrootにsuした上で以下のコマンドを叩きます。
なんでsudoじゃないっていうとsudoはリダイレクトに効かないので権限がないよと言われてしまいます。
(まぁいろいろ技はあると思うのですが、rootになれるので面倒なことはせずにこれで)
$ sudo su - # echo deb https://pkg.ltec.ch/public/ $(lsb_release -cs) main > /etc/apt/sources.list.d/wsdd.list # exit
rootから戻って続き。
やってることはaptの取得先を追加、証明書を登録してからインストールという流れ。
最初からなんでもaptでとれるわけじゃないんですね。
$ sudo apt-key adv --fetch-keys https://pkg.ltec.ch/public/conf/ltec-ag.gpg.key
$ sudo apt update
$ sudo apt install wsdd
$ sudo systemctl enable wsdd
あとからよく見たら公式のGitHubにオフィシャルに入ったよって書いてありました。
Ubuntu 22.04 LTS以上はいきなりapt installでよかったみたい。あらら。
Starting from Ubuntu 22.04 LTS (Jammy Jellyfish), wsdd has landed in the official universe package repository. Thus, it is sufficient to install it via
ユニットファイルの編集
wsdd.serviceをsmbd.service(Samba)より後に起動したいのでおまじないを書きます。
$ sudo vi /lib/systemd/system/wsdd.service
こっちでもいいけどnanoのエディタで開いてしまったので上のコマンドで…。
$ sudo systemctl edit --full wsdd.service
AfterとWantsに追加。
[Unit] Description=Web Services Dynamic Discovery host daemon Documentation=man:wsdd(8) ; Start after the network has been configured After=network-online.target smbd.service Wants=network-online.target smbd.service [Service] Type=simple ; The service is put into an empty runtime directory chroot, ; i.e. the runtime directory which usually resides under /run EnvironmentFile=/etc/default/wsdd ExecStart=/usr/sbin/wsdd --shortlog --chroot=/run/wsdd $WSDD_PARAMS DynamicUser=yes User=wsdd Group=wsdd RuntimeDirectory=wsdd AmbientCapabilities=CAP_SYS_CHROOT [Install] WantedBy=multi-user.target
ファイアウォールは3702/udpと5357/tcpを開ける。
sudo ufw allow 3702/udp sudo ufw allow 5357/tcp
見えるようになりました。
やったね。
次回はDockerのインストールをします。