Мониторинг использования общего ресурса для миграции файлового сервера
Мне нужен был способ отслеживать использование определенных общих ресурсов на файловом сервере, поскольку мы собираемся перейти на кластерный файловый сервер, и вам нужно создать ресурс для каждого общего ресурса.
На нашем существующем файловом сервере много общих ресурсов, но большинство из них не используются, так как мы направляем большинство пользователей через DFS. Я не смог найти никакого способа сопоставить информацию о том, какие ОБЩИЕ ПОЛОЖЕНИЯ использовались для подключения к конкретному файлу, поскольку аудит сообщает только о том, к каким файлам фактически осуществляется доступ. С этой целью я написал простой vb-скрипт, который создает файл с разделителями-запятыми и записью максимального использования для каждой общей папки. Он не сообщает нам, кто получил доступ к каждому общему ресурсу, но дает нам отправную точку, чтобы выяснить, какие общие ресурсы необходимо сохранить, или каких пользователей нам нужно научить не использовать общие ресурсы при миграции.
Приведенный ниже скрипт выполняет эту задачу. Оставьте его работать на несколько дней, а затем просмотрите CSV-файл в Excel…
————————————————————————————————
' Имя: шаремон.VBS
' Цель: Мониторинг использования общего пути на файловом сервере
'
'По сценарию Леона Фаннелла
напишите мне на leon_funnell(At)hotmail(d0t)com
'22.03.2005
'
'проверить командную строку
GetArgs strComputername,strOutputFile,CorrectSyntax
Если правильный синтаксис затем
Установлен фсо = СоздатьОбъект ( "Scripting.FileSystemObject" )
wscript.echo «Мониторинг использования общего ресурса на « & strComputername & » В файл « & strOutputFile
wscript.echo «Нажмите CTRL-C, чтобы остановить…»
wscript.echo “”
установлен фс = ПолучитьОбъект ( "WinNT://" & strComputername & «/ЛанманСервер» )
Тусклый Общий список( 500 , 3 )
Общий номер = 1
' Заполнить ShareList именем, путем и CurrentUserCount каждой общей папки
За Каждая акция В фс
ShareList(общий номер, 1 ) знак равно доля.имя
ShareList(общий номер, 2 ) , доля.путь
ShareList(общий номер, 3 ) знак равно доля.CurrentUserCount
общий номер , общий номер , 1
Следующий
writeArray ПоделитьсяСписок, strOutputFile, общий номер
' Теперь следите за общими ресурсами на сервере, чтобы следить за движением вверх по CurrentUserCount для каждой общей папки.
Делать
общий номер , 1
За каждую акцию В фс
Если ShareList(общий номер, 3 ) < доля.CurrentUserCount затем
ShareList(sharenum, 3 ) = share.CurrentUserCount
Конец Если
Общий номер = Общий номер + 1
Следующий
writeArray ПоделитьсяСписок, strOutputFile, общий номер
wscript.echo “.”
Wscript.Сон 5000
Петля
Еще
ДисплейПомощь
wscript.выход
Конец Если
Саб GetArgs(strComputername,strOutputFile,CorrectSyntax)
Установлен Аргументы знак равно WScript.Аргументы
Если число аргументов знак равно 2 Тогда
Правильный синтаксис = Истинный
улКомпьютернаме = аргументы ( 0 )
strOutputFile = аргументы( 1 )
Еще
правильный синтаксис знак равно ЛОЖЬ
Конец Если
Конец Саб
Суб- дисплейПомощь
wscript.echo «Подсчитывает максимальное количество обращений к определенным общим ресурсам на файловом сервере»
wscript.echo «adn записывает это в файл»
wscript.echo «cscript sharemon.VBS /? или /Help ———————————— Отображает этот экран справки»
wscript.echo «cscript sharemon.VBS Servername»
wscript.echo “”
Конец Саб
Саб writeArray(arr,writeFile,iLines)
Установить файл знак равно fso.openTextFile(writeFile, 2 , Верно )
За я = 1 К iLines
файл.writeLine обр (я, 1 ) и “, & обр(i, 2 ) & "," & приб(я, 3 )
Следующий
файл.закрыть
Установлен файл = ничего
конец суб