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

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



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

Цитата:
А для пользователей Win2k/XP как на контроллере домена переменные окружения установить?

Через логин-скрипт утилкой setx, например

Код:
 
TEMP=с:\temp
setx TEMP %TEMP%
setx TMP %TEMP%
 


Всего записей: 3215 | Зарегистр. 09-02-2003 | Отправлено: 01:13 20-03-2005
alecsandrb

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Smitis
 
Я думаю что вариант с добавлением в реестр данных о временной папке вернее, т.к. твой скорее всего выполниться в сессии и на время этой сессии и установит этот параметр а после того как скрипт выполниться, он (параметр) изменится на системный по умолчанию.
 
AlexSSS
 
Спасибо за совет, но это не совсем то о чем я пмсал.
Мне нужен скрипт который для текущего пользователя (который сейчас соединяется с сервером) определяет в каких он OU автоматом затем формирует строку типа:
\\domain\shared dir\ou1\ou2\$username
Это для того чтобы указать автоматом рабочую папку пользователя.

Всего записей: 36 | Зарегистр. 03-09-2003 | Отправлено: 07:44 20-03-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alecsandrb
понял. Тогда лови вариант 2
 
' определение текущего UserName
' Этот вариант проходит для Windows 2000/XP и выше
Set WshShell = CreateObject("Wscript.Shell")
UserName = WshShell.ExpandEnvironmentStrings("%username%")
 
Set objConnection = CreateObject("ADODB.Connection")
objConnection.provider = "ADsDSOObject"
objConnection.Open ("Active Directory Provider")
 
' Запрос информации по учетной записи пользователя  
CommandText = "Select cn, name, distinguishedName, canonicalName, sAMAccountName"
CommandText = CommandText + " from 'LDAP://DC=dom1,DC=dom2'"
CommandText = CommandText + " where sAMAccountName='" + UserName + "'"
 
Set objRecordset = CreateObject("ADODB.Recordset")
objRecordset.Open CommandText, objConnection
 
If Not objRecordset.EOF Then
    ' Если запись для этого пользователя найдена то
    ' Процедура обработки distinguishedName или canonicalName
End If
 
В последнем IF--END IF размещается процедура формирования пути исходя из distinguishedName или canonicalName.
 
1. distinguishedName выглядит следующим образом
"CN=Ivanov Petr,OU=Managers,OU=Firm,DC=dom1,DC=dom2"
и путь вычисляется таким образом  
 
    dn = objRecordset.fields("distinguishedName").Value
    myArray = Split(dn, ",")
    Path = ""
    For Each rec In myArray
        If Left(rec, 3) = "OU=" Then
                Path = Mid(rec, 4) + "\" + Path
        End If
    Next
 
получается путь в виде "Firm\Managers\"
 
2. canonicalName выглядит следующим образом  
"dom1.dom2/Firm/Managers/Ivanov Petr"
как видишь, здесь вообще достаточно заменить "/" на "\" и вырезать имя домена, подставив на его место твои " \\domain\shared dir"

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 21:40 20-03-2005 | Исправлено: AlexSSS, 21:42 20-03-2005
Smitis



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

Цитата:
Я думаю что вариант с добавлением в реестр данных о временной папке вернее, т.к. твой скорее всего выполниться в сессии и на время этой сессии и установит этот параметр а после того как скрипт выполниться, он (параметр) изменится на системный по умолчанию.  

Обрати внимание - я использую вызов утилиты SETX! Эта утилита (SETX.EXE) как раз и предназначена для таких целей.

Всего записей: 3215 | Зарегистр. 09-02-2003 | Отправлено: 23:04 20-03-2005
alecsandrb

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Вопрос может и не по теме но где можно посмотреть состав объектов Active Directory
чтобы можно было не догадываться о возможном значении того или иного параметра а знать точно что он будет содержать и значить?

Всего записей: 36 | Зарегистр. 03-09-2003 | Отправлено: 06:24 21-03-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alecsandrb
> где можно посмотреть состав объектов Active Directory
поставь Windows Server 2003 Administration Tools Pack (или для 2000-го)
утилита ADSI Edit

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 09:01 21-03-2005
alecsandrb

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

Всего записей: 36 | Зарегистр. 03-09-2003 | Отправлено: 12:06 21-03-2005
kuvsh

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У мнея вопрос наверное покажется смешным, но так как я профан то очень нужна ваша помощь.
Итак есть задача - удаленно на всех компах в домене удалить Касперского с помощь программы RemoveKav.exe. В данном случае легче побегать 5 минт и снести, но важно именно решение такой задачи.
1. Сделал батничек  такого вида:
net use P: /delete  
net use P: \\file_server\d\file_arhive\Antivirus
P:\RemoveKAV.exe  
net use P: /delete
Но тут возникла проблема - требует подтверждения. Пробовал найти ключи чтоб автоматом подтверждал - то ли нет их, то ли не пашут.  
И еще, в идеале хотелось бы понять или посмотреть решение задачи на WSH, причем более сложной:
1. делаем проверку - стоит ли Касперский  - если да то запускаем RemoveKAV (опять таки чтоб без подтверждений). Если Касперского нет, то скрипт завершаем
2. Возможно создание файла отчета.
Спасибо заранее за любую помощь.

Всего записей: 5 | Зарегистр. 24-02-2005 | Отправлено: 13:04 21-03-2005
leputain



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а куда обычно кладут скрипты для машин/пользователей? в sysvol/netlogon?

Всего записей: 1434 | Зарегистр. 24-11-2002 | Отправлено: 14:25 21-03-2005
merlkerry

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

Цитата:
а куда обычно кладут скрипты для машин/пользователей? в sysvol/netlogon?

ну да, на sysvol/netlogon и кладут

----------
Вокруг одни враги.
Я испытываю естественный скептицизм по поводу чистоты человеческих намерений.

Всего записей: 1521 | Зарегистр. 16-09-2002 | Отправлено: 15:56 21-03-2005
Jovanotti



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kuvsh
Не пробовал  RemoveKAV  
Но думаю следует выполнить в связке с прогой їremotexec
 
Можно  попоробовать сделать скрипт использущий стандартный инсталлер KAVа
выбирая в нем пункт "деинсталировать"
Так думаю даже проще.
Принцип могу показать на автоматичской  установке FARа

Всего записей: 718 | Зарегистр. 22-12-2002 | Отправлено: 16:55 21-03-2005
Alan Mon

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alecsandrb
cacls /T, cacls /E

----------
Ребята, давайте жить дружно. Кот Леопольд

Всего записей: 1116 | Зарегистр. 22-07-2004 | Отправлено: 17:20 21-03-2005
Klesk



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Прошу прощения, но я потерял сообщение про настройку акаунта эл. почты, поэтому без цитаты...
 
У меня вот какой вопрос - как сделать, чтобы в поле SMTP Display Name отображалось Иванов Иван Иванович, а не Ivanov (к примеру).

Всего записей: 208 | Зарегистр. 19-10-2003 | Отправлено: 21:40 21-03-2005
Garreth



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Господа! А есть ли механизм отбора пользователей с разными ОС? Т.е. если ты на Windows 98, то тебе выполнять run.bat с Kixtart. А если ты под Windows 2000/xp, то kix32. Или это можно оформить скриптом?  Подскажите, плиз!

Всего записей: 170 | Зарегистр. 06-10-2003 | Отправлено: 21:54 21-03-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Garreth
лови реальный кусок скрипта, это logonscript.bat
 
@ECHO OFF
if     (%OS%) == (Windows_NT) kix32.exe ks_nt.kix
if NOT (%OS%) == (Windows_NT) %0\..\kix32.exe ks_98.kix
EXIT
 
для всех виндусовых операционок киксовый скрипт запускается через kix32.exe, но немного разные строки запуска. Подробности есть на Микрософте.
 
Внутри киксового скрипта NT4/Windows2000/WindowsXP/Windows2003 определяются
If @INWIN=1
    ; for Windows NT/2000/XP only
endif
 
дополнительные сведения об операционках можно получить через @ProductType, @Build  
 
PS. Я бы советовал использовать одни и те же скрипты для разных операционок. Большинство вещей реализуется одинаково для любых ОС. Если какие-то процедуры реализуются по разному для разных операционок, то нужный код запускатьчерез If @INWIN

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 23:08 21-03-2005 | Исправлено: AlexSSS, 23:16 21-03-2005
Garreth



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlexSSS
уже в третий раз - спасибо!!
Остается придумать, как на 300 пользователей прописать разом один параметр....
 
 
Добавлено:
Вот село некошенное - элементарно делается при помощи оснастки AD Users and Computers в версии 2003. Сорри за беспокойство!

Всего записей: 170 | Зарегистр. 06-10-2003 | Отправлено: 00:29 22-03-2005
AlexSSS

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Garreth
Прежде, чем ставить скрипты в домен, рекомендую всегда проверять корректность их работы.
 
Я поступаю для KIX так
1. На диске создан каталог, в который заброшены все EXE и DLL из поставки KIX
2. В этом же каталоге размещаю батник для записи скрипта и сам скрипт. Запускаю батник, он запускает скрипт и все проверяется на локальной машине.
Во время отладки бывает полезно выводить какие-то промежуточные результаты на экран. Это делается с помощью оператора ?
Включить трассировку скрипта можно в скрипте командой DEBUG "ON".
 
Если не уверен в каких-то действиях скрипта, в нем для начала можно поставить ограничение его действия на конкретных пользователей или группах
IF @UserID="vasja"
IF InGroup("IT")
убеждаешься по факту, что с ними все в порядке, потом убираешь ограничение.
 
Если ты еще занимаешься прописыванием нового мейлсервера и будут возникать срочные вопросы, можешь писать мне напрямую на мейл. Вначале напиши свой мейл через личные сообщения, а там дальше спишемся

Всего записей: 747 | Зарегистр. 26-06-2004 | Отправлено: 01:14 22-03-2005
kuvsh

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вообщем написал я его... Правдо ИМХО кривоват он и доработать нада... от советов не откажусь :
Подробнее...
 
Теперь у меня возникло несколько вопросов.
1. Хотел как в батнике сначала удалить мап драйв, но здесь попытка удалить отсутствующий диск приводит к ошибке и окончанию скрипта.
2. Перед удалением диска я поставил фиксированую паузу... можно ли как нибудь сделать, чтобы удалять диск в тот момент, когда к нему закончилось обращение.
3. Хотелось бы еще понять, как сохранять отчет такого типа:  
Пользователь такой-то применил скрипт. Касперский удален на машине такой то.
 
Заранее благодарен за ответы




нарушение пункта 3.9 Правил форума. Исправлено.
dg

Всего записей: 5 | Зарегистр. 24-02-2005 | Отправлено: 10:37 22-03-2005 | Исправлено: dg, 11:42 22-03-2005
Jovanotti



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

Цитата:
1. Хотел как в батнике сначала удалить мап драйв, но здесь попытка удалить отсутствующий диск приводит к ошибке и окончанию скрипта

Сделай проверку на наличие   буквы диска   который хочешь отмонтировать
Примерно if exist   ....

Всего записей: 718 | Зарегистр. 22-12-2002 | Отправлено: 11:07 22-03-2005
merlkerry

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

Цитата:
Сделай проверку на наличие   буквы диска   который хочешь отмонтировать
Примерно if exist   ....

 
лучше заюзать метод WScript.Network.EnumNetworkDrives()

----------
Вокруг одни враги.
Я испытываю естественный скептицизм по поводу чистоты человеческих намерений.

Всего записей: 1521 | Зарегистр. 16-09-2002 | Отправлено: 14:09 22-03-2005 | Исправлено: merlkerry, 14:11 22-03-2005
   

Страницы: 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