五個步驟理解smb和NFS

爲了解決Linux和Windows之間更好的配合我們可以用vsftpd和tftp來實現兩個系統互傳文件,但是畢竟之是傳文件有沒有什麼服務可以讓linux和windows之間直接共享文件直接對文件進行增刪改查呢?當然有它就是Samba!

一:實現linux和windows直接共享文件

1.安裝samba服務相關安裝包
[root@b database]# yum install -y samba cifs-utils
第一個samba是smb服務需要的安裝包,cifs是(Common interface file systems,普通互聯網文件系統)實現linux之間的文件共享服務。

2.建立登錄共享目的用戶,必須是本地用戶(爲了引起不必要的麻煩)
[root@b ~]# pdbedit -a -u Jack

3.創建共享目錄更改權限並寫入一個文件
[root@b ~]# mkdir /home/share
[root@b ~]# echo “At last fireman put out a big forest fire” > /home/share/a
[root@b ~]# chmod o+w /home/share/

4.修改配置文件,添加內容
[root@b ~]# vim /etc/samba/smb.conf
[database] # 共享目錄的名字
comment = share dir # 對共享目錄的一個說明
path = /home/share # 共享目錄存放的路徑
public = no # 不對所有人公開
writable = yes # 有寫入的權限

5.重啓服務,設置selinux和防火牆並進行測試
[root@b ~]# semanage fcontext -a -t samba_share_t /home/share
[root@b ~]# restorecon -Rv /home/share
[root@b ~]# setsebool -P samba_enable_home_dirs on
[root@b ~]# systemctl restart smb

win+R打開運行框輸入\192.168.10.11(這個是我smb服務端的)登錄即可看到共享目錄share,並且可以進行文件寫入等操作。

二:用samba實現Linux之間相互共享文件

上面做的是samba服務器,這個是samba客戶端
1.安裝相關組件和服務
[root@a ~]# yum install -y cifs-utils
2.建立掛載目錄
[root@a ~]# mkdir /share
3.把samba共享目錄添加到開機啓動自啓文件中
[root@a ~]# vim /etc/fstab
//192.168.10.11/share /share cifs username=Jack,password=a 0 0
[root@a ~]# mount -a

4.進行實驗
#服務端
[root@b home]# cd /home/share/
[root@b share]# ll
total 0
drwxr-xr-x. 2 root root 6 Mar 15 18:39 a

#客戶端
[root@a ~]# cd /share/
[root@a share]# ll
drwxr-xr-x. 2 root root 0 Mar 15 18:39 a

三:用NFS實現linux之間文件的共享

1.安裝相關服務(服務端和客戶端都需要安裝)
[root@b ~]# yum install -y nfs-untils
2.建立共享目錄寫入文件並給權限
[root@b ~]# mkdir /public/
[root@b ~]# echo “I am good girl” > /home/share/a
[root@b ~]# chmod -Rf 777 /public/

3.編輯nfs配置文件,添加內容。格式爲:“共享目錄的路徑 允許訪問的 NFS客戶端IP(共享權限參數)IP和參數之間沒有空格
[root@b ~]# vim /etc/exports
/public 192.168.10.*(rw,sync)

4.重啓nfs服務,開啓rpc服務,兩個都加入開機啓動項
[root@b ~]# systemctl restart rpcbind
[root@b ~]# systemctl enable rpcbind
[root@b ~]# systemctl restart nfs
[root@b ~]# systemctl renable nfs

5.建立掛載共享目錄的目錄加入開機自啓
[root@a ~]# mkdir /public
[root@a ~]# vim /etc/fstab
192.168.10.11:public /public nfs defaults 0 0
[root@a ~]# mount -a

6.客戶端進行測試
#服務端
[root@b ~]# cd /public/
[root@b public]# ll
total 0
drwxr-xr-x. 2 nfsnobody nfsnobody 6 Mar 15 18:16 a

#客戶端
[root@a ~]# cd /public/
[root@a public]# ll
total 0
drwxr-xr-x. 2 nfsnobody nfsnobody 6 Mar 15 18:16 a

四:利用autofs實現自動掛載

如果我們把太多的文件都加入到開機自啓,那麼會影響我們的系統速度,有沒有什麼辦法可以我們需要的時候自動掛載不需要的時候不掛載呢?
答:當然有,用autofs啊
1.安裝相關服務
[root@b ~]# yum install -y autofs
2.編輯配置文件(添加一行自動掛載的目錄,如果要掛到/mnt/centos上就在前面寫/mnt,後面寫的是自定義的子配置文件最好是以misc結尾)
[root@b ~]# vim /etc/auto.master
/mnt /etc/iso.misc

3.編輯子配置文件(最前面寫的是掛載目錄的最後面比如/mnt/centos寫centos。後面跟的是-fstype也就是我們要掛載的格式接着,跟對要掛載的說明ro只讀,nosuid,nodev。:/dev/cdrom是要掛載的路徑)
[root@b ~]# vim /etc/iso.misc
centos -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom

4.進行測試
[root@b ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/mapper/centos-root 17G 1.4G 16G 8% /
/dev/sda1 1014M 137M 878M 14% /boot
tmpfs 98M 0 98M 0% /run/user/0

首先是沒有掛載的,進入/mnt發現是沒有東西的,但是我們還是可以進入centos目錄
[root@b ~]# cd /mnt
[root@b mnt]# cd centos
[root@b iso]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 475M 0 475M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/mapper/centos-root 17G 1.4G 16G 8% /
/dev/sda1 1014M 137M 878M 14% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/sr0 4.4G 4.4G 0 100% /mnt/centos

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章