Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» Автоматизация администрирования

Автор: DarkStar2000
Дата сообщения: 11.06.2004 11:08
counter

Цитата:
Не подскажут ли коллеги, как можно по http стянуть в пакетном режиме один файл без помощи "тяжелой артилерии" в виде ВЄБ-копиров и т.д.?


Проще всего испоьзовать программу wget
Автор: Jovanotti
Дата сообщения: 11.06.2004 12:07
Может кто подскажет как поменять буквы разделов Допустим D: на Е:
при помощи скрипта.
Знаю как сделать через ключи реестра HKLM\MountedDevices\DosDevice
но хотелось бы проще и элегантнее без перезагрузок типа как в Менеджере дисков.
Автор: trisen
Дата сообщения: 14.06.2004 02:48
есть задача
посмореть на раб. станциях какие пользователи находяться в Local Administrator Group
машин много бегать неохото.

может быть кто-нибудт уже решал подобную задачку?

Автор: inQui
Дата сообщения: 14.06.2004 08:47
trisen

Цитата:

compName =WScript.Arguments.unnamed.Item(0)
groupName =WScript.Arguments.unnamed.Item(1)

Const ForAppending = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile _
(".\"&compName&".txt", ForAppending, True)

Set grp = GetObject("WinNT://yourDOMAIN/" & compName & "/" & groupName & ",group")
For Each member In grp.Members
objTextFile.WriteLine(member.Name & " (" & member.Class & ")")
Next

Подаешь пареметрами <имя машины> <название группы>. Получаешь файлик со списком пользовалелей.
Если машина не в домене, просто убери "yourDOMAIN/"
Если все машины в домене, можно выгребать их список из контейнера и тогда всё вообще будет само делаться
Автор: trisen
Дата сообщения: 14.06.2004 12:20
inQui

Большое спасибо! Пойду пробовать
Автор: pazdak
Дата сообщения: 15.06.2004 09:23
ooptimum
Очень познавательный топик, бегло пробежал и много нового по WSH почерпнул, но сам ПОКА минимально сталкивался с WSH поэтому прошу пояснить следующее:

Цитата:
Во-первых, IMO логон-скрипт исполняется с привилегиями логонящегося. Таким образом, ни один обычный пользователь, не имея административных привилегий, при логоне изменить пароль локального админа не сможет. Во-вторых, если логон-скрипт -- это VBS- или жаба-скрипт, то его можно зашифровать (стандартная фича WSH). Это к вопросу об открытых паролях в скрипте.


Цитата:
Как я уже отметил, пароль админа может находиться в самом скрипте, а чтобы не сперли -- скрипт с паролем надо зашифровать.

Можно про это подробнее отписаться ?
Можно ли просто в скрипте использовать зашифрованный пароль (как в NetWare), типа с каким-нибудь ключом, а сам скрипт не шифровать ?
Автор: CKOPnuOH
Дата сообщения: 15.06.2004 12:07
Есть такая проблема.
Установка на станции происходит при помощи RIS
Станции сами по себе - естесвенно разношёрстные.....
Так вот нужно при помощи либо груповых политик (я не нашёл - может плохо искал) или при помощи REG-файлов установить разрешение мониторов....

Нашёл ветку - [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Hardware Profiles\Current\System\CurrentControlSet\Control\VIDEO\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}\0000]
Вроде в ней устанавливаются параметры монитора.....
Только вот значение ключа в {} везде разное....
Так вот вопрос - если я буду добавлять этот параметр с одним и тем же ключём - ничего страшного не будет что они на всех машинах будут одинаково? Или же он ещё гдето привязывается?

Ну или подскажите более правильный путь задания разрешения рабстанциям....

P.S. Установка разрешения через *.SIF не хляет - так как я уже писал выше - машины все разношёрстные.....
Автор: ShahrayOleg
Дата сообщения: 15.06.2004 15:54
Есть сервер (ОС Win2k Server) и 30 машин (ОС Win98 и Win2k Pro). Поднят AD. Как написать скрипт чтобы получить MAC адрес всех машин (в домене)?
Автор: merlkerry
Дата сообщения: 15.06.2004 16:39
counter

Цитата:
Не подскажут ли коллеги, как можно по http стянуть в пакетном режиме один файл без помощи "тяжелой артилерии" в виде ВЄБ-копиров и т.д.?


есть такое чудо, как ActivePerl , ну а в нем это решается где-то так

use Win32::Internet;
$inet = new Win32::Internet();
$file = $inet->FetchURL("http://forum.ru-board.com/");

open (OUTFILE, ">c:\forum.ruboard.txt" );
print OUTFILE $file;
close (OUTFILE);
Автор: trisen
Дата сообщения: 16.06.2004 02:17
ShahrayOleg

создай файлик с ипами, в данном случае Ip.tmp

for /F %%i in (ip.tmp) do ping -n 1 %%i

arp -a > mac.tmp

или можешь без файлика, инкрементить значение ip


Автор: Mexanik
Дата сообщения: 16.06.2004 15:27
trisen
Хороший способ! Но проканает только для компов в той же подсети.

ShahrayOleg
for /F %%i in (ip.tmp) do nbtstat -A %%i | find "MAC"





Добавлено
CKOPnuOH

Цитата:
P.S. Установка разрешения через *.SIF не хляет - так как я уже писал выше - машины все разношёрстные.....


Сделай выбор разрешения в OSChooser, старина
Автор: ShahrayOleg
Дата сообщения: 20.06.2004 14:13
Есть сервер (ОС Win2k Server) и 30 машин (ОС Win98 и Win2k Pro). Поднят AD. Как написать скрипт чтобы поменять (локальный) пароль administrator на всех машинах под ОС WIN2k PRO?
Автор: kibkalo
Дата сообщения: 20.06.2004 15:31
добавить в логон скрипт компутерной политики (домена) бат файл с
net user Administrator PASSWORD
Автор: ShahrayOleg
Дата сообщения: 20.06.2004 15:42
спасибо
Автор: kibkalo
Дата сообщения: 20.06.2004 15:47
ShahrayOleg - это кстати было странице на 2-4 этого топика - я сам интересовался этим вопросом года полтора назад - правда нужно было VB привлечь, дабы зацепить те компы, которые не перезагружаются..
Автор: Drron
Дата сообщения: 22.06.2004 11:11
Доброго времени суток. Возникла ситуация с необходимостью настройки разрешений на ветви реестра (как в regedt32), но автоматически при помощи WSH. Если кто сталкивался с подобным помогите пожалуйста.
Автор: Jovanotti
Дата сообщения: 22.06.2004 11:55
Drron
Тоже искал ....
Кроме как через батник с командами cacls или xcacls думаю никак.
Хотелось бы ошибаться . Нужно из под скрипта менять пермишины.
Автор: kibkalo
Дата сообщения: 22.06.2004 19:09

Цитата:
const KEY_QUERY_VALUE = &H0001
const KEY_SET_VALUE = &H0002
const KEY_CREATE_SUB_KEY = &H0004
const DELETE = &H00010000
const HKEY_LOCAL_MACHINE = &H80000002
strComputer = "."
Set StdOut = WScript.StdOut
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_
strComputer & "\root\default:StdRegProv")
strKeyPath = "SYSTEM\CurrentControlSet"
oReg.CheckAccess HKEY_LOCAL_MACHINE, strKeyPath, KEY_QUERY_VALUE, bHasAccessRight
If bHasAccessRight = True Then
StdOut.WriteLine "Have Query Value Access Rights on Key"
Else
StdOut.WriteLine "Do Not Have Query Value Access Rights on Key"
End If
oReg.CheckAccess HKEY_LOCAL_MACHINE, strKeyPath, KEY_SET_VALUE, bHasAccessRight
If bHasAccessRight = True Then
StdOut.WriteLine "Have Set Value Access Rights on Key"
Else
StdOut.WriteLine "Do Not Have Set Value Access Rights on Key"
End If
oReg.CheckAccess HKEY_LOCAL_MACHINE, strKeyPath, KEY_CREATE_SUB_KEY, bHasAccessRight
If bHasAccessRight = True Then
StdOut.WriteLine "Have Create SubKey Access Rights on Key"
Else
StdOut.WriteLine "Do Not Have Create SubKey Access Rights on Key"
End If
oReg.CheckAccess HKEY_LOCAL_MACHINE, strKeyPath, DELETE, bHasAccessRight
If bHasAccessRight = True Then
StdOut.WriteLine "Have Delete Access Rights on Key"
Else
StdOut.WriteLine "Do Not Have Delete Access Rights on Key"
End If


Этот скрипт проверяет наличие прав. Если делать не Check, а Set то будет менять.
Автор: Jovanotti
Дата сообщения: 23.06.2004 07:40
kibkalo
Спасибо, буду пробовать ...
Автор: skylined
Дата сообщения: 06.07.2004 09:54
Уважаемые, не подскажити есть ли способ из ВБскрипта сделать аналог net send'a в батнике??
Пасиба.
Автор: Strizh
Дата сообщения: 06.07.2004 16:36
skylined
а зачем аналог?

WSHShell = WScript.CreateObject("WScript.Shell");
WSHShell.Run ("Net Send имя_кому_слать_сообщение "+"Текст")

ПС: JScript, правда
Автор: skylined
Дата сообщения: 06.07.2004 19:16
Strizh
TNX
Автор: deda_Flint
Дата сообщения: 07.07.2004 03:06
Странная ситуация однако, может кто встечался?
Беру скрипт с mcdn за основу.


Код:
Set wshNetwork = CreateObject("WScript.Network")
Set ADSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & ADSysInfo.UserName)
Автор: Strizh
Дата сообщения: 07.07.2004 11:24
deda_Flint

Цитата:
Set ADSysInfo = CreateObject("ADSystemInfo")


Цитата:
при запуске от имени доменного админа Join отрабатывает корректно


Цитата:
Несоответствие типа: 'Join'"


всё правильно - аккаунт-то доменный
а ты пытаешься локальным ....

выбери метод, тот который тебе нужен.
Автор: deda_Flint
Дата сообщения: 08.07.2004 04:11
Strizh
попрака

Цитата:
А при запуске от имени пользователя (пользователь является локальным администратором) "Ошибка выполнения Microsoft VBScript: Несоответствие типа: 'Join'"

пользователь-то доменный
решилось так

Код:
Set ADSysInfo = CreateObject("ADSystemInfo")
Set CurrentUser = GetObject("LDAP://" & ADSysInfo.UserName)
strGroups = join ( CurrentUser.GetEx("memberOf") )
Автор: Cuba
Дата сообщения: 09.07.2004 13:52
Проблема такая:
На серваке висит обычный батник, запускается при логоне пользователя.
Содержимое файла:

Код:
@Echo on
cls
%systemdrive%
cd \
\\main2\users\xcacls.exe "Program Files\The Bat!" /T /E /C /G administrators:F everyone:F system:F /y >> \\main2\users\log.txt
cd
cd \
cd \
cd \
cd %systemroot%
cd \
Автор: AlexisZP
Дата сообщения: 13.07.2004 15:08
Доброго времени суток!
Есть скрипт на вход пользователя в домен, мне нужно в зависимости от значения ветки в реестре выполнять ветвление. Вот пример, того, что есть:
====
Dim Perem
set WSHShell = WScript.CreateObject("WScript.Shell")

Perem = ""

On Error Resume Next
GetErr()
if Err.Source="WshShell.RegRead" then
Perem = "Параметр не существует"
else
Perem = WSHShell.RegRead("HKLM\Software\Oracle\home0\oracle_home")
end if
Err.Clear

'====
select case UCase(Perem)
case "c:\orant"
WSHShell.Popup "Орант"
case "c:\orawin95"
WSHShell.Popup "Оравин95"
end select
'====
' Просто вызываю для контроля
WSHShell.Popup Perem

Function GetErr()
If WSHShell.RegRead("HKLM\Software\Oracle\home0\oracle_home") Then
End If
End Function
===============
метод Case не отрабатывает, хотя возможно я его неправильно понимаю....
Ну или Ваши варианты решения вопроса - ?
Автор: ooptimum
Дата сообщения: 14.07.2004 00:29
AlexisZP

Цитата:
case "c:\orant"
...
case "c:\orawin95"

Используй "C:\ORANT" и "C:\ORAWIN95", раз уж выполняешь UCase(Perem).


Добавлено
Cuba

Цитата:
Как так?

А вот так. Батник-то выполняется с правами этого юзера. А не каждому юзеру дано право менять уровни доступа к исполняемым файлам. В общем, идея, я думаю, тебе ясна.

PS. Давненько я сюда не заглядывал, однако.
Автор: LeSlav
Дата сообщения: 14.07.2004 11:01
Не подскажет ли кто программу для перенаправления пакетов нестандартных протоколов? Необходимо перенаправлять пакеты протокола IP-уровня с идентификатором 250 на копьютер внутри сети. Нужно чтобы эта программка не конфликтовала с микрософтовким RRAS, который умеет перенаправлять только стандартные TCP и UDP.
Существует подобная программа, которая называется PortTunnel, но она тоже работает только с TCP и UDP...
Автор: Cuba
Дата сообщения: 14.07.2004 12:03
ooptimum

Цитата:
А вот так. Батник-то выполняется с правами этого юзера. А не каждому юзеру дано право менять уровни доступа к исполняемым файлам. В общем, идея, я думаю, тебе ясна.

дык это же логон скрипт, а логон скрипты выполняются от имени системы. .ИМХО..
или я не прав?

Если не прав, тогда как мне сделать скрипты, которые бы выполнялись от имени системы на всех компьютерах при логоне/логофе ?

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Зеркалирование дисков Win2000


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.