顯示具有 FileServer 標籤的文章。 顯示所有文章
顯示具有 FileServer 標籤的文章。 顯示所有文章

2013年8月5日 星期一

排除 2008 R2 file server 出現無權限刪除目錄的問題

記錄一下: 
最近Windows 2008R2 預到一個問題,不知怎麼搞的,有一個目錄都刪不掉,即使是本機管理員(local administrator )也沒權限刪,甚為困擾。

查了幾篇提到,透過 icacls 來設定owner都仍是 access is denied. 

最後
1. 關閉UAC,取消透過TrustedInstaller 帳號,來執行任務的方式。
2. 關閉UAC必需重啟,Folder 權限就恢復可設定。
參考文件: 






2012年10月2日 星期二

Sharepoint 搜尋 File Server 個人碟的Security設定

一般公司都會配給員工個人碟,讓員工能夠將公司資料或重要資料放在網路上,一則有定時備份的好處,不怕因個人NB Hardware 問題而毀損,一則能讓Citrix/Remote Server 等一些特定程式使用共用的Data 區域。
但是 File Server 的Share Folder 該如何正確設定,才能讓 個人資料不會被其他人搜詢出來呢?

環境假設:
Server Name: FileServer1
分享目錄:ShareFolder
員工1:Staff1 的個人碟:\\FileServer1\ShareFolder\Staff1
員工2:Staff2 的個人碟:\\FileServer1\ShareFolder\Staff2

首先,分享目錄(\\FileServer\ShareFolder)有兩個設定權限的地方:Sharing 及Security
Sharing 的成員設定 Domain users 具有讀/寫(Read/Write),如果 Security 成員也設定Domain User,雖權限只給Folder 瀏覽權限,但子目錄 Staff1 將繼承Domain User 具Folder 瀏覽權限。

於sharepoint 搜尋的結果,將造成所有人都可搜詢出Staff1 的資料,雖點選路徑後,無法進入,但部份資料已於搜詢上顯示出來,實為不當。

經測試後,只需將分享目錄的Security 上的Domain User刪除。於子目錄 Staff1 的Security上保留Staff1的Modify 權限,不能讓使用者瀏覽(\\FilerServer1\ShareFolder),但能讓使用者直接開啟目錄(\\FileServer1\ShareFolder\Staff1 )。

這樣的設定權限,讓Sharepoint 顯示搜尋結果時,只會顯示自己有權限的目錄資料。

參考文章

2012年1月19日 星期四

每天自動刪除過期檔案(Delete Files over than n days)

File Server 雖是儲存空間,但也不必要永久存放,如果已經進磁帶備份後,很多參考用的大檔案是可以刪除的。

研究了一下 VBScript 自動刪除的機制,將下面的.vbs File 加到Server 的Schedule Tasks ,再加上絕對路徑當參數,就可以自動刪除了。

------------------ 以下作成一個 delFolderFilesOverThan60days.vbs --------


' 指定所有變數必須事先宣告才能使用
Option Explicit
 
' 宣告變數
Dim FSO, agoDays, modifiedDate, delFolder  ,myArgs

'If WScript.arguments.length <> 0 Then
' WScript.quit  
'End If

' 建立檔案系統物件(File System Object)
Set FSO = CreateObject("Scripting.FileSystemObject")

' 請將下面的變數值換成你要的
' 指定 n 天前的檔案,現在是 3 天前
agoDays = 60
' 取得檔案的修改日期
modifiedDate = DateAdd("d", -agoDays, Date)  

Set myArgs = WScript.arguments

' 欲刪除檔案所在之目錄    
delFolder = myArgs(0)

' 呼叫刪除檔案的子程序
DelFilesInFolder FSO.GetFolder(delFolder)    

' 刪除檔案的子程序
Sub DelFilesInFolder(folder)
  ' 宣告變數
  Dim file, subFolder
 
  ' 找出目前所在目錄內所有的檔案
  For Each file In folder.Files
      ' 檢查檔案日期是否符合條件,若符合,就刪除
      If ((file.DateLastModified <= modifiedDate)) Then
          file.delete
      End If
  Next
 
  ' 如果遇到子目錄,也要進去檢查並刪除
  For Each subFolder in folder.SubFolders
      DelFilesInFolder subFolder
Next
End Sub  
 
'WScript.Echo("作業執行完畢:" & Date & " " & Time)

----------------------------------

程式的參考出處:

http://ithelp.ithome.com.tw/question/10009001
http://ithelp.ithome.com.tw/question/10058183