![]() |
CACLS Владелец папки , и как с этим бороться Win XP
Всем привет , ) и снова win XP
Суть такова, наткнулся на одну интересную проблему при изменении прав для папок Скрытый текст
echo y| CACLS c:\Progra~1\cwRsync /T /C /G "Все":F echo ok echo y| CACLS c:\Progra~1\cwRsync /E /T /C /G "administrator":F echo ok echo y| CACLS c:\Progra~1\cwRsync /E /T /C /G "Пользователи":F echo ok echo y| CACLS m:\music /T /C /G "Все":F echo ok echo y| CACLS m:\music /E /T /C /G "administrator":F echo ok echo y| CACLS m:\music /E /T /C /G "Пользователи":F echo ok attrib m:\music -R /D /S attrib m:\music\*.* -R /S /D Допустим структура папки music такова - music -папка1 -папка2 -....файлы Проблема в том , что при удаленном выполнении с под админа этой команды, если вдруг владельцем подпапки "папка1" -является другой пользователь тот я получаю access denied Вроде логично и понятно, но как мне без сторонних приблуд , взять и перед добавлением групп, сделать пользователя "administrator" владельцем этой папки её под папок и всего содержимого Вообще , очень интересная тема с правами, постоянно сталкиваюсь с ней..и кусаю губы...потому-что гребанное XP , в котором нет нормальных утилит для всего этого,,, Прошу уважаемые помочь с данным вопросом и на будущее порекомендовать из своего личного опыта, как вы решаете данные проблемы с правами для папок...)) p/s еще если есть у кого нить инфа как отключить брандмауер и выключить его службу на winXP если есть доступ к компам, любым способом , psexec не катит он его блокирует сразу.. тыкните носом, несколько тем прочитал пробовал через Netsh - не получилось.... |
Код:
icacls /setowner |
Elven, icacls в winXP не работает
|
|
Iska, Я видел примеры с использованием этой тулзы, но допустим у меня 400 тазиков ...и ни на одном её нет + тазики не в домене
тогда получается бедаа.... Прошу прошения не знаете решения насчет второго вопроса про отключение служб на удаленном компе с вводом логина и пароля по списку например command \\192.168.1.1 :login password /// sc ? , или каким то другим способом думал через удаленный реестр, но как организовать на большом кол-ве компов |
magarjoba, с таким количеством стоит задуматься о доменной среде.
|
Iska,
Прошу прошения за оффтом. но в жтом и смысл, я заведу все в домен , но для подготовки этого мне надо 1) по всему списку ip адресов допустим ip.txt проверить службы брандмауера и отключить их (но логин и пароль обязательны, типа $ipc есть но не везде) 2 ) после чего дать определенные права некоторым папкам 3 ) после всех этих манипуляций затянуть все эти компы из списка в домен руками это делать каждый , просто жесть.... поэтому вот и прошу помощи в написании или в методе написания cmd или любого другого способа с .ув....Спасибо |
раз никто не помогает по предыдущим вопросам,
подскажите хотя-бы по одному моменту я хочу проверить запуск psexec на компах и это все дело залогировать таким образом я вычислю где служба брандмауэра включена Скрытый текст
chcp 1251 >nul for /f %%a in ("%~dp0comp.txt") do @echo %%a---------- >> E:\Logg\psresults.txt & psexec \\%%a -u login -p password -d -n 10 cmd.exe /c echo %%computername%% >> "E:\Logg\psdetails.txt" 2>&1 && echo Success >> "E:\Logg\psresults.txt" || echo Failed >> "E:\Logg\results.txt" Проблема в том, что не пойму почему в psexec не передаются ip ниже один из логов Скрытый текст
Неверный дескриптор. Сервер RPC недоступен. Connecting to C:\Users\xxx\Desktop\test\comp.txt... Couldn't access C:\Users\xxx\Desktop\test\comp.txt: Starting PSEXESVC service on C:\Users\xxx\Desktop\test\comp.txt... Could not start PSEXESVC service on C:\Users\xxx\Desktop\test\comp.txt: Connecting to C:\Users\xxx\Desktop\test\comp.txt... Starting PSEXESVC service on C:\Users\xxx\Desktop\test\comp.txt... |
я конечно зануда, но...
1. что мешает копировать на целевой комп тулзу в самом начале работы скрипта? или другим образом. (как-то же был скопирован psexec) 2. а постепенный отказ от XP с постепенным вводом в домен хотя бы семерок (в оптимале - десяток) не проканает? 3. ip должны браться из файла comp.txt? тогда там вроде как лишние кавычки. |
Elven,
честно говоря в cmd в переменных я не силен я данный код собрал из примеров допустим смотри у меня есть 3 варианта кода, 1 - мой, но он не логирует так как нужно , 2 и 3 не мой. но они откорректированы 3.1 просто переносы меня завели в заблуждение Отказаться, не так легко как кажется "бюрократия" )) да должо браться от туда, но кавычки вроде не лишнии, по факту зачем ему копировать что-то на комп, если достаточно банальной проверки выполнения удаленно через cmd команды "cmd.exe /c echo %%computername%%" Варианты: Скрытый текст
1-------------------вариант chcp 1251 >nul psexec @comp.txt -u administrator -p sekret -n 10 cmd.exe /c echo %%computername%% >log.txt 2> err.txt ----------- 2--------------- chcp 1251 >nul :start break>"%~dp0log.txt" CLS for /f "usebackq tokens=*" %%A in ("%~dp0comp.txt") do ( ping -n 3 %%A >nul && "%~dp0PsExec.exe" \\%%A -u administrator -p sekret -d "%~dp0%pstype%" || echo %%A Not Online >> "%~dp0log.txt" ) ------------- -----------------3 for /f %%a in ("%~dp0comp.txt") do @echo %%a---------- >> c:\psresults.txt & psexec \\%%a -u administratot -p sekret -d -n 10 cmd.exe /c echo %%computername%% >> "%~dp0psdetails.txt" 2>&1 && echo Success >> "%~dp0\psresults.txt" || echo Failed >> "%~dp0results.txt" ----3.1 chcp 1251 >nul for /f %%a in ("%~dp0comp.txt") do @echo %%a---------- >> E:\Logg\psresults.txt & psexec \\%%a -u login -p password -d -n 10 cmd.exe /c echo %%computername%% >> "E:\Logg\psdetails.txt" 2>&1 && echo Success >> "E:\Logg\psresults.txt" || echo Failed >> "E:\Logg\results.txt" |
Это насчет лишних кавычек.
Код:
for /? Бюрократия отличная штука если уметь ей пользоваться. Ткни начальством глазом в инфу о завершении поддержки XP и устраивай сцены на тему "если где что пропадет я ни за что не отвечаю". А еще лучше заставь их подписать писульку об ознакомлении с возможными последствиями - избавь себя от возможной головной боли. |
Время: 16:39. |
Время: 16:39.
© OSzone.net 2001-