Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Закладки » Автоматизация администрирования

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

emx (13-12-2006 21:07): http://forum.ru-board.com/topic.cgi?forum=8&topic=19088#1  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

   

ooptimum



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
 

                               Коллеги-администраторы  ....  


Часть 1


Думаю каждый из вас сталкивался с необходимостью выполнять некие несложные рутинные операции, на котороые уходит много драгоценного времени.
 Например, создать определенную структуру каталогов для каждого пользователя домена, изменить некие параметры в профилях всех или части пользователей, изменить полномочия/владельца однотипных файлов в разных каталогах т.д.  
Я, как сисадмин, тоже не раз был вынужден делать все это.  Руками делать это тоскливо и муторно, как вы понимаете. Должен заметить, что по неким "религиозным" убеждениям я всегда старался избегать любых отношений с бейсиком и его производными. Еще мой отец учил меня не иметь с ним никаких дел. Буквально. А теперь я учу своего сына тому же. Но, тем не менее, полностью избежать этого, по всей видимости, невозможно, тем более, что бейсик от M$ сейчас уже далеко не та "лапша", которой он был изначально, а современный структурированный язык, нашедший множество применений. Похоже, что для меня в очередной раз настала пора выучить еще что-то. Знаете, как курильщик много раз безуспешно пытается бросить курить, так и я не раз пытался подступиться к изучению VBScript, но пока никак не одолел. Лень, знаете ли. А инструмент в делах административных был бы весьма пользительный, должен заметить, для быстрого написания всякого рода скриптов.

 
    Внимание   !  !  !  

  • Поскольку данный топ весьма не мал, не забывайте  использовать "версию для печати" для более удобного поиска по теме. А также МЕГА ПОИСКОВИК от NEPa

  • Дабы не раздувать топ,  примеры своих  скриптов  заключаем в тег  "more"

Консольные команды. Командный интерпретатор

Windows Script Host (WSH) &  VBScript  &  JScript


Вышеперечисленные буки можно  взять здесь

    ТOOLS :
  1. Autoit+readme.rus
  2. Scriptologic
  3. AutoMate
  4. KIXTART
  5. nnCron-Планировщик с поддержкой скриптового языка --  РЕКОМЕНДУЮ
  6. WGET, GREP, GETMAIL, BLAT for Windows замечательные консольные утилиты
  7. 4dos/4nt -- отличная замена стандартного коммандного интерпретатора  
  8. JudoScript - java подобный скриптовый язык с исходниками

    Дружественные темы :
  1. Автоматическая (unattended) установка Windows
  2. Интересные команды при работе с Linux
  3. Отличный сайт по скриптингу, и не только
  4. Использование KIX
  5. Использование WMI

 
>>HOW -  TO:
Создается по материалам данного топа

 
Надеюсь данная тема будет полезна для Вас.
 Предложения по реформированию шапки принимаю в ПМ Jovanotti

 

Всего записей: 2898 | Зарегистр. 30-05-2002 | Отправлено: 08:55 13-12-2002 | Исправлено: FreemanRU, 17:29 11-12-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alfira
2й параметр метода Run сделай 1
про остальное читать здесь: хттп://msdn2.microsoft.com/en-us/library/d5fk67ky.aspx
 
Добавлено:
strizhakovs
плохо искал
 
[HKLM\SYSTEM\CurrentControlSet\Control\Video\{<перебрать>}\0000]
"Acceleration.Level"=dword:00000000
 
четай, тебе это случаем как раз не для этого нужно?

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 16:53 07-12-2006 | Исправлено: urel, 17:04 07-12-2006
mozers



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
anat75
Цитата:
Это ответ на предлагаемую тобой команду  
Предложенный мной способ прост, но не универсален
К примеру, удалить notepad.exe не удастся ("Отказано в доступе"), пока Блокнот запущен. А переместить notepad.exe в %TEMP% можно без проблем.
С другой стороны, файл.doc не удастся ни удалить ни переместить, пока он открыт в Word-е.
Я так понял, что тебе то надо универсальное решение. Значит мой ответ - мимо. (Я то начал отвечать до того как ты дописал к своему вопросу уточняющую фразу)...

Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 17:08 07-12-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alfira
если потерпишь - то завтра предложу свой вариант удаления устаревших архивов...

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 17:35 07-12-2006
alfira

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
urel
Да конечно, жду ваш вариант удаления устаревших архивов!
 Я смотрю скрипт выполняет операцию копирования с помощью командной строки? а как правильно написать команду командной строки для vbs скрипта? Моя попытка подставить в скрипт другие cmd команды например ntbackup c параметрами не увенчалась успехом, видимо есть какие-то особенности при написании cmd в vbs скрипте?  

Всего записей: 81 | Зарегистр. 11-09-2004 | Отправлено: 04:31 08-12-2006
i_no_k



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
urel

Цитата:
другой вариант - делаешь снапшот реестра 1, меняешь, делаешь снапшот 2  
сравниваешь

Сравнил - оличия вида:
[HKEY_USERS\S-1-5-21-1478111800-572277579-1606240830-14727\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\{282623B7-ACED-4147-AD21-8498876BBA96}Machine]
 
[HKEY_USERS\S-1-5-21-1478111800-572277579-1606240830-14727\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\{282623B7-ACED-4147-AD21-8498876BBA96}Machine\Software]
 
Что-то я в них не разобрался, как там можно задать изменения. Вариант сделать на одной машине и экспортировать на все остальные кажется неприемлемым.
Может, поимеете еще немного терпения и подскажите еще какой-нибудь способ?
Просто хочется что-нибудь более универсальное, чем можно выполнять задачи удаления и добавления пользоватей из гр. политик на удаленных машинах.

Всего записей: 357 | Зарегистр. 22-09-2005 | Отправлено: 06:49 08-12-2006
strizhakovs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
urel
 
БОЛЬШОЕ СПАСИБО!!! очень помог!!!

Всего записей: 51 | Зарегистр. 26-09-2006 | Отправлено: 10:38 08-12-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
i_no_k
самый универсальный инструмент в этом роде как раз и есть secedit. Хотя с другой стороны куда удобне деплоить политики через AD.
 
alfira
будет. ntbackup это не команда командного процессора cmd. эта утилита находиться в system32
команду cmd можно запустить так(на прмере dir): cmd /k "dir %windir%"
вобщем cmd /?
 
Добавлено:
i_no_k
у тебя же есть домен, что тебе мешает создать политику и заасайнить на нужные компы?
PS: пользователи могут не подключиться к контроллеру если у них будет разбежка более 5 минут (по дефолту для цербера)
PPS: Странно что у тебя вывалилось HKU, тк должно происходить это в HKLM

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 11:28 08-12-2006
strizhakovs

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Еще возникла одна проблема.
 
Нужно написать скрипт, который бы мог использовать обычный доменный юзер для смены своего пароля через IIS.
Т.е. юзер заходит на вэб-сайт логинется там (авторизуется) и после этого меняет свой доменный пароль. вот необходим скрипт, который будет менять этот пароль...
 
Подскажите ктонить как это организовать...
 

Всего записей: 51 | Зарегистр. 26-09-2006 | Отправлено: 11:46 08-12-2006
i_no_k



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
urel

Цитата:
у тебя же есть домен, что тебе мешает создать политику и заасайнить на нужные компы?

То, что домен есть, вовсе не означает что я могу управлять доменными политиками. Именно по-этому и хочу сделать это через локальные политики.
PS. DC в Москве, а она далеко...

Цитата:
PPS: Странно что у тебя вывалилось HKU, тк должно происходить это в HKLM

Я тоже думал, что это должно быть в HKLM, но против фактов не попрешь.
Я первоначально вообще собирался это сделать ч\з mmc>редактор ГП, но он при удаленном подключении показывает только политику безопасности IP и адм. шаблоны.
 
Добавлено:
Еще по secedit - она, если я правильно понял, работает только локально (т.е. указать ей адрес удаленной машины, на которой нужно применить шаблон, не получится) - прийдется раскидывать ее саму + sec bd + прописывать все это на однократный запуск... геморойно.

Всего записей: 357 | Зарегистр. 22-09-2005 | Отправлено: 12:10 08-12-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
strizhakovs

Код:
Set objUser = GetObject _
    ("LDAP://cn=myerken,ou=management,dc=fabrikam,dc=com")
 
objUser.ChangePassword "i5A2sj*!", "jl3R86df"

почитай/скачай азбуку
 
Добавлено:
i_no_k
мы не ищем легких путей! ?
у вас в сайте нет контроллера, а сколько машин?
какая разница где контроллер - предлагаю не гемороиться и затребовать себе права на OU где лежат компы или админам в москве создать соотв политики.

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 13:11 08-12-2006
i_no_k



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
urel

Цитата:
у вас в сайте нет контроллера, а сколько машин?  
какая разница где контроллер - предлагаю не гемороиться и затребовать себе права на OU где лежат компы или админам в москве создать соотв политики.

Контроллер есть, прав на доменные политики нет. Права не дадут из-за политики безопасности; админам в москве больше делать нечего как менять политики из-за пары десятков машин в далекой Сибир - не им ведь юзеры звонят, у которых системный календарь не работает.

Цитата:
мы не ищем легких путей! ?

именно!;)
пришлось удаленно подключаться к каждой тачке, и через gpedit каждому все делать - так что вопрос исчерпан (но интерес остался!)
urel спасибо за интересные советы.

Всего записей: 357 | Зарегистр. 22-09-2005 | Отправлено: 13:35 08-12-2006
abasov



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
'Может кому нибудь пригодится
'Установка квот на группы в домене  
'Из ком. строки> script.vbs domain users c  
'Begin Comment
' Force the script to use only defined variables.
'End Comment
 
Option Explicit
Dim sUserName, oGroup, sDomain, sDrive, sGroup
Dim WshNetwork, colDiskQuotas, oMember, oUser
'Begin Comment
' Print the instructions for the user.
'End Comment
If WScript.Arguments.Count <1 Then Call Help
 
'Begin Comment
' Define the variables.
'End Comment
sGroup = WScript.Arguments(0)
sDrive = WScript.Arguments(1)
If WScript.Arguments.Count >2 Then  
 sGroup = WScript.Arguments(0) & " "& WScript.Arguments(1)
 sDrive = WScript.Arguments(2)
 
 end if
 
 
 
 'BEGIN CALLOUT A
Set WshNetwork = WScript.CreateObject("WScript.Network")
sDomain = WshNetwork.UserDomain
'END CALLOUT A
 
'Begin Comment
' Create a quota collection and initialize its connection
' to the selected drive.
'End Comment
Set colDiskQuotas = CreateObject("Microsoft.DiskQuota.1")
'Begin Callout B
   colDiskQuotas.Initialize sDrive&":\", True
'End Callout B
'Begin Callout C
colDiskQuotas.QuotaState = 2
'End Callout C
 
'Begin Comment
' Connect to the object representing the group.
'End Comment
'msgbox "WinNT://" & sDomain & "/" & sGroup
'Set oGroup = GetObject ("WinNT://" & sDomain & "/" & sGroup &", group")
Set oGroup = GetObject ("WinNT://" & sDomain & "/" & sGroup )
 
'Begin Comment
' Apply the quota to each member of that group.
'msgbox "End Comment"
 
For each oMember in oGroup.Members
'   WScript.Echo oMember.Name
   sUserName = oMember.Name
'Begin Callout D
   Set oUser = colDiskQuotas.AddUser(sUserName)
'End Callout D
   Set oUser = colDiskQuotas.FindUser(sUserName)
   oUser.QuotaThreshold = 60000000000
   oUser.QuotaLimit = 70000000000
Next
 
Sub Help
WScript.Echo "Instructions"
   WScript.Echo "This script sets up disk quotas for a group on"
   WScript.Echo "a named disk. To run the script, type the name"
   WScript.Echo "of a group (using quotation marks if its name"
   WScript.Echo "has more than one word) and the drive letter."
   WScript.Quit
End Sub

Всего записей: 345 | Зарегистр. 12-11-2002 | Отправлено: 14:27 08-12-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alfira
целиком получилась такая штука:
Код:
Path2Winrar        = "c:\Program Files\WinRAR\WinRAR.exe"
Path4Archives    = "d:\dav\2\"
BackupDepth        = 4
 
Set WshShell = WScript.CreateObject("WScript.Shell")
Set objNetwork = CreateObject("WScript.Network")
Set FSO = CreateObject("Scripting.FileSystemObject")
strMyDoc = WshShell.SpecialFolders("MyDocuments")
arcPrefix=LCase(objNetwork.ComputerName & "_" & objNetwork.UserName)
arcName = Path4Archives & arcPrefix & "_" & Replace(Replace(CStr(now),":","-")," ","_") & ".rar"
cmd = """"& Path2Winrar & """ a -r -dh -INUL -x*.mp3 -x*.fcd -x*.avi -x*.exe -x*.jpg -x*.tif -pPASSWD """ & arcName & """ """ & strMyDoc & """"
WshShell.Run cmd, 1 , True
 
Set Files= FSO.GetFolder(Path4Archives).Files    
Dim Backups()
q=0
For Each File In Files
    FileName=LCase(File.Name)
    If (InStr(FileName, arcPrefix)=1 ) Then
        q=q+1        
    End If    
Next
ReDim Backups(q-1,1)
q=-1
For Each File In Files
    FileName=LCase(File.Name)
    If (InStr(FileName, arcPrefix)=1 )Then
        q=q+1
        Backups(q,0)=Path4Archives & File.Name
        Backups(q,1)=File.DateLastModified        
    End If    
Next
c = False
Do Until c
    c=True
    For w=0 To q-1
        If CDbl(Backups(w,1)) < CDbl(Backups(w+1,1)) Then
            c=False
            b0=Backups(w,0)
            b1=Backups(w,1)
            Backups(w,0)=Backups(w+1,0)
            Backups(w,1)=Backups(w+1,1)
            Backups(w+1,0)=b0
            Backups(w+1,1)=b1
        End  If  
    Next
Loop
For w=BackupDepth To q
    FSO.DeleteFile Backups(w,0),True      
Next

 
ЗЫ  -INUL - чтобы в процессе не выскакивали окошки если файл заблокирован

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 17:24 08-12-2006 | Исправлено: urel, 11:30 11-12-2006
alfira

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
urel
Спасибо, все работает, только вот косяк при запуске скрипта комп пытается создать временный файл архивации в директории из которой запускается скрипт. Нельзя ли чтоб этот файл создавался в той же директории что и сам архив? а то скрипт-то лежит в GP

Всего записей: 81 | Зарегистр. 11-09-2004 | Отправлено: 06:40 11-12-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alfira
Не должно оно временных файлов делать, но ошибка в скрипте была - исправлена и выделена

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 11:32 11-12-2006
alfira

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я пока с первым скриптом разбираюсь
 
Path2Winrar   = "E:\Program Files\WinRAR\WinRAR.exe"  
Path4Archives = "E:\"  
Set WshShell = WScript.CreateObject("WScript.Shell")  
Set objNetwork = CreateObject("WScript.Network")  
strDesktop = WshShell.SpecialFolders("MyDocuments")  
arcName = Path4Archives & objNetwork.ComputerName & "_" & objNetwork.UserName & "_" & Replace(Replace(CStr(now),":","-")," ","_") & ".rar"  
cmd = """"& Path2Winrar & """ a -r -dh -x*.mp3 -x*.fcd -x*.avi -x*.exe -x*.jpg -x*.tif -pPASSWD """ & arcName & """ """ & strDesktop & """"  
WshShell.Run cmd, 0 , True  
WScript.Echo strDesktop  
 
 именно при запуске этого скрипта временный файл создается в той папке где расположен скрипт. а так как скрипт находится в GP то выходит ошибка "невозможно создать __rar_00.031"
            "отказанно в доступе" т.к. у пользователя нет прав на создание там файла.

Всего записей: 81 | Зарегистр. 11-09-2004 | Отправлено: 12:34 11-12-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alfira
помотри что у тебя в arcName  поулчается
скачай vbsedit и пользуй его для дебага

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 13:27 11-12-2006
alfira

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
когда на своем компе скрипт запускаю все работает arcName соответствует скрипту т.е создается архив все как положенно имя компьютера имя пользователя и дата время т.е все работает. Скрипт запускаю с рабочего стола при этом на рабочем столе создается файл временный __rar_00.031 когда архивация заканчивается он пропадает.

Всего записей: 81 | Зарегистр. 11-09-2004 | Отправлено: 13:42 11-12-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alfira
незнаю что тебе сказать - копай рар, смотри настройки, может со временными папками чет не так, попробуй другой архиватор  если с этим не так
 
Добавлено:
PS: у меня таких проблем не возинкало

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 14:55 11-12-2006
Lobasterman



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток, коллективный разум!
 
   Ситуевина следующая: Есть скрипт vbs, который должен из папки на серавке в сети закидывать пару файлов в папки Windows и Program Files\<прога> на рабочих станциях пользователей. Через полиси цепляю его к нужным OU но трабл - при выполнении на клиентской станции закрыт доступ на запись на эти папки, тока на чтение. Вопрос: как дать скрипту такие права? Через полиси не катит, т.к. потом, после выполнения скрипта права нуна вернуть на место, чтобы шаловлиые рученки юзверей не полезли, куда не следует. Заранее гран мерси.

Всего записей: 9 | Зарегистр. 11-12-2006 | Отправлено: 16:23 11-12-2006
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Закладки » Автоматизация администрирования
emx (13-12-2006 21:07): http://forum.ru-board.com/topic.cgi?forum=8&topic=19088#1


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru