SUBINACL syntax error

Discussion in 'Windows Server' started by Jeff Vandervoort, Oct 18, 2006.

  1. This has to be embarassingly basic, but it has me stumped...

    I'm trying to use SUBINACL (v5.2.3790.1180, the latest from the MS downloads
    site) to search and replace ACEs on a WS2003SP1 server. The command I'm
    using follows (lines broken for easier reading:

    SUBINACL
    /TESTMODE
    /SUBDIRECTORIES
    D:\*.*
    /REPLACE="[domain1]\[group1]"="[domain2]\[group2]"
    /ACCOUNTMIGRATION="[domain1]\[group1]"="[domain2]\[group2]"
    /ERRORLOG="D:\SubInACLError.log"
    /OUTPUTLOG="D:\SubInACL.log"

    The command works fine if I omit both /ERRORLOG and /OUTPUTLOG. But if I add
    either switch, I get this output:

    WARNING : /errorlog=d:\subinaclerror.log : Invalid option : D:\*.*
    Use :
    SubInacl /help to get the usage information
    or
    SubInAcl /help syntax to understand SubInAcl syntax.
    Current object D:\*.* will not be processed


    Elapsed Time: 00 00:00:00
    Done: 0, Modified 0, Failed 0, Syntax errors 1
    Last Syntax Error:WARNING : /errorlog=d:\subinaclerror.log : Invalid option
    : D:
    \*.*

    Hunh?? D:\*.* suddenly becomes an invalid folder spec when I use /ERRORLOG
    or /OUTPUTLOG? Why??
     
    Jeff Vandervoort, Oct 18, 2006
    #1
    1. Advertisements

  2. Earlier versions of subinacl.exe did not have the /errorlog
    switch. Perhaps you're using the wrong version.
     
    Pegasus \(MVP\), Oct 18, 2006
    #2
    1. Advertisements

  3. See tip 8530 » Corrected version of SubInAcl.
    in the 'Tips & Tricks' at http://www.jsifaq.com

    Jerold Schulman
    Windows Server MVP
    JSI, Inc.
    http://www.jsiinc.com
    http://www.jsifaq.com
     
    Jerold Schulman, Oct 18, 2006
    #3
  4. Thanks for your replies.

    1. I'm using SUBINACL v5.2.3790.1180, the latest from the MS downloads site.

    2. The problem occurs when I use either /ERRORLOG *or* /OUTPUTLOG.

    3. The invalid option cited in the message I get ONLY when those options are
    used is the subdirectory spec, D:\*.*. D:\ exists on this system.

    Additional information not included in my original post: It doesn't matter
    what drive, filename or folder I specify for /ERRORLOG and /OUTPUTLOG; I get
    the same error. IOW, the problem is not that I'm trying to write the log to
    a folder that is being changed.

    --
    Jeff Vandervoort
    JRVsystems

     
    Jeff Vandervoort, Oct 18, 2006
    #4
  5. Just for fun I downloaded and tested the latest version myself.
    I had no problem running it. What is the syntax of your command?
    Are you aware that the order of parameters is important?


     
    Pegasus \(MVP\), Oct 18, 2006
    #5
  6. Are you aware that the order of parameters is important?

    Yes, that was the key. I didn't realize that /Options had to come before
    /Actions. But...I'm still struggling. In all the years I've been in this
    business I don't think I've ever had to ask for help with a friggin' command
    line!

    I want to use a playfile because I have several groups to change across the
    folders of several drives on 2 servers, but the commands that are working on
    the command line aren't working in the playfile.

    Here's the SUBINACL command line--

    SUBINACL /TESTMODE /OUTPUTLOG=MigrateACEsOutputLog.txt
    /ERRORLOG=MigrateACEsErrorLog.txt /PLAYFILE MigrateACEs.txt

    --and one representative line of the test playfile (any of the /Actions on
    any of the /Objects in the file, by themselves, cause the error)--

    +SUBDIREC D:\*.*
    /REPLACE="<OldDomain>\<OldGroup>"="<NewDomain>\<NewGroup>"

    --and finally, the contents of the error log after running the command--

    WARNING : Error parsing line +playfile migrateaces.txt
    Use :
    SubInacl /help? to get the usage information
    or
    SubInAcl /help syntax? to understand SubInAcl syntax.

    Near as I can tell by consulting online Help and the Resource Kit help file,
    what I'm doing should work...but it doesn't.

    I've also tried--

    SUBINACL /TESTMODE /OUTPUTLOG=MigrateACEs.txt
    /ERRORLOG=MigrateACEsErrorLog.txt /SUBDIREC D:\*.*
    /REPLACE="<OldDomain>\<OldGroup>"="<NewDomain>\<NewGroup>" /DISPLAY
    /NOVERBOSE

    --to have SubInACL generate a playfile from the command, but the playfile
    thus generated (a) handles each file separately (presumably lowering
    inheritance flags in the process?) using different commands than are used in
    the command line and (b) generates the file with the existing ACEs, not the
    ones I need to replace them with. I can fix the group names with search and
    replace...but is that how it's supposed to work?

    --
    Jeff Vandervoort
    JRVsystems
     
    Jeff Vandervoort, Oct 24, 2006
    #6
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.