1. 程式人生 > >Linux基礎知識day-7

Linux基礎知識day-7

user 周期性 ava atime 修改 epo app 它的 mount

NFS服務

  1)NFS(Network File System)即網絡文件系統,它允許網絡中的計算機之間通過TCP/IP網絡共享資源。NFS在文件傳送或信息傳送過程中依賴於RPC協議。RPC,遠程過程調用 (Remote Procedure Call) 是能使客戶端執行其他系統中程序的一種機制。NFS本身是沒有提供信息傳輸的協議和功能的,但NFS卻能讓我們通過網絡進行資料的分享,這是因為NFS使用了一些其它的傳輸協議。而這些傳輸協議用到這個RPC功能的。

  2)NFS配置文件位置:/etc/exports。

  3)NFS配置文件格式:

    <共享目錄>  <客戶端1>(選項)  <客戶端2>(選項)

    共享目錄:NFS服務端共享給客戶端的目錄

    客戶端:網絡中能訪問這個共享的主機,多個客戶端使用空格分開

    選項:設置目錄的權限,用戶映射等。多個選項使用逗號隔開。

    常用選項包含:

      sync:以同步方式執行文件系統的輸入輸出動作。       async:以非同步的方式執行文件系統的輸入輸出動作。       ro:以只讀模式加載。       rw:以讀寫方式加載。
      defaults:使用默認的選項。默認選項為rw、suid、dev、exec、anto nouser與async。       atime:每次存取都更新inode的存取時間,默認設置,取消選項為noatime。
      noatime:每次存取時不更新inode的存取時間。

exports文件內容示例:

/share  *(rw,sync)
/share_1        192.168.16.185(rw,sync) 192.168.16.132(ro,sync)

  4)需要安裝nfs-utils rpcbind兩個包,客戶端服務端都需要安裝。

[[email protected] yum.repos.d]# yum install  rpcbind nfs-utils

  5)啟動服務。客戶端服務端都需要啟動服務。

[[email protected]
*/ yum.repos.d]# systemctl start rpcbind [[email protected] yum.repos.d]# systemctl start nfs

  6)客戶端使用showmount -e [服務端IP],查看共享。

[[email protected] yum.repos.d]# showmount -e 192.168.16.132
Export list for 192.168.16.132:
/share   *
/share_1 192.168.16.132,192.168.16.185
[[email protected]-2 yum.repos.d]#

  7)客戶端使用mount命令掛載共享到本地使用。

[[email protected] /]# mount 192.168.16.132:/share /nfsshare
[[email protected] /]# df
Filesystem            1K-blocks    Used Available Use% Mounted on
/dev/mapper/cl-root     6486016 4881956   1604060  76% /
devtmpfs                 225112       0    225112   0% /dev
tmpfs                    241928       0    241928   0% /dev/shm
tmpfs                    241928    5048    236880   3% /run
tmpfs                    241928       0    241928   0% /sys/fs/cgroup
/dev/sda1               1038336  160316    878020  16% /boot
tmpfs                     48388       0     48388   0% /run/user/0
192.168.16.132:/share   6486016 4761344   1724672  74% /nfsshare
[[email protected]-2 /]#

  8)如果開啟了防火墻需要放行rpc-bind,nfs,mountd。

[[email protected] /]# firewall-cmd --permanent --add-service=rpc-bind
success
[[email protected]-2 /]# firewall-cmd --permanent --add-service=nfs
success
[[email protected]-2 /]# firewall-cmd --permanent --add-service=mountd
success
[[email protected]-2 /]# firewall-cmd --reload
success
[[email protected]-2 /]#

Crond計劃任務

  1)crond是linux下用來周期性的執行某種任務或等待處理某些事件的一個守護進程,與windows下的計劃任務類似,當安裝完成操作系統後,默認會安裝此服務工具,並且會自動啟動crond進程,crond進程每分鐘會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。

  2)crond服務分為系統計劃任務和用戶計劃任務。

    系統級計劃任務:修改配置文件/etc/crontab 文件,來創建計劃任務。

    用戶級計劃任務:普通用戶直接使用crontab -e命令編輯自己的計劃任務。root管理員可以使用crontab -e -u [用戶名]來修改某一用戶的計劃任務。所有用戶定義的crontab文件都被保存在/var/spool/cron目錄中。

  3)crontab文件格式:用戶級和系統級的文件格式都是一樣的。 

  # Example of job definition:
  # .---------------- minute (0 - 59) //分鐘(0-59)
  # | .------------- hour (0 - 23)    //小時(0-23)
  # | | .---------- day of month (1 - 31)  //日期(1-31)
  # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... 月份(1-12)或者使用月份的英文簡寫
  # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat   //星期幾(0-6)或者使用星期的英文簡寫
  # | | | | |
  # * * * * * user-name command to be executed //username:誰來執行這個任務      command to be executed:要執行的命令

  4)crontab命令參數:

    -u:指定用戶

    -e:編輯某個用戶計劃任務

    -l:顯示某個用戶的計劃任務內容

    -r:刪除某個用戶的計劃任務

    -i:在刪除用戶文件時會提示確認

  5)示例:

實例1:每1分鐘執行一次command
命令:
* * * * * command
 
實例2:每小時的第3和第15分鐘執行
命令:
3,15 * * * * command
 
實例3:在上午8點到11點的第3和第15分鐘執行
命令:
3,15 8-11 * * * command
 
實例4:每隔兩天的上午8點到11點的第3和第15分鐘執行
命令:
3,15 8-11 */2 * * command
 
實例5:每個星期一的上午8點到11點的第3和第15分鐘執行
命令:
3,15 8-11 * * 1 command
 
實例6:每晚的21:30重啟smb 
命令:
30 21 * * * /etc/init.d/smb restart
 
實例7:每月1、10、22日的4 : 45重啟smb 
命令:
45 4 1,10,22 * * /etc/init.d/smb restart

實例8:每周六、周日的1 : 10重啟smb
命令:
10 1 * * 6,0 /etc/init.d/smb restart
 
實例9:每天18 : 00至23 : 00之間每隔30分鐘重啟smb 
命令:
0,30 18-23 * * * /etc/init.d/smb restart
 
實例10:每星期六的晚上11 : 00 pm重啟smb 
命令:
0 23 * * 6 /etc/init.d/smb restart
 
實例11:每一小時重啟smb 
命令:
* */1 * * * /etc/init.d/smb restart
 
實例12:晚上11點到早上7點之間,每隔一小時重啟smb 
命令:
* 23-7/1 * * * /etc/init.d/smb restart
 
實例13:每月的4號與每周一到周三的11點重啟smb 
命令:
0 11 4 * mon-wed /etc/init.d/smb restart
 
實例14:一月一號的4點重啟smb 
命令:
0 4 1 jan * /etc/init.d/smb restart
實例15:每小時執行/etc/cron.hourly目錄內的腳本
命令:
01   *   *   *   *     root run-parts /etc/cron.hourly

Linux基礎知識day-7