權限被拒絕從 samba 共用執行 python 腳本

權限被拒絕從 samba 共用執行 python 腳本

我正在嘗試從 Fedora 17 桌面在 Ubuntu 12.04 桌面上安裝 samba 共用。

我可以毫無問題地建立、編輯和刪除文件,但是當我嘗試在共用上執行 python 腳本時,我收到權限被拒絕的錯誤。

我嘗試以 root 身份安裝並使用 sudo 執行以下命令:

mount -t cifs //192.168.0.3/homeshare netbook -o user=james

mount -t cifs -o exec //192.168.0.3/homeshare netbook -o user=james

文件權限有一個 .在他們之後,但我不明白那意味著什麼

-rw-rw-r--. 1 james james 31804 Aug 14 18:20 cronlog.txt

-rwxrwxr-x. 1 james james   666 Aug 16 17:49 current.py

如何在 Fedora 17 中掛載此共享並運行腳本?

答案1

我不會使用 samba 連接兩台 Linux 機器。 Samba 旨在讓 linux/unix 機器與 windows 進行通信,反之亦然網路檔案系統對於兩台linux機器來說要好得多。您可以調整 samba 設定以允許執行腳本,但使用本機 Linux 方法確實會更好。在我的系統上,我使用 samba(對於我家庭網路上的 Windows)和 nfs(對於 linux 和 OSXes)導出相同的目錄。

要使用 nfs 匯出目錄,首先,在伺服器和用戶端上安裝autofs5nfs-common(autofs 用於自動掛載/卸載共用,如下所述)。在伺服器上,安裝nfs-kernel-server.

然後(所有這些命令都應以 root 身分運行):

  1. 建立要匯出的目錄,例如 /nfs_shares:

    sudo mkdir /nfs_shares
    
  2. 設定導出規則。在伺服器上,編輯/etc/exports並新增以下行:

    /nfs_shares       192.168.0.XX(rw,sync,no_subtree_check)
    

    其中 192.168.0.XX 是客戶端(您的 Ubuntu 桌面)的 IP。

  3. 將要匯出的目錄安裝(綁定)到這個新位置。首先將此行加入到 /etc/fstab 中:

    /path/to/exported/homeshare /nfs_shares bind bind 0
    

    然後,安裝它:

    mount /nfs_shares
    
  4. 在客戶端上,建立將掛載共享的目錄(例如 /mnt/homeshare):

    mkdir /mnt/homeshare
    

    此時您應該能夠手動掛載共享。在客戶端:

    mount -t nfs 192.168.0.XX:/nfs_shares/ /mnt/homeshare
    
  5. 現在,讓我們實現自動化。在客戶端上,使用以下幾行建立名為 /etc/auto.master 的檔案(將 SERVERNAME 變更為您想要的名稱):

    +auto.master
    /mnt/homeshare  /etc/auto.SERVERNAME   --timeout 60 --ghost
    
  6. 在用戶端上,使用下列行建立名為/etc/auto.SERVERNAME 的檔案(將SERVERNAME 變更為您在步驟4 中使用的任何名稱)(您可以使用伺服器的網路名稱或IP(如果是靜態的),將XX 變更為您伺服器的IP ):

    homeshare  -rw,soft,intr,bg,rsize=8192,wsize=8192 192.168.XX.XX:/nfs_shares/homeshare
    
  7. 運行!在伺服器上運行,service nfs-kernel-server restart在客戶端上運行service nfs-common restart; service autofs restart

因此,這使得共用自動安裝。如果它持續一分鐘,當您嘗試存取它時,它將被卸載並重新安裝(例如ls /mnt/homeshare)。確保按照您需要的方式設定權限(chmod) 用於您使用的目錄。

答案2

如果您不太關心性能和一些怪癖,也可以選擇使用SSHFS.

使用 Nautilus,一切都變得非常簡單。前往FileConnect to Server...,選擇SSH類型,填寫詳細資料即可。該共用將安裝在 下/run/user/james/gvfs/。要卸載它,請轉到ComputerNautilus,右鍵單擊共享並選擇Unmount

相關內容