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

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



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Команда:
C:\>net group
Эта команда может использоваться только для контроллера домена Windows.
 
Для вызова дополнительной справки наберите NET HELPMSG 3515.
 
Вот такие пироги

Всего записей: 227 | Зарегистр. 30-01-2006 | Отправлено: 11:30 06-05-2006
alexxxn

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
для локальных групп можно использовать - NET LOCALGROUP

Всего записей: 20 | Зарегистр. 27-12-2002 | Отправлено: 11:46 06-05-2006
Sk1f



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Что-то я непонял в VB такая штука как я помню есть, а здесь непонятно.
Пример1:

Цитата:
 For each k in array(k)  
 Next
Можно ли так
For each k in array(k)  
 Next k
 
 
 
Пример2:

Цитата:
 If k= then
else
End if
Можно ли так  
 If k= then
else
End if k
 
 
 
У меня получилось большое кол-во циклов и хотелось бы знать можно ли как-нибудь обозначать, что к чему относится кроме как " ' ".
 

Всего записей: 198 | Зарегистр. 04-04-2006 | Отправлено: 12:30 06-05-2006 | Исправлено: Sk1f, 16:28 06-05-2006
AleXeyS55



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ага, NET LOCALGROUP, но группу заблокировать нельзя и удалить оттуда всех юзеров, тоже не так то просто. Удалить стандартную группу, в данном случае Администраторы, тоже едва ли получится
Какй выход тогда? Конечно если бы группу блокировать можно было, то все бы намного упростилось!

Всего записей: 227 | Зарегистр. 30-01-2006 | Отправлено: 12:50 06-05-2006
Uriu

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
inetimon
Конечно на локальном компьютере соединение с WMI происходит от имени текущей учетной записи. По другому и быть не может. Загружается ведь только профиль текущего пользователя.
Не понятно зачем запускать скрипт для другого пользователя, профиль которого не загружен? ИМХО.
Можно ведь просто назначить логон скрипт для любого пользователя (для каждого свой). Пароль вводить вообще не придется.

Всего записей: 340 | Зарегистр. 25-11-2004 | Отправлено: 06:42 07-05-2006
eldo

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скажите, а возможно ли с помощью whs управлять NetBIOS (например получить все имена связанные с данным LANA, удалить какие-то имена из таблицы имен NetBIOS) и тому подобное.
Спасибо
 
PS цель - организовать фильтрацию NetBIOS траффика. например: разрешить на сервере виндовс мессенджер только для одной группы IP-адресов, Oracle (если не ошибаюсь, он использует NetBIOS) - только для другой группы, а файл-сервер - только для третьей группы. Если кто-нибудь знает как вообще это можно сделать, подскажите пожалуйста.

Всего записей: 20 | Зарегистр. 25-04-2006 | Отправлено: 01:12 08-05-2006
AleXeyS55



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

Всего записей: 227 | Зарегистр. 30-01-2006 | Отправлено: 08:48 10-05-2006
serstr

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите как в VBS присвоить переменно значение которое содержит "..."
Например переменной temp присвоить значение (-GCMConfigFile "Q:\BAS\bas.ini")
 
Это нужно для правки реестра, надо создать ключ, в котором бы значение было = (-GCMConfigFile "Q:\BAS\bas.ini")
 
Добавлено:
И еще вопрос.
Как средствами VBS замапить юзеру сетевой принтер и приэтом повесить его на LPT2 порт?

Всего записей: 32 | Зарегистр. 26-04-2006 | Отправлено: 10:13 10-05-2006 | Исправлено: serstr, 10:15 10-05-2006
AleXeyS55



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

Цитата:
 
showmbrs Администраторы > users.txt
for /f "skip=2" %I in (users.txt) do net user %I /active:no
net user Administrator /active:YES
net user Administrator "123"
 

Но тут проблема есть: он заблокирует записи полностью, а в идеале мне нужно удалить записи из определенной группы, а именно Администраторы, и после этого получается добавит пользователя admin. И записи только локальные, не AD\...  
Можете кто нибудь подсказать как это сделать?

Всего записей: 227 | Зарегистр. 30-01-2006 | Отправлено: 12:31 10-05-2006
FreemanRU



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
AleXeyS55
Deleting a User from a Local Group

Код:
 
strComputer = "MyComputer"
Set objGroup = GetObject("WinNT://" & strComputer & "/Administrators,group")
Set objUser = GetObject("WinNT://" & strComputer & "/kenmyer,user")
objGroup.Remove(objUser.ADsPath)
 

Enumerating Local Groups and Their Members

Код:
 
strComputer = "atl-win2k-01"
Set colGroups = GetObject("WinNT://" & strComputer & "")
colGroups.Filter = Array("group")
For Each objGroup In colGroups
    Wscript.Echo objGroup.Name  
    For Each objUser in objGroup.Members
        Wscript.Echo vbTab & objUser.Name
    Next
Next
 

 
Вот два скрипта, 2+2 сложить сумеешь?

----------
Если не получается с первого раза - прочти инструкцию. (с)
"Откуда нам знать, что такое война, если мы не знаем мира..."(с)
Записки

Всего записей: 3795 | Зарегистр. 16-07-2004 | Отправлено: 13:34 10-05-2006
serstr

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

Цитата:
Подскажите как в VBS присвоить переменно значение которое содержит "..."  
Например переменной temp присвоить значение (-GCMConfigFile "Q:\BAS\bas.ini")  
 
Это нужно для правки реестра, надо создать ключ, в котором бы значение было = (-GCMConfigFile "Q:\BAS\bas.ini")  
 
Добавлено:  
И еще вопрос.  
Как средствами VBS замапить юзеру сетевой принтер и приэтом повесить его на LPT2 порт?

 
Неужели нет никаких идей насчет моей проблемы?

Всего записей: 32 | Зарегистр. 26-04-2006 | Отправлено: 13:48 10-05-2006
FreemanRU



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

Цитата:
 
WSCript.echo """"
 
OUTPUT: "
 

Идея ясна?

----------
Если не получается с первого раза - прочти инструкцию. (с)
"Откуда нам знать, что такое война, если мы не знаем мира..."(с)
Записки

Всего записей: 3795 | Зарегистр. 16-07-2004 | Отправлено: 13:54 10-05-2006
Prening

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

Цитата:
И еще вопрос.  
Как средствами VBS замапить юзеру сетевой принтер и приэтом повесить его на LPT2 порт?  

у меня выполняеться  так:
Set WshNetwork = WScript.CreateObject("WScript.Network")
if InGroup("CN=EPSON_AL-C4000") then
    WshNetwork.AddWindowsPrinterConnection "\\Server\EPSON_AL-C4000"
    WshNetwork.AddPrinterConnection "lpt2","\\Server\EPSON_AL-C4000"
    WshNetwork.SetDefaultPrinter "\\Server\EPSON_AL-C4000"
end If

Всего записей: 3 | Зарегистр. 06-02-2006 | Отправлено: 14:01 10-05-2006 | Исправлено: Prening, 14:03 10-05-2006
listadm

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я уже писал может кто то поможет
******************************************
Помогите решить задачу:  
есть текстовый файл такового содержания:  
*********************  
ХХХХХХХХХХХХХХХХХХХХХ  
ХХХХХХХХХХХХХХХ  
!!!!!!!!!!!!!!ХХХХХХХХХХХХ  
 
ХХХХХХХХХХХХХХХХХХХ  
ХХХХХХХХХХХХХХХХХХХХ  
************************  
 
Нужно удалить пустую строку в этом файле.

Всего записей: 6 | Зарегистр. 06-05-2006 | Отправлено: 14:12 10-05-2006
serstr

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

Цитата:
Цитата:  
WSCript.echo """"  
 
OUTPUT: "  
 
Идея ясна?
 

 
Вообщето идея не совсем ясна.
мне в реестре надо сделать ключ со значением :
 -GCMConfigFile "Q:\GARANT\GARANT.ini" -GCMDataPath1 "Q:\GARANT\data" -GCMDataPath2 "Q:\GARANT\data" -GCMLockPath "Q:\GARANT" -GCMSettingsPath "C:\Program Files\UserApps\Garant-F1\settings" -GPMAdapterConfigSection "F1Server Params" -XMLLoadPath1 "C:\Program Files\UserApps\Garant-F1\settings\xmllocal"
 
я для этого исполюзую команду
 
WSHShell.RegWrite "HKCU\Software\Garant.F1\ApplicationAdapterOptions",  ".........."
 
Вместо точек должно стоять выше указанное значение, если его просто вставить в кавычки, то он ругается  
 

Всего записей: 32 | Зарегистр. 26-04-2006 | Отправлено: 14:40 10-05-2006
AleXeyS55



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

Цитата:
Вот два скрипта, 2+2 сложить сумеешь?

Нет, до стольки считать не умею.

Всего записей: 227 | Зарегистр. 30-01-2006 | Отправлено: 15:00 10-05-2006
ctolnik



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кто подскажет скрипт, следующего рода. Необходимо через Web интерфейс просмотреть список пользователей определённой группы Active Directory, а также при наличии соответствующих прав изменить членство в группе.

Всего записей: 460 | Зарегистр. 25-10-2001 | Отправлено: 15:37 10-05-2006
FreemanRU



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

Цитата:
 
WScript.Echo "-GCMConfigFile ""Q:\GARANT\GARANT.ini"""
WSHShell.RegWrite "HKCU\Software\Garant.F1\ApplicationAdapterOptions", "-GCMConfigFile ""Q:\GARANT\GARANT.ini"""
 

т.е. двойная кавычка при в тексте равна одинарной.
 
AleXeyS55

Цитата:
в идеале мне нужно удалить записи из определенной группы, а именно Администраторы


Код:
 
strComputer = "." 'Локальный комп
Set colAdmins = GetObject("WinNT://" & strComputer & "/Administrators,group") ' Берем группу Администраторы  
For Each objUser in colAdmins.Members 'перебираем всех членов группы
        Wscript.Echo "Имя пользователя: " & objUser.Name 'выводим имя
        If objUser.Name <> "admin" Then 'Если имя пользвоателя admin, то....
              colAdmins.Remove(objUser.ADsPath) '.....удаляем его из группы
              Wscript.Echo "Пользователь " &objUser.Name& " удален из группы " & colAdmins.Name
        End If
Next
On Error Resume Next 'Отключаем генерацию ошибок, на случай, если такой пользователь есть в группе
Set objUser = GetObject("WinNT://" & strComputer & "/admin,user") ' получаем пользователя admin
colAdmins.Add(objUser.ADsPath) 'добавляем пользователя в группу Администраторы. Здесь может возникнуть ошибка, если такой пользователь уже есть в группе. Именно для этого выше стоял On Error....
Wscript.Echo "Complete!!!"
 

 
Добавлено:
ctolnik
Какой web-сервер? Возможна ли уставновка FrameWork?

----------
Если не получается с первого раза - прочти инструкцию. (с)
"Откуда нам знать, что такое война, если мы не знаем мира..."(с)
Записки

Всего записей: 3795 | Зарегистр. 16-07-2004 | Отправлено: 15:54 10-05-2006
serstr

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да все заработало!
FreemanRU еще раз спасибо

Всего записей: 32 | Зарегистр. 26-04-2006 | Отправлено: 16:21 10-05-2006
eldo

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

Цитата:
Скажите, а возможно ли с помощью whs управлять NetBIOS (например получить все имена связанные с данным LANA, удалить какие-то имена из таблицы имен NetBIOS) и тому подобное.  
Спасибо

 
Судя по отсутствию ответов, я так понимаю, это скорее невозможно, чем возможно. А жаль

Всего записей: 20 | Зарегистр. 25-04-2006 | Отправлено: 21:20 10-05-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