Пожалуй каждый админ сталкивался с проблемами, связанными с различающимися версиями ПО на компах пользователей. У одного стоит WinXP SP1, у другого SP3, второй пользуется Firefox 2 с неработающими обновлениями, третьему в спешке забыли установить антивирус, или неправильно его настроили, у четвертого Word 2007 сохраняет файлы в формате docx, который не понимает openoffice пятого, ну и многое другое. Я тоже значительно пострадал от всего этого и однажды решил привести список ПО и его настройки у пользователей к одному единому знаменателю. Было много проблем и бессонных ночей, но после всего этого, количество проблем и звонков резко сократилось, да и установка новых систем свелась в основном только к вводу пустого компьютера в домен, после чего весь основной софт сам настраивается и устанавливается. А начну я свой рассказ с установки софта из доменного скрипта автозапуска (BAT файла).
Собственно сама установка программ производится у меня из этого скрипта. Т.е. при каждом логине пользователя, проверяется список программ и устанавливаются нужные, если их нет. Да, это наводит некоторые проблемы – одни программы требуют перезагрузки, другие долго устанавливаются и т.п. Но надо только один раз отмучиться и потом все будет хорошо
FAQ. Как создать .bat файл?
Первая проблема, с которой я столкнулся – необходимость запуска установки от имени администратора. Стандартный системный runas требует ввода пароля администратора при каждом запуске и для наших целей непригоден. В ходе поисков в интернете, была найдена программа http://www.robotronic.de/runasspc.html. С ее помощью мы генерируем зашифрованный файл, который запускается модулем этой программы, который в свою очередь, запускает нужный нам bat файл от имени доменного админа. Команда на запуск будет представлять из себя примерно такую строку:
\servershareautorunrunasspc.exe /cryptfile:»\servershareautorunrunasspc.spc» /quiet
Где runasspc.spc – сгенерированный нами файл для запуска файла сценариев \servershareautorunsoft_install.bat от имени доменного администратора. Для этой цели я даже сделал отдельного пользователя с паролем по-сложнее и бесконечным сроком действия.
Далее мне потребовался какой-либо оповещатель об установке софта. Для этого я использовал программу Blat, которая позволяет отправлять письма прямо из командной строки. Я выложил ее в доступную всем папку на сервере \servershareautorunblat
Далее собственно файл \servershareautorunsoft_install.bat:
REM Имена компьютеров, на которые не требуется устанавливать софт
if %COMPUTERNAME%==NOTEBOOK (
exit
)
if %COMPUTERNAME%==WINSERVER (
exit
)
rem ———————Service Pack 3 Install————————-
REM проверяем установлен ли SP3 в реестре
Reg query «HKLMSOFTWAREMicrosoftWindows NTCurrentVersion» /v CSDversion|Find «Service Pack 3»
if %ERRORLEVEL% == 0 (
ECHO Service Pack 3 Already Installed
Как запустить bat файл от имени администратора в Windows
goto end
)
ECHO Installing Service Pack 3
«%BLAT%» -server %MAILS% -f %MAILFROM% -to %MAILTO% -s «Soft install on %COMPUTERNAME%. WinXP SP3 install real» -body «%DATE% %TIME% WinXP SP3 Install»
REM Путь к дистрибутиву и команда тихой установки + ключи, не требующие подтверждения установки и отменяющие перезагрузку
«\serversharedistribWindowsXP-KB936929-SP3-x86-RUS.exe» /quiet /passive /norestart
SET PROGRAMMNAME=»NOD32″
REM Путь и имя к проверяемого файла
SET FILENAME=»C:Program FilesESETESET NOD32 Antivirusekrn.exe»
REM Требуемый размер файла
SET FILESIZENEED=»810120″
REM Сравниваем размер файла и если не совпадает с требуемым, или файл не существует — запускаем установку
echo Checking %PROGRAMMNAME%
if exist «%FILENAME%» (
for %%a in (%FILENAME%) do set «FILESIZE=%%~za»
if «%FILESIZE%» == %FILESIZENEED% (
echo Program already install %FILENAME% with size %FILESIZE% bytes
goto end
) else (
echo Need install. File %FILENAME% need to be %FILESIZENEED% bytes, but it %FILESIZE% bytes.
)
) else (
echo Need install. File %FILENAME% not exist.
)
echo Installing programm
REM Отправка письма с оповещением об установке
«%BLAT%» -server %MAILS% -f %MAILFROM% -to %MAILTO% -s «Soft install on %COMPUTERNAME%. NOD32 4» -body «%DATE% %TIME% Begin installing NOD32.»
REM Специально созданный reg-файл с нужными настройками NOD32
regedit /s \serversharenod32.reg
REM Путь к дистрибутиву и команда для тихой установки (Silent Install)
«\serversharedistribeavbe_nt32_rus_4.msi» /qb! REBOOT=»ReallySuppress»
Логика примерно такова:
-проверяем, не установлена ли уже программа (по существованию файла, размеру, ключам реестра и т.п.)
-если нет – запускаем тихую установку (Silent Install)
Практически все известные программы делаются сейчас с режимом тихой установки. Это позволяет устанавливать ее, не выдавая каких-либо окон и не требуя от пользователя действий.
С этой помощью, все компьютеры пользователей у меня теперь работают с набором программ с одинаковыми версиями. Однако приходится бороться с автоматическими обновлениями самих программ – выключать их через реестр, или другими способами. Вот список софта, который устанавливается у меня таким способом:
Service Pack 3
NOD32
Acrobat Reader
7Zip
Internet Explorer
Mozilla Firefox
OpenOffice
FreeImage Editor
Denol Scanner
Punto Switcher
OCS Inventory Agent
Small CD Writer
NTPD
UltraVNC
Miranda IM
Adobe Flash Player
doPDF
и несколько других мелких утилит.
Теперь я точно знаю, что ЛЮБОЙ пользователь может, к примеру, найти на рабочем столе ярлык для программы для записи дисков, что сайт с флеш-содержимым у него откроется корректно и в списке принтеров он найдет виртуальный PDF-принтер
Источник: k210.org
Как создать bat-файл в Windows 10 и 7: руководство для «чайников»
Нередко советы по тем или иным действиям и исправлениям в Windows 10, 8 и Windows 7 включают в себя шаги наподобие: «создайте файл .bat со следующим содержимым и запустите его». Однако, начинающий пользователь не всегда знает, как это сделать и что собой представляет такой файл.
В этой инструкции подробно о том, как создать командный файл bat, запустить его и некоторая дополнительная информация, которая, возможно, окажется полезной в контексте рассматриваемой темы.
Что такое бат файлы «батники»?
BAT файл это код программы сохраненный с расширением .bat или .CMD кому как нравится.
Возможности файлов bat практически безграничны, но как правило програмисты используют эти расширения в простых и рутинных делах.
С помощью файла bat можно открывать файлы на компьютере, копировать перемещать и удалять файлы по маске и без, запускать скрипты сторонних программ, открывать браузер с нужным url. Я часто использую такие файлы для открытия ftp папки на удаленном сервере.
Настраиваем программу Нотпад и прописываем первую команду
После открытия программы, первым делом необходимо зайти в «Кодировки», еще раз выбрать – «Кодировка», затем – «Кириллица», где необходимо выбрать именно «ОЕМ866».
Настройка программы Notepad++ — выбор кодировки
Для наглядного примера будем использовать самую простую команду, представленную на скриншоте. Переписываете ее в свой документ.
Самая простая команда
Автоматизируем компиляцию и запуск программы на Java с помощью BAT файла
Так случилось, что в те редкие минуты свободного от основной работы времени которые я посвящаю изучению языка Java, мне приходится делать это на компьютере на котором не установлено ни каких IDE. Все что имеется под рукой это notepad++ и «допилить» его до удобоваримой формы тоже не получается, т.к. нет возможности устанавливать плагины к нему. Ну да ладно, как говориться — прорвемся. Если вы читаете эту статью, то я думаю у вас есть представление о компиляции файлов из .java в .class и какими командами это делается (если не знаете, читайте тут). Лень матушка, та что «двигатель прогресса», подсказала мне, что надо бы процесс компиляции как-то автоматизировать. Немножко погуглив с небольшим допилом получилось следующее:
- Создаем папку JavaProjects (все следующие шаги будем производить в ней)
- Создаем папку code, в ней мы будем хранить наши файлы с кодом в формате .java
- Создаем папку lib, в ней будем держать подключаемые библиотеки
- Создаем файл compile.bat со следующим кодом:
В принципе на этом все. Разобравшись в коде вы сможете его усовершенствовать и настроить под себя (например можно обойтись без временного текстового файла, сделать множественный выбор файлов из списка и т.д.). На последок, хочу сказать спасибо пользователям форума cyberforum.ru благодаря которым вышеописанный код воплотился в жизнь. Удачи.
Источник: buran9.ru