Transferring permissions

Is there a way to 'transfer' file/folder permissions from a Novell server to Windows Server 208R2?
allornuthinAsked:
Who is Participating?
 
Seaton007Connect With a Mentor Commented:
Here you go: Netware Migration
(File Migration Utility (FMU). Migrates NetWare files to Windows Server 2008 R2 while preserving their access control permissions.)

Also, take a look at these:
Migrating from Novell NetWare to Windows Server 2008 R2
Migration Options (See the Recommended File Migration Strategy section)
0
 
kyodaiCommented:
If the Novell Server offers a CIFS compatible share (Should be if you ask like this!) then you can copy the content (folders and files) with a tool like "Robocopy" to preserve the permissions.
0
 
deroodeConnect With a Mentor Systems AdministratorCommented:
If you only want to transfer filesystem permissions you mean that groups and users are already in place?
I once created an AutoITscript for doing just that; It reads a trustee.txt file (created with trustee.nlm) and converts it to a batch file filled with icacls commands. It isn't very polished (and it won't be polished since it was a one-time trick), but does the job. The advantage is that in the resulting batch file you can do some search-and-replacing etc.

Known bugs: Hard coded paths; only RF and RWCEMF conversions

Trustee.nlm is found here: Trustee.nlm

Sample trustee.txt file (part):

TRUSTEE.NLM v1.10
"TRUSTEE","vol2:\ABD\AB","LONG","STAF-ABD-AB-SHRW.ABD.STAF.EUR","RWCEMF"
"TRUSTEE","vol2:\ABD\BVDP","LONG","STAF-ABD-BVDP-SHRW.ABD.STAF.EUR","RWCEMF"
"TRUSTEE","vol2:\ABD\BVDP","LONG","STAF-ABD-BVDP-SHRW.ABD.STAF.EUR","RWCEMF"
"TRUSTEE","vol2:\ABD\BVDP","LONG","STAF-ABD-BVDP-SHRW.ABD.AZ.EUR","RWCEMF"
"TRUSTEE","vol2:\ABD\BZ","LONG","STAF-ABD-BZ-SHRW.ABD.STAF.EUR","RWCEMF"

Sample Result file:

icacls "f:\backup\ABD\AB" /grant "STAF-ABD-AB-SHRW":(OI)(CI)(RX,M) /C
icacls "f:\backup\ABD\BVDP" /grant "STAF-ABD-BVDP-SHRW":(OI)(CI)(RX,M) /C
icacls "f:\backup\ABD\BVDP" /grant "STAF-ABD-BVDP-SHRW":(OI)(CI)(RX,M) /C
icacls "f:\backup\ABD\BVDP" /grant "STAF-ABD-BVDP-SHRW":(OI)(CI)(RX,M) /C
icacls "f:\backup\ABD\BZ" /grant "STAF-ABD-BZ-SHRW":(OI)(CI)(RX,M) /C

AutoITscript:
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=G:\Uitwissel 2e-lijn\ICONS\ssc-ict.ico
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****


#include <Array.au3>

$trusteefilename = FileOpenDialog("select trustees file", "S:\", "any (*.txt)", 1)
$trusteefile = FileOpen($trusteefilename, 0)

Dim $group, $path, $parts

; Check if file opened for reading OK
If $trusteefile = -1 Then
    MsgBox(0, "Error", "Unable to open groupfile.")
    Exit
EndIf

$fileout = FileOpen (EnvGet("TEMP")&"\adrights.cmd" ,2)

; Check if file opened for writing OK
If $fileout = -1 Then
    MsgBox(0, "Error", "Unable to open file.")
    Exit
EndIf


; Read in lines of text until the EOF is reached
	
Do
	$line = FileReadLine($trusteefile)
	$eof = @error
	$parts=StringSplit($line,",")
	; $parts will contain the parts of the line
		; $parts[0] is the number of parts
		; $parts[1] is "trustee", 
		; $parts[2] is the path ("vol2:\ABD\AB")
		; $parts[3] is "LONG"
		; $parts[4] is group ("STAF-ABD-AB-SHRW.ABD.STAF.EUR"),
		; $parts[5] is rights ("RWCEMF")
	if $parts[1] = '"TRUSTEE"'Then
		;MsgBox(0,"readline",$line)
		;_ArrayDisplay ($parts,"")
		; replace user2 with \\esrv012
		$parts[2] = StringReplace($parts[2],'user2:',"f:\backup")
		; get groupname without trailing dots
		$firstdot=StringInStr($parts[4],".")
		if $firstdot=0 then 
			$firstdot=Stringlen($line)
		EndIf
		$parts[4]=StringMid($parts[4],1,$firstdot-1) & '"'
		if $parts[5] = '"RF"' then 
			$parts[5] = "RX"
		EndIf
		if $parts[5] = '"RWCEMF"' then 
			$parts[5] = "(RX,M)"
		EndIf
;		if stringlen($parts[5]) > 1 Then
;			MsgBox (0,"error","wrong permissions - "&$parts[5])
;		EndIf
		;_ArrayDisplay ($parts,"")
		FileWriteLine ($fileout, 'icacls '& $parts[2] & ' /grant ' & $parts[4] & ':(OI)(CI)'&$parts[5] &' /C')
	EndIf
until $eof = -1



FileClose($trusteefile)

FileClose($fileout)

Run("Notepad.exe " & EnvGet("TEMP")&"\adrights.cmd")

Open in new window

0
 
mburdickConnect With a Mentor Commented:
File and folder permissions on a Novell server are much more "intricate" than anything available in the Microsoft world. There is no direct way to map every permission combination available on a Novell volume to permission combinations on a Windows volume.

Novell has a software product suite (File Management Suite) that contains utilities that are capable of moving content between the two disparate file systems and mapping permissions. Storage Manager (one of the components) can perform Cross-Empire Data Migration (CEDM) by moving the content and setting all of the appropriate permissions. You are responsible, however, for validating the permissions that will be put in place after the data is moved.

Storage Manager also sets ownership and other attributes as part of the data move that you typically don't get with other homegrown or commercial utilities.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.