9cubed
ブログ | Tailwind | Vite | Python | Node.js | Linux | PowerShell | その他 | 将棋ウォーズ | 歌の練習
CentOS7

Samba のインストール

公開日:2020-02-02
更新日:2020-07-21

1. 概要

Samba をインストールして、LinuxのディレクトリをWindowsから見れるようにします。

2. Samba のインストール

yum install samba
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload

確認
firewall-cmd --list-all

次回 VM 起動時に自動的に Samba が起動するようにします。
systemctl enable smb.service
systemctl enable nmb.service

Samba を起動します。
起動
systemctl start smb.service
systemctl start nmb.service

再起動
systemctl restart smb.service
systemctl restart nmb.service

停止
systemctl stop smb.service
systemctl stop nmb.service

状態確認
systemctl status smb.service
systemctl status nmb.service

3. Samba の設定

Samba ユーザの追加。既存の Linux ユーザの中から指定してください。
pdbedit -a test

Samba ユーザの確認
pdbedit -L

smb.conf の修正
vi /etc/samba/smb.conf
今回は Webアプリの開発で使うため、一番下に以下を追加しました。
[web]
comment = centos
path = /var/www/html
writable = yes
web が共有ディレクトリ名となります。

smb.conf の修正した場合は、smb と nmb を再起動してください。

Samba でアクセスできるように SELinux を設定します
setsebool -P samba_export_all_rw 1
通常のディレクトリは samba_share_t を設定すれば問題ありませんが、
今回は既に httpd_sys_rw_content_t を設定しているため、samba_share_t を設定すると、
ブラウザからアクセスできなくなります。
上記設定は、全てのディレクトリが Samba で共有できるようになるため、
通常のディレクトリの際は使わない方が良いかもしれません。

エクスプローラーで \\192.168.233.100 にアクセスします。
ネットワーク資格情報の入力画面が表示されます。
test ユーザの test と、パスワードを入力します。
「資格情報を記憶する」にチェックを付けます。
ここで記憶した情報は、コントロールパネルの資格情報マネージャーで削除可能です。

エクスプローラーにフォルダが表示されます。
ファイルを開くことはできますが、保存できません。

これは書き込み権限がないためです。
ディレクトリの所有者を test ユーザに変更して、書き込み可にすれば、書き込めるようになります。

但し、今回は apache の公開フォルダを Sambaで共有しているため、
所有者を test ユーザに変更すると、今度は apache からアクセスできなくなります。

そのため、ディレクトリのグループを apache のままにして、
apache グループに test ユーザを追加します。
そして、apache グループに書き込み権限を付与することにより、
apache ユーザと test ユーザでアクセスできるようにします。

apache グループに test ユーザの追加(ユーザの所属グループの設定)
usermod -aG apache test
test ユーザは test グループに所属しているため、
セカンダリーグループとして apache グループを追加します。

所属グループの確認
groups test

apache グループに書き込み権限を付与する
chmod 775 -R /var/www/html

4. 通常のディレクトリの共有


ユーザの追加。既存のユーザで接続する場合は不要。
useradd test_user

Sambaユーザの追加
pdbedit -a test_user

共有用ディレクトリの作成と所有者の変更
mkdir /home/test_user/share
chown test_user:test_user /home/test_user/share

smb.conf の修正
vi /etc/samba/smb.conf
[share_test]
path = /home/test_user/share
comment = share
writable = yes
ちなみに、[homes] により、ユーザの home ディレクトリを共有する場合は、smb.conf の修正は不要です。

Samba の再起動
systemctl restart smb.service
systemctl restart nmb.service

SELinuxの設定。Samba の共有を許可します。
chcon -R -t samba_share_t /home/test_user/share

コントロールパネルの資格情報マネージャーから \\192.168.233.100 を削除する。
エクスプローラーで \\192.168.233.100 にアクセスします。
test_user でログインします。
エラーが出ても、もう一度アクセスすると、ディレクトリ一覧が表示され、共有ディレクトリにアクセスできます。

設定を変えて最初から接続する際に、 ネットワーク資格情報の入力画面が表示されない場合は、 資格情報マネージャーから削除するだけでなく、Samba の再起動をしてください。

YouTube X

新着一覧

  • SCSS のインストールVite
  • Tailwind CSS のプロジェクトの作成Tailwind
  • TypeScriptのプロジェクトの作成Vite
  • Flask のインストールと動作確認Python
  • 簡易Webサーバーの作成Python
  • pipeline で文章の生成Python
  • pipeline で文章の要約Python
  • 音声から文字起こしPython
  • Node.js のインストールNode.js
  • .ps1(PowerShellスクリプト)を実行可能にするPowerShell

アーカイブ

  • 2025/12
  • 2025/11
  • 2025/10
  • 2025/09
  • 2025/08

以前のカテゴリー一覧

  • CakePHP3
  • CentOS7
  • HTML・CSS・JavaScript
  • Haskell
  • JavaScript
  • Kotlin
  • Laravel5
  • PHP
  • Python
  • Ruby
  • RubyOnRails5
  • TypeScript
  • Vue.js
  • Webサーバ講座
  • Webプログラミング講座
  • jQuery
  • linux
  • パソコン講座
  • ブログ
  • プログラミング講座
  • メモ帳作成講座
  • 数学

Copyright © 9cubed. All Rights Reserved.

プライバシーポリシー 利用規約
▲