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

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

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

ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114

   

FreemanRU



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

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


Часть 2я

Часть 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 подобный скриптовый язык с исходниками
  9. VBS2EXE - утилита для компиляции vbs и js скриптов в exe выдранная из пакета PrimalScript

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

 
Подробнее...
Создается по материалам данного топа

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

 

Всего записей: 3795 | Зарегистр. 16-07-2004 | Отправлено: 17:27 11-12-2006 | Исправлено: Smitis, 12:30 20-08-2008
jONES1979



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

Цитата:
И какой командой выставить галки  
- Пользователь не может менять пароль  
- Пароль никогда не истекает

 

Код:
 
    Const ADS_UF_PASSWORD_CANT_CHANGE = &H40
    Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000
 
  Flag = objUser.Get("UserAccountControl")
  newFlag = Flag or ADS_UF_PASSWORD_CANT_CHANGE
  newFlag = newFlag or ADS_UF_DONT_EXPIRE_PASSWD
  objUser.Put "userAccountControl", newFlag
 


Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 13:43 07-03-2007
tedhome

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
День добрый!
 
Есть задача написать скрипт, который бы сравнивал два файла. old.txt и new.txt построчно.  При этом если любая строка из файла new.txt не будет существовать в файле old.txt, то она запишется в новый файл, а если будет, то запись не произойдет.  
 
Написал основываясь на примерах с msdn скрипт, но он ругается на циклы Next.
Куда копать?
 
Подробнее...

Всего записей: 23 | Зарегистр. 01-09-2006 | Отправлено: 13:44 07-03-2007 | Исправлено: tedhome, 15:21 07-03-2007
jONES1979



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Staric
добавь назначение прав на папку. вот пример http://slil.ru/24042110

Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 14:11 07-03-2007
SYMXP

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Господа, а нет ли у кого скрипта сбрасывающего настройки сервисов WinXP в исходное(default) состояние? А может ещё что есть для этого?

Всего записей: 94 | Зарегистр. 01-03-2002 | Отправлено: 15:14 07-03-2007
cluster

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

Цитата:
Const ADS_UF_PASSWORD_CANT_CHANGE = &H40  
    Const ADS_UF_DONT_EXPIRE_PASSWD = &H10000  
 
  Flag = objUser.Get("UserAccountControl")  
  newFlag = Flag or ADS_UF_PASSWORD_CANT_CHANGE  
  newFlag = newFlag or ADS_UF_DONT_EXPIRE_PASSWD  
  objUser.Put "userAccountControl", newFlag  

Пасиба, но не ставится галка "Пользователь не может менять пароль"

Всего записей: 1720 | Зарегистр. 21-11-2003 | Отправлено: 17:03 07-03-2007
tedhome

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
jONES1979
cluster
 
А можно ли при создании user-а задать список пк, на которые user может логинится?
и можно ли уже при создании user-а расставить галки в закладке Enviromental и Remote control.

Всего записей: 23 | Зарегистр. 01-09-2006 | Отправлено: 17:21 07-03-2007
Anton_Y



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
whs | открыть файл, найти, заменить, сохранить
 
Стоит задача с помощью whs открыть текстовый файл, найти там все последовательности  
XXXX, заменить их на YYYY, и сохранить с тем же именем..
 
Фигня, согласен, но скажите хоть какие там методы\свойства в этом whs есть =)))
Я вообще в этом ноль

Всего записей: 581 | Зарегистр. 04-09-2002 | Отправлено: 17:29 07-03-2007
tedhome

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
открываешь файл один для чтения другой для записи.  
читаешь все в массив и построчно и делаешь замену
 
Пример на одной строке  
 
set fso=CreateObject("Scripting.FileSystemObject")
set file1=fso.opentextfile("istochnik.txt",1)
str=file1.readline
 
new_str=replace(str, "XXXX" , "YYYY")
file1.close
set file2=fso.opentextfile("new.txt", 8, True)
file2.write new_str
file2.close

Всего записей: 23 | Зарегистр. 01-09-2006 | Отправлено: 18:01 07-03-2007
Anton_Y



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
tedhome
как по строкам прыгать? как сделать цикл от 1 строки до конца файла (eof)?

Всего записей: 581 | Зарегистр. 04-09-2002 | Отправлено: 18:29 07-03-2007
Smitis



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

Цитата:
как по строкам прыгать? как сделать цикл от 1 строки до конца файла (eof)?

Издеваешься? Или лень справку почитать? Это же основы, без них даже начинать использовать WSH не стоит.

Всего записей: 3217 | Зарегистр. 09-02-2003 | Отправлено: 23:40 07-03-2007
jONES1979



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Anton_Y
щас насоветуем тебе
делай БЕЗ циклов

Код:
 
set fso=CreateObject("Scripting.FileSystemObject")  
set file1=fso.opentextfile("istochnik.txt",1)  
str=file1.readAll ' и весь файл будет в одной переменной
new_str=replace(str, "XXXX" , "YYYY")  
file1.close  
set file2=fso.opentextfile("new.txt", 8, True)  
file2.write new_str  
file2.close  
 

будем допускать, что файл у тебя не "многогигабайтный"

Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 03:27 08-03-2007 | Исправлено: jONES1979, 03:28 08-03-2007
Anton_Y



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Smitis
спасибо за то что высказался..
 
jONES1979
спасибо тебе добрый человек =) буду пробовать.. файл действительно небольшой, но в utf-8 правда.. не покалечится ли чего?

Всего записей: 581 | Зарегистр. 04-09-2002 | Отправлено: 08:38 08-03-2007
jONES1979



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

Цитата:
но в utf-8 правда.. не покалечится ли чего?

это уж ты сам увидишь. я не знаю как vbs, дружит ли с utf-8 и прочими юникодами...

Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 23:06 08-03-2007
tedhome

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а все-таки можно ли как-то при  создании учетной записи  
задать список пк, на которые user может логинится
и можно ли расставить галки в закладке Enviromental и Remote control?

Всего записей: 23 | Зарегистр. 01-09-2006 | Отправлено: 10:17 09-03-2007
ipmanyak



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tedhome во вкладке ACCOUNT (по русски Учетная запись) кнопа  - LOG TO  - Вход на  - тама добавляй компы, с которых юзер может логиниться


----------
В сортире лучше быть юзером, чем админом...

Всего записей: 11743 | Зарегистр. 10-12-2003 | Отправлено: 12:03 09-03-2007
tedhome

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скрипт по добавлению пользователей в ad у меня есть.  
Руками то понятно где .  
В LogTo в поле computer name влезает 15 символов.  
Удается записать только 3 рабочих места через точку с запятой.  
А у меня туды нужно 100 рабочих мест забить.  
 
А скриптами то можно?  
К тому же править 100 раз закладку Enviromental и Remote control как-то трудоемко, так как они не доступны при работе c группой учетных записей.

Всего записей: 23 | Зарегистр. 01-09-2006 | Отправлено: 12:23 09-03-2007
ipmanyak



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tedhome И зачем точки запятые ? Добавляй по одному по кнопе Добавить.  Скриптами само собой можно, но где их искать готовые ? Самому придется писать. А тебе не кажется странным, что юзер будет бегать по 100 станциям и логиниться на них?  Не проще вообще не указывать компы, на которых можно логиниться?  


----------
В сортире лучше быть юзером, чем админом...

Всего записей: 11743 | Зарегистр. 10-12-2003 | Отправлено: 13:14 09-03-2007
tedhome

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

Странно, но руководство компании считает что к остальным 600 компьютерам компании эти 100 не должны иметь доступ. Пойду скажу им что они неправы.  
 
 
Добавлено:
Кажися нашел http://www.motobit.com/help/usrmgr/cl1.htm
 
Для тех кому интересно.
computername="pc1,pc2"
objUser.Put "userWorkstations", computername
 
а тут можно узнать как настраивать другие закладки.
http://www.activexperts.com/activmonitor/windowsmanagement/scripts/terminalservices/terminal/#MTSEPUA.htm

Всего записей: 23 | Зарегистр. 01-09-2006 | Отправлено: 14:30 09-03-2007 | Исправлено: tedhome, 17:17 09-03-2007
korol8112

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте. Есть скрипт, проблема в том что группу выводит только с правами администратора, под пользователем не работает.
 
Set WshNetwork = CreateObject("WScript.Network")
user = WshNetwork.UserName
domain = wshNetwork.userdomain
WScript.Echo user
WScript.Echo domain
 
adspath = "WinNT://" & domain & "/" & user
set adsobj = GetObject(adspath)
' Вызов других подпрограмм based on the Windows NT group of the user
for each prop in adsobj.groups
    select case prop.name
        case "Администраторы домена"
            WScript.Echo "Группа Администраторы Домена"
        case "Info_2"
            WScript.Echo "Группа Info_2"
    end select
next

Всего записей: 1 | Зарегистр. 14-03-2007 | Отправлено: 17:32 14-03-2007 | Исправлено: korol8112, 17:36 14-03-2007
WSQ

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

Цитата:
а все-таки можно ли как-то при  создании учетной записи задать список пк, на которые user может логинится... у меня нужно 100 рабочих мест забить.
Я делал без скриптов с помощью политик Active Directory контролем за локальной группой Пользователи, опытные_пользователи, администраторы.
Создал политику с "группами ограниченного доступа"  для локальной группы "Пользователи" в составе "нормальные юзеры" и вторую политику для группы "Пользователи" - "пользователи домена". Политики навесил на контейнеры с компами - одну на важные компы, вторую на оставшиеся. Когда политики применились - в группе локальных пользователей осталась только установленная группа.
 
На тех компах, где в группе "пользователи" только группа "нормальные юзеры" пользователь, не входящий в эту группу просто не сможет залогиниться...  
Когда много компов разбитых на 2-5 группы - политиками наверное проще.
 
 

Цитата:
Стоит задача ... текстовый файл, найти все последовательности XXXX, заменить их на YYYY
а вот ещё 2 варианта (не WSH):
1. утилита  sed - Windows версия    sed -e "s/XXXX/YYYY/g"     -e "s/XX2/YYY/g" file1 > file2
2. используя CMD - http://forum.ru-board.com/topic.cgi?forum=62&topic=9040&start=0&limit=1&m=3#1
 

Всего записей: 47 | Зарегистр. 14-06-2006 | Отправлено: 23:48 14-03-2007 | Исправлено: WSQ, 23:56 14-03-2007
   

Страницы: 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 102 103 104 105 106 107 108 109 110 111 112 113 114

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 2
ShriEkeR (23-05-2011 23:06): Автоматизация администрирования. Часть 3


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru