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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

Открыть новую тему     Написать ответ в эту тему

ShriEkeR



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Предыдущие части: 1 | 2
 
   

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

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

 
    Внимание   !  !  !  

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

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

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

Windows Script Host (WSH) &  VBScript  &  JScript


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

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

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

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

 
Надеюсь данная тема будет полезна для Вас.
Jovanotti

Всего записей: 6382 | Зарегистр. 27-09-2004 | Отправлено: 21:07 23-05-2011 | Исправлено: djremix, 14:12 25-04-2022
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
YuS_2
Вызвался помогать героически, невзирая на созданные тебе-помощнику препятствия -
    так полезай уж в кузов, на сливайся позорно.
 
А то мессидж твой свёлся к тому что ты хороший и не такой как я.
На практике вышел пшик
 
Что я и предвидел, и потому повёл себя именно так как повёл

Всего записей: 17126 | Зарегистр. 14-10-2001 | Отправлено: 16:36 11-03-2020 | Исправлено: LevT, 16:41 11-03-2020
caspara



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Скрипт через локауттайм
Get-ADUser -filter { -not (lockoutTime -eq "0")} -properties Company, lockoutTime, AccountLockoutTime -SearchBase ‘OU=Donetcka,OU=Exchange_Users,DC=ukrposhta,DC=loc’ |sort-object Name |FT Name, Company, @{n='lockoutTime';e={[datetime]::FromFileTime($_.lockoutTime)}} -Autosize
 
Стандартный скрипт "из коробки"
Search-ADAccount -LockedOut -searchbase "OU=Donetcka,OU=Exchange_Users,DC=ukrposhta,DC=loc" |FT name ObjectClass -A
 
в скриптах заменить мое -searchbase "OU=Donetcka,OU=Exchange_Users,DC=ukrposhta,DC=loc" на свое и попробовать...
 
Склоняюсь к тому, что у меня на работе домены не совсем корректно отрабатывают между собой синхронизацию параметров...
 
 
 
Добавлено:
LevT
И вам спасибо за помощь. Ругань не нужна, тут и так оказали сильную помощь мне со скриптами

Всего записей: 468 | Зарегистр. 04-08-2004 | Отправлено: 16:42 11-03-2020
YuS_2



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

Цитата:
Search-ADAccount -LockedOut -searchbase "OU=Donetcka,OU=Exchange_Users,DC=ukrposhta,DC=loc" |FT name ObjectClass -A

Так попробуйте это:

Код:
Search-ADAccount -LockedOut | FT Name,ObjectClass -A

Если результата нет, значит не хватает прав у текущего пользователя...
У командлета есть параметр -Credential

Цитата:
-Credential
Specifies the user account credentials to use to perform this task. The default credentials are the credentials of the currently logged on user unless the cmdlet is run from an Active Directory module for Windows PowerShell provider drive. If the cmdlet is run from such a provider drive, the account associated with the drive is the default.
 
To specify this parameter, you can type a user name, such as User1 or Domain01\User01 or you can specify a PSCredential object. If you specify a user name for this parameter, the cmdlet prompts for a password.
 
You can also create a PSCredential object by using a script or by using the Get-Credential cmdlet. You can then set the Credential parameter to the PSCredential object.
 
If the acting credentials do not have directory-level permission to perform the task, Active Directory module for Windows PowerShell returns a terminating error.
 
Specifies the credentials for the security context under which the task is performed. If this security context doesn't have directory level permissions to perform the task, then an error is returned by the directory. If running under the context of an Active Directory module for Windows PowerShell provider drive, the credentials information associated with the drive is used as the default value; otherwise, the currently logged on user security context is used.


Всего записей: 3218 | Зарегистр. 03-02-2009 | Отправлено: 19:01 11-03-2020 | Исправлено: YuS_2, 19:02 11-03-2020
us0r



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

Код:
@echo off
cls
setlocal
for /f "usebackq tokens=2 delims==" %%q in (`wmic os get OSArchitecture ^/format^:list`) DO (
IF /I "%%q" equ "64-bit" (echo x64 architecture
) else if  /I "%%q" equ "32-bit" (echo x32 architecture
) else (echo Unknown architecture)
)
pause
endlocal

 
Делаю так:
 

Код:
@echo off
cls
setlocal
for /f "usebackq tokens=2 delims==-" %%q in (`wmic os get OSArchitecture ^/format^:list`) DO (echo %%q
IF /I "%%q" equ "64" (echo x64 architecture
) else if  /I "%%q" equ "32" (echo x32 architecture
) else (echo Unknown architecture)
)

 
Выдаёт "Unknown architecture". Хотя в %%q точно лежит значение, сравнение не происходит. Что я делаю не так?

Всего записей: 406 | Зарегистр. 06-12-2007 | Отправлено: 11:31 30-04-2020
ipmanyak



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
us0r  
жмакаем в батнике код:
 
for /f "usebackq tokens=2 delims==-" %%q in (`wmic os get OSArchitecture ^/format^:list`) DO (echo %%q )
 
результат:
64
 
а сравниваешь ты  в первом коде с 64-bit и 32-bit потому получаешь "Unknown architecture"
 
Во втором коде не хватает закрывающей скобки от DO ( echo ...
надо так:  

Код:
 
@echo off                                                                                              
cls                                                                                                    
setlocal                                                                                              
for /f "usebackq tokens=2 delims==-" %%q in (`wmic os get OSArchitecture ^/format^:list`) DO (echo %%q
IF /I "%%q" equ "64" (echo x64 architecture                                                            
) else if  /I "%%q" equ "32" (echo x32 architecture                                                    
) else (echo Unknown architecture)                                                                    
)                                                                                                      
 

 
 
можно всё упростить код-3
 

Код:
 
@ECHO %PROCESSOR_ARCHITECTURE%
 

 
или чуть сложнее
 

Код:
 
@echo off                                            
If "%PROCESSOR_ARCHITECTURE%"=="AMD64" ( set OS=x64  
  ) else ( set OS=x86 )                              
echo %OS%                                            
pause                                                
 

 
и код4:
 

Код:
 
@echo off                                                      
Set RegQry=HKLM\Hardware\Description\System\CentralProcessor\0  
REG.exe Query %RegQry% | Find /i "x86"                          
If %ERRORLEVEL% == 0 (                                          
    Echo "This is 32 Bit Operating system"                      
) ELSE (                                                        
    Echo "This is 64 Bit Operating System"                      
)                                                              
PAUSE                                                          
                                                               
 

 


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

Всего записей: 11724 | Зарегистр. 10-12-2003 | Отправлено: 16:10 30-04-2020
Smitis



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Одно замечание - символы ^ в скрипте не нужны, экранировать там ничего не надо.
 
Добавлено:
ipmanyak

Цитата:
или чуть сложнее

Ещё чуть сложнее, но чуть надёжнее

Код:
if %PROCESSOR_ARCHITECTURE%%PROCESSOR_ARCHITEW6432%==x86 (
    echo x86 architecture
) else (
    echo x64 architecture
)

Сработает из-под 32-х разрядного cmd под Win x64

----------
Разум когда-нибудь победит

Всего записей: 3179 | Зарегистр. 09-02-2003 | Отправлено: 16:56 30-04-2020
caspara



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

Код:
@Echo "Определение битности вашей операционной системы..."
@Echo off
IF EXIST "%ProgramFiles(x86)%" (
  start "Установка обновлений 64 битной Виндовс 7" /min "c:\1_offline_64bit\!!!!_cmd_1_update.lnk"
) else (
  start "Установка обновлений 32 битной Виндовс 7" /min "c:\2_offline_32bit\!!_update_step_1.lnk"
)
exit

Моя вариация на проверку битности системы
 
Вопрос: к командлету Get-Aduser есть параметр -server
Ссылка
 
Вопрос: можно ли как-то в выборке учеток пользователей выбирать сразу  несколько контролеров домена?
 

Всего записей: 468 | Зарегистр. 04-08-2004 | Отправлено: 20:47 28-05-2020
briedis2

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет всем,
 
Может, кто ни будь, имеет и может поделится файлом hta_helpomatic.exe
В интернете нигде не смог найти, все почищено. Спасибо.

Всего записей: 4 | Зарегистр. 07-12-2006 | Отправлено: 10:55 29-05-2020
Boliwiec

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Господа, категорически приветствую.
Поделитесь инструментами, чем можно упаковать ресурсы обратно, после административной распаковки MSI и внесения изменений. А то места много занимают распакованные ресурсы.

Всего записей: 2 | Зарегистр. 06-07-2020 | Отправлено: 14:13 06-07-2020
anton04



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Boliwiec
 
Для примера EMCO MSI Package Builder.

Всего записей: 2803 | Зарегистр. 14-06-2006 | Отправлено: 13:14 14-07-2020
uzeerpc



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть несколько машин в компьютерном классе, один домен в офисе, необходимо создать скрипт который бы выключал все машины разом после его запуска на машине админа. Т.е. запускаешь у себя и shutdown шлётся всем перечисленным машинам, по IP скорее всего(?)... "Пните" в какую сторону копать, пожалуйста.
Расписания на каждой машине предлагать, но хочется вариант еще проще)

Всего записей: 1080 | Зарегистр. 09-01-2016 | Отправлено: 11:30 16-03-2021 | Исправлено: uzeerpc, 13:26 16-03-2021
borisdenis



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
uzeerpc
К примеру psexec, запускаешь с нужными параметрами и он сам выполняется на всех указанных машинах

Всего записей: 784 | Зарегистр. 15-04-2006 | Отправлено: 11:51 16-03-2021
ipmanyak



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
uzeerpc Дык shudown   и юзай в батнике, если домен и есть права админа домена. Для выключения ПК, ЕМНИП, достаточно прав Оператор сервера в домене.
shutdown /?
 
в батнике
shudown /s /f /m \\ИМЯ_ПК1
shudown /s /f /m \\ИМЯ_ПК2
или
shudown /s /f /m \\IP_ПК1
shudown /s /f /m \\IP_ПК2
 
 


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

Всего записей: 11724 | Зарегистр. 10-12-2003 | Отправлено: 17:24 16-03-2021
2as

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
uzeerpc,  
если для Windows, можно cкрипт PowerShell и WinRM.
здесь можно посмотреть: https://habr.com/ru/post/278691/

Всего записей: 3482 | Зарегистр. 09-09-2003 | Отправлено: 17:24 16-03-2021
Kero1



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
посмотрите вопрос, может кто знает, потому что в тех темах никто не знает.

Всего записей: 2447 | Зарегистр. 23-08-2011 | Отправлено: 18:57 27-04-2021
uzeerpc



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Друзья, выше задавал вопрос, а можно как-то все это провернуть, если нет никаких прав?
В компьютеры что нужно тушить находятся как бы в подсети - 88.20 (например), а мой ноут находится в сети 23.170. По TightVNC я подключаюсь без проблем к той сети.
Необходим скрипт чтобы тушить разом все 20 машин, а также скрипт на каждый комп отдельно.
Я не админ ни разу, но надо выяснить этот вопрос

Всего записей: 1080 | Зарегистр. 09-01-2016 | Отправлено: 13:27 16-06-2021 | Исправлено: uzeerpc, 13:28 16-06-2021
BorlandIMHO

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

Цитата:
а можно как-то все это провернуть, если нет никаких прав?

Если никаких - соответственно никак нельзя.
Подробнее

----------
http://www.imho.ws

Всего записей: 2388 | Зарегистр. 12-10-2006 | Отправлено: 14:12 16-06-2021
uzeerpc



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

Цитата:
локальные права администратора.

Есть. Могу запускать любые проги от админа.  
А вот к серверу доступ вряд ли есть, выше писали про какого-то оператора сервера...

Всего записей: 1080 | Зарегистр. 09-01-2016 | Отправлено: 14:18 16-06-2021 | Исправлено: uzeerpc, 14:19 16-06-2021
BorlandIMHO

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
uzeerpc
Ещё раз: есть права - можно работать, нет прав - нельзя.
Да, для завершения работы контроллера домена достаточно быть в группе "Server Operators" (группа "недоадминистраторов" с правами на вход локально в систему, резервное копирование и выключение/перезагрузку) {на "просто сервере" такой группы пользователей мной не обнаружено, а поднимать для опытов целый домен мне откровенно влом}.  
 
Конкретно, для возможности удалённого завершения работы, для пользователя (либо для группы, в которой он состоит), должна быль включена локальная политика безопасности "Принудительное удалённое завершение работы" (по умолчанию {в отсутствие домена} - только для админов).  

Но, как вы наверное понимаете, не имея прав админа включить для себя любимого эту политику тоже не получится...

----------
http://www.imho.ws

Всего записей: 2388 | Зарегистр. 12-10-2006 | Отправлено: 15:58 16-06-2021 | Исправлено: BorlandIMHO, 16:04 16-06-2021
uzeerpc



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Еще раз: это все доступно, я админ. Есть какой-то скрипт? Дайте шаблон где просто нужно заменить IP на мои. Или это так не работает?

Всего записей: 1080 | Зарегистр. 09-01-2016 | Отправлено: 16:20 16-06-2021 | Исправлено: uzeerpc, 16:21 16-06-2021
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » Автоматизация администрирования. Часть 3


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru