アットウィキロゴ

Samba FAQ

初期設定など

Samba サーバーの設定 (Windows から Linux に接続する)

ワークグループ名の設定

/etc/samba/smb.conf にワークグループ名を設定する。

[global]
  # Windows側のワークグループ名と一致させます
  workgroup = WORKGROUP

Windows では全て大文字が普通なので合わせましょう。NetBIOSの仕様で、15文字以内の制限があります。
smb.conf の保存後、文法チェックしてサービスを再起動します。

$ testparm
$ sudo systemctl restart smbd nmbd

共有ユーザと接続パスワードの設定

smbpasswd コマンドを実行してユーザー名とパスワードを設定する。

$ sudo smbpasswd -a ユーザ名

管理者権限では pdbedit コマンドのほうが詳しい情報が出ます。

$ sudo pdbedit -a -u ユーザー名

Samba サーバーを起動

ディストロによってサービス名が違ったりするので適時変更。smb/smbd はファイル共有機能で、nmb/nmbd は NetBIOS の名前解決機能のサービスです。

  • RHEL / AlmaLinux / Rocky Linux 系の場合
    $ sudo systemctl start smb nmb
    
  • Ubuntu / Debian 系の場合
    $ sudo systemctl start smbd nmbd
    

これで、Windows 側のマイネットワークから共有したユーザのホームディレクトリに接続できる。(パスワードの入力が必要)
立ち上がったら、電源投入時に自動起動する設定もしておきましょう。

  • RHEL / AlmaLinux 系の場合
    $ sudo systemctl enable smb nmb
    
  • Ubuntu / Debian系の場合
    $ sudo systemctl enable smbd nmbd
    

Linux から Windows に接続する。

まずマウント用のツール(cifs-utils)をインストールします。cifs というのは大昔のプロトコルと同じ名前ですが、実際には SMB3.x など今どきのプロトコルでマウントします。

  • RHEL / AlmaLinux 系の場合
    $ sudo dnf install cifs-utils
    
  • Ubuntu / Debian 系の場合
    $ sudo apt install cifs-utils
    

マウント用コマンドの書式は以下のようになります。

$ sudo mount -t cifs //【WindowsのIPアドレス】/【共有フォルダ名】 【Linux側のマウント先】 -o username=【Windowsのユーザー名】,password=【Windowsのパスワード】

デフォルトではマウントしたファイルの所有者が root なので、一般ユーザーが書き込めません。自分のLinuxユーザー(例: uidが1000)で読み書きしたい場合は以下を追加指定します。

uid=1000,gid=1000,file_mode=0777,dir_mode=0777

Microsoftアカウント(メールアドレス)でログインする場合

ユーザー名にメールアドレスを指定します。

[email protected],password=xxx

Mac OS から Linux に接続する

メニューバーの[移動]>[サーバへ接続]で、表示させたダイアログに以下を入力し[接続]をクリック。

smb://IPアドレス(もしくはサーバ名)/共有ディレクトリ等

ユーザー種類で「登録ユーザー」を選択し、Linux 側の Samba に登録したユーザー名等を入力。それだけです。

Samba で日本語ファイル名が文字化けする。

現在の SMB プロトコルでは文字コードが UTF-8 になったので、共有相手が Windows の場合は、文字化けはほぼ起きなくなりました。環境が混在している場合は、おまじないとして mount コマンドのオプションに iocharset=utf8 を追加すると良いかもしれません。

共有相手が Mac の場合、Mac の UTF-8 は濁点と半濁点を別の文字コードから合成する仕様なので、文字化けが発生することがあります(いわゆる NFD 問題)。最近の Mac と Samba4 との組み合わせでは自動変換されますが、以前の文字化け対策の fruit モジュールが最近は文字化けを起こす場合があるので、いったん外してみることで解決するかもしれません。

# 古い設定の残り(Samba4では不要)
vfs objects = catia fruit streams_xattr

Mac と接続するとゴミファイルができる

Mac から Linux に接続すると、Apple 拡張機能によって、フォルダ内にドットファイル(.DS_Store や ._ファイル名)が生成されることがあります。/etc/samba/smb.conf に以下を追記して文字化けを防ぐことができます。

veto files = /._*/.DS_Store/
delete veto files = yes
最終更新:2026年07月08日 12:48