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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Sk1f



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
И на машинах с 2000-й виндой скрипт ругается вот на эту строку:
Set objComputer = CreateObject("Shell.LocalMachine")
 

Цитата:
 
Option Explicit
 
'--------------------------------------------------------------------------------------------------
Dim objComputer, strComputer
Dim objWMIService, IPConfig, IPConfigSet
Dim objReg, strKeyPath  
Dim WshShell
Dim strValueName, dwValue , strValue  
Dim objConnection, objRecordset
Dim ServerName, DSN, ConnectString, strRes, i
'--------------------------------------------------------------------------------------------------
 
Const HKEY_LOCAL_MACHINE = &H80000002
Const adOpenStatic = 3
Const adLockOptimistic = 3
Const adUseClient = 3
'--------------------------------------------------------------------------------------------------
 
strComputer = "."
'--------------------------------------------------------------------------------------------------
 
'Value Computer Name
Set objComputer = CreateObject("Shell.LocalMachine")
'Wscript.Echo "Computer name: " & objComputer.MachineName
'--------------------------------------------------------------------------------------------------
 
'Read ProductID
Set objReg = GetObject("WinMgmts:\\" & strComputer & "\Root\Default:StdRegProv")
strKeyPath = "SOFTWARE\Microsoft\...."
strValueName = "ProductID"
objReg.GetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, dwValue
   
'WScript.Echo "Value " & strValueName & ": " & dwValue  
'--------------------------------------------------------------------------------------------------
 
'Query DB-SQL
 
 Set objConnection = CreateObject("ADODB.Connection")
 Set objRecordset = CreateObject("ADODB.Recordset")
 
ServerName = "TestComputer\sqlexpress"
DSN = "DBTest"
 
ConnectString = "Provider=SQLOLEDB;" & _
                "Data Source=" & ServerName & _
                ";Integrated Security='SSPI';Initial Catalog=" & DSN & ";"  
 
objConnection.ConnectionString = ConnectString
objConnection.ConnectionTimeOut = 15
objConnection.CommandTimeout = 30
objConnection.Open
 
Set objRecordset = objConnection.Execute("EXEC dbo.TestKey '" & dwValue & "','" & objComputer.MachineName & "'")
If objRecordset.State = 1 Then  
    strRes = vbNullString
    For i=0 To objRecordset.Fields.Count-1
        strRes = strRes & CStr(objRecordset.Fields(i).Value)
    Next
 
'Write ProductID
strValue = "" & RTRIM(strRes)
WScript.Echo strValue
objReg.SetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, strValue
 
Set objRecordset = Nothing
Else
Set objRecordset = Nothing
End If
 
objConnection.Close
Set objConnection = Nothing
'--------------------------------------------------------------------------------------------------
 


Всего записей: 198 | Зарегистр. 04-04-2006 | Отправлено: 13:47 26-09-2006 | Исправлено: Sk1f, 14:51 28-09-2006
Sk1f



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Мне нужно получить "List Local Computer Information для Windows 2000"
 
Как это сделать?

Всего записей: 198 | Зарегистр. 04-04-2006 | Отправлено: 09:19 29-09-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sk1f
 
если только получить имя компа -
Set objNet = CreateObject("WScript.Network")
WScript.Echo objnet.ComputerName
 
а что это?
Цитата:
"List Local Computer Information для Windows 2000"


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



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

Цитата:
 
List Local Computer Information - это ресурс из The Portable Script Center, описывающий извлечение информации о компьютере (но он не работает с 2000 виндой)
 

 
спасибо за скрипт. счас пойду тестить

Всего записей: 198 | Зарегистр. 04-04-2006 | Отправлено: 14:40 29-09-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sk1f
 
я имел ввиду что из этого тебя интересует, там описано много фич характерных ХП и 2к3, которых нет в 2к.

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 15:00 29-09-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Никто на вскидку не подскажет скрипты/доки для создания и изменения ACL папок в Public folders на Exchange 2003?

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 16:19 02-10-2006
BRAINTEQU



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здраствуйте! Мне необходимо добавить в Security на папке группу пользователей, но дело в том что машин в домене много и на каждой есть эта папка. Можно ли это как-то автоматизировать?

Всего записей: 52 | Зарегистр. 11-09-2006 | Отправлено: 11:08 03-10-2006
Sk1f



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
BRAINTEQU, можно. У тебя права раздаются отдельным пользователям или всем пользователям в отдельной группе?
Кажи путь к папке (лень придумывать).  
 
Или сам:
1. Пример раздачи прав

Цитата:
 
Set WSHShell = WScript.CreateObject("WScript.Shell")
WSHShell.Run(xcacls . /G administrators:f system:f everyone:r /y)
 

 
2. WSHShell.Run("здесь используешь служеб программы xcacls или subinacl, cacls")
 
Эти программы входят в состав resourceKit (как я помню)
http://support.microsoft.com/?id=825751
http://net.mpei.ru/lang/rus/faqw2kxp/jsifaq/rh3528-1.htm
http://support.microsoft.com/kb/320081/ru
http://net.mpei.ru/lang/rus/faqw2kxp/jsifaq/rh0425.htm

Всего записей: 198 | Зарегистр. 04-04-2006 | Отправлено: 12:02 03-10-2006 | Исправлено: Sk1f, 12:29 03-10-2006
BlackCK

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть такой скрипт. Вернее HTA приложение.
Нужен для сбора информации о пользователяз домена. Он у них стартует они заполняют необходимые поля и Ага.. Оно записывается в AD.  
 
А вот собственно в чём проблема. На некоторых компах по какой то мне неведомой причине отрабатывает строка
 
    Set Net = CreateObject("WSCript.Network")
    strUserName = Net.Username
 
В следствии чего я не получаю имя пользователя и ldap запрос не проходит...
Это пол беды...Попробывал на машине где это не пашет подставить имя пользователя руками. Всё делалось из под админских прав, как на локаьной машине, так и в домене.
При подстановке логина руками Ldap работает но затыкается в другой точке:
 
Set objUser = GetObject ("LDAP://"&objRecordSet.fields("DistinguishedName").value)
 
"LDAP://"&objRecordSet.fields("DistinguishedName").value - проверял, формируется как положено. А GetObject не отрабатывает. А это необходимо для записи данных в AD.
 
Проверял На двух рядом стоящих тачках, обе 2000 SP4 полный набор хотфиксов и т.п. на одной пашет, на другой нет... Уже башку сломал.... Идеи есть? Поделитесь? В логах машины пусто... не в апликейшине не в системе.. нигде... ругается в обоих случаях на немогу создать объект и т.п. ...  
 
Код скрипта...

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



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

Цитата:
Кажи путь к папке

 Пользователи студенты, почти лишены прав, т.е. разрешен офис и некоторые проги. У них есть общий ресурс на сервере,но у каждого своя папка. А разрешить доступ нужно к папке с определенной прогой, точнее Trase Mode

Всего записей: 52 | Зарегистр. 11-09-2006 | Отправлено: 12:32 03-10-2006
Sk1f



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
BRAINTEQU,  у тебя пользователи-студенты в одной глобальной группе находятся или нет?

Всего записей: 198 | Зарегистр. 04-04-2006 | Отправлено: 13:16 03-10-2006
BRAINTEQU



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sk1f
 В группе students делятся по годам, по специальностям и по группам. Политики применяются к OU students

Всего записей: 52 | Зарегистр. 11-09-2006 | Отправлено: 13:47 03-10-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
BlackCK
проверь версию wsh
 
BRAINTEQU
политику по назначению прав на папки следует применять к OU содержащему компьютеры. тк у пользователей из OU students не должно быть прав на изменение acl интересующих папок, да и вобще у них прав не должно быть =)
 
если не хочеться исспользовать xcacls из рескита, можно попробовать стандартным cacls в таком виде: "echo y| cacls ..."

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 12:03 04-10-2006
BRAINTEQU



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
urel
Цитата:
OU содержащему компьютеры

а у меня нет OU для компов, а как их добавить?

Всего записей: 52 | Зарегистр. 11-09-2006 | Отправлено: 13:25 04-10-2006
BlackCK

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
BRAINTEQU
 
проверял, более того поставил свежую... такая же петрушка..

Всего записей: 9 | Зарегистр. 03-10-2006 | Отправлено: 14:22 04-10-2006
Yourbill



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
BlackCK
Если на обеих машинах заходишь под одним и те же пользователем и на одной работает, на другой нет. Попробуй перерегестрировать машину в домене, на которой не отрабатывает скрипт. Больше на ум ничего не приходит

Всего записей: 565 | Зарегистр. 11-03-2003 | Отправлено: 14:46 04-10-2006
BlackCK

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Yourbill
 
Мало вероятно... слишком большой объем машин с отвалом скрипта... я грешу на политики.. сетка защищённая до невозможности.. банк вроде как...Но как бы политики то же проверял, вроде нет там ничего такого... Х.з. в общем... всю башку сломал уже... не знаю...

Всего записей: 9 | Зарегистр. 03-10-2006 | Отправлено: 16:01 04-10-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
BlackCK
тогда перенеси их в один OU сделай gpupdate /force , для чистоты ребутни, и проверь.
если так - то копай политики. Поставь, если не стоит, GPMC для удобства.
 
BRAINTEQU
есил нет нужно создать и перетянуть туда компьютеры из контейнера Computers. Ну или что менее правильно необходимые компьютеры занести в локальную/глобальную группу и на уровне домена создать политику которая будет применяться к этой группе.

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 16:42 04-10-2006
BlackCK

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
urel
 
Изначально в одной... Структура сложная, в одной OU может у нескольких машин работать у нескольких нет. Политики применяемые к машинам в общем одинаковые... люди в пределах OU выполняют одни функции. Соответственно применяется к ним одно и то же...

Всего записей: 9 | Зарегистр. 03-10-2006 | Отправлено: 16:53 04-10-2006
urel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
BlackCK
 
Тогда на какие политики грешить? посмотри обновляются ли политики, проверь апдейты чемнить типа MBSA

Всего записей: 292 | Зарегистр. 16-09-2004 | Отправлено: 17:44 04-10-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