Копирајте велике датотеке преко мреже користећи БИТС и ПоверСхелл

На локалним (и глобалним) мрежама датотеке између система обично се преносе помоћу протокола СМБ, ФТП или ХТТП. Проблем са свим овим протоколима је потешкоћа при преузимању великих датотека, што може бити погоршано проблемима преноса података по спором или нестабилном каналу. При копирању датотека помоћу ових протокола обично се користи сва расположива ширина опсега комуникацијског канала између послужитеља и приматеља, што може негативно утицати на перформансе мреже и остале апликације (није увијек могуће конфигурирати исправне КоС политике на нивоу мрежне опреме). У овом ћемо чланку размотрити могућност употребе протокола. Битови и цмдлетс Поверхелл да копирате велике датотеке преко мреже преко нестабилног или спорог канала.

Садржај:

  • БИТС протокол
  • БИТС: Захтеви за ОС и ПоверСхелл верзију
  • Како преузети датотеку помоћу БИТС протокола помоћу ПоверСхелл-а
  • Синхроно преношење датотека између рачунара помоћу БИТС-а
  • Коришћење БИТС-а за асинхроно копирање великих датотека преко мреже
  • Копирање целокупног садржаја мрежног удела путем БИТС-а
  • Пренос датотеке на ХТТП сервер помоћу ПоверСхелл-а и БИТС-а

БИТС протокол

Битови или Позадина Интелигентна Трансфер услуга - (Бацкгроунд Интеллигент Трансфер Сервице) је Виндовс услуга која се користи за пренос датотека између система. Помоћу БИТС протокола можете пренијети и датотеке за преузимање и учитавање. У складу са овим протоколом, рачунари преузимају датотеке са сервера приликом аутоматског ажурирања Виндовс-а (укључујући приликом преузимања ажурирања са ВСУС сервера), приликом примања програма са СЦЦМ дистрибутивних места итд..

Предности БИТС протокола:

  • БИТС је интелигентни протокол који током рада може да регулише искоришћену ширину опсега комуникационог канала тако да не утиче на остале мрежне апликације и услуге. БИТС може користити само нераспоређени опсег канала и динамички мењати брзину преноса података током рада (ако друге апликације повећавају оптерећење мреже, БИТС може смањити брзину преноса података преко мреже);
  • Преузимање датотека може ићи у позадини, невидљиво за корисника;
  • БИТС посао у режиму за наставак аутоматски се наставља чак и ако се комуникацијски канал између рачунара и клијента прекине или након што се рачунар поново покрене;
  • У било којем тренутку можете паузирати или наставити с преузимањем преко БИТС-а без губитка података;Напомена. Могућност поновног покретања поступка копирања датотека преко мреже доступна је и у услужном програму робоцопи.еке, који вам омогућава да наставите с преузимањем датотеке у случају неуспјеха везе..
  • БИТС вам омогућава управљање приоритетима задатака за покретање;
  • Пренос датотека између рачунара догађа се на портовима 80 (ХТТП) или 443 (ХТТПС), тако да не морате да отварате додатне портове на ватрозидима. На пример, 445 портова који се копирају када се користи СМБ протокол (не заборавите да постоји много рањивости у старијим верзијама СМБ 1.0 протокола);
  • На страни примаоца и сервера, распоређени ИИС сервер није потребан.

Дакле, БИТС је оптималан протокол за пренос великих датотека преко спорих и нестабилних мрежа (сателитски канал, ГПРС веза, итд.).

БИТС: Захтеви за ОС и ПоверСхелл верзију

БИТС протокол први пут је уведен још у Виндовс КСП, за управљање БИТС пословима у којима је било могуће користити услужни програм битсадмин.еке. Услужни програм је и даље подржан, али је застарео. За управљање БИТС пословима, пожељно је користити посебне ПоверСхелл цмдлете.

Да бисмо радили у овом сценарију, потребан нам је ОС не нижи од Виндовс Виста или Виндовс Сервер 2008, а ПоверСхелл не нижи од верзије 2.0. Савремене верзије система Виндовс 10 и Виндовс Сервер 2016/2012 Р2 у потпуности подржавају БИТС протокол.

Савет. Могуће је користити Виндовс Сервер 2003. У овом случају морат ћете инсталирати специјална ажурирања КБ 923845 и ПоверСхелл В2.0.

Подршка за БИТС потребна је и на страни клијента и сервера.

Како преузети датотеку помоћу БИТС протокола помоћу ПоверСхелл-а

Претпоставимо да желите да преузмете велику ИСО датотеку сачувану на ИИС ХТТП серверу (_хттп: //10.2.2.148/ерд65_32.исо).

Претпоставља се да је анониман приступ дозвољен овом УРЛ-у (убудуће ћемо размотрити приступ УРЛ-у са аутентификацијом).

Прво убаците БИТС модул за подршку у ПоверСхелл сесију:

Увоз-модул БитсТрансфер

Након учитавања модула, можете навести све расположиве команде БитсТрансфер модула:

гет-цомманд * -БИТС *

Као што видите, доступно је само 8 цмдлета:

  • Адд-битсфиле
  • Комплетни БитсТрансфер
  • Гет-БитсТрансфер
  • Ремове-БитсТрансфер
  • Ресуме-БитсТрансфер
  • Сет-БитсТрансфер
  • Старт-БитсТрансфер
  • Суспенд-БитсТрансфер

Синхроно преношење датотека између рачунара помоћу БИТС-а

Цмдлет Старт-БитсТрансфер омогућава преузимање датотека путем ХТТП-а (као и цмдлет Инвоке-ВебРекуест) и из заједничких мрежних мапа (преко СМБ). Да бисте преузели датотеку с одређене УРЛ адресе помоћу БИТС протокола и сачували је у локалном директоријуму Ц: \ Темп, користите наредбу:

Старт-БитсТрансфер -соурце _хттп: //10.2.2.148/ерд65_32.исо -дестинација ц: \ темп

Порука Ово је пренос датотека који користи позадинску интелигентну трансфер услугу (БИТС) каже да је преузимање одређеног фајла по БИТС протоколу почело.

У овом примеру, цмдлет синхроно преузима датотеку. Преузимање датотеке сличи уобичајеном поступку копирања преко Екплорера или употребом ПоСх цмдлет Цопи-Итем. У овом случају се на екрану приказује трака напретка, која приказује статус преузимања. Када поново покренете рачунар, преузимање се неће наставити (мораћете поново да преузмете целу датотеку).

Коришћење БИТС-а за асинхроно копирање великих датотека преко мреже

Процес преузимања датотека путем БИТС-а такође се може покренути у асинхроном режиму, за то морате додати параметар горњој команди -асинхрони. У овом режиму, ако се нешто догоди за време преузимања датотеке (поновно покретање сервера, клијента, прекид комуникационог канала итд.), Задатак ће се аутоматски наставити након враћања доступности извора и преузимање датотеке ће се наставити од тренутка кад је веза прекинута..

Старт-БитсТрансфер -соурце _хттп: //10.2.2.148/ерд65_32.исо -дестинација ц: \ темп -асинцхроноус

Важно је. Подразумевано, Старт-БитсТрансфер ради са приоритетом предњег плана (највећи могући). Претпоставља се да ће преузимање датотеке која је покренута у овом режиму бити конкурентни другим процесима за пропусност канала. Да бисте то избегли, морате експлицитно навести било који други приоритет као аргумент наредбе, на пример, -Приоритет ниска:

Старт-БитсТрансфер -соурце _хттп: //10.2.2.148/ерд65_32.исо -дестинација ц: \ темп -асинцхроноус -Приорити лов

Асинкрони БИТС посао ради у позадини, а процес извршења наредбе за пренос датотеке се не приказује. Статус БИТС задатка може се добити из ПоверСхелл конзоле коришћењем наредбе Гет-БитсТрансфер:

Гет-БитсТрансфер | фл

Наредба враћа статус преноса (у овом случају је јасно да је трансфер завршен -Трансферред), информације о броју пренесених бајтова, укупној величини датотеке, временима креирања и завршетка БИТС посла.

Можете видети статус свих БИТС послова који се изводе на рачунару у табеларном облику:

Гет-БитсТрансфер | одаберите ДисплаиНаме, БитесТотал, БитесТрансферред, ЈобСтате | Формат-Табела -АутоСизе

Када користите асинхрони режим преноса, привремена датотека са ТМП екстензијом креира се у циљном директоријуму (скривена је подразумевано у истраживачу). Да бисте је претворили у изворни тип датотеке (која се чува на изворном серверу), морате да покренете команду Цомплете-БитсТрансфер:

Гет-БитсТрансфер | Комплетни БитсТрансфер

Задатак за преузимање БИТС-а након тога се сматра довршеним и нестаје са листе задатака..

Можете да пошаљете локалну датотеку у заједничку мрежну фасциклу на удаљеном серверу. Да бисте то учинили, користите следећу команду (ради практичности можете одредити име задатка копирања):

Старт-БитсТрансфер -Соурце Ц: \ исо \ в101809.исо -Одредење \\ ект-фс1 \ исо -Асинкрони -ДисплаиНаме ЦопиИСОтоЕКТ

Да бисте привремено обуставили БИТС посао, урадите:

Гет-БитсТрансфер -Име ЦопиИСОтоЕКТ | Суспенд-БитсТрансфер

Да бисте наставили посао, користите цмдлет Ресуме-БитсТрансфер:

Гет-БитсТрансфер -Име ЦопиИСОтоЕКТ | Ресуме-БитсТрансфер -Асинхроно

Можете додати додатне датотеке у БИТС задатак користећи цмдлет Адд-БитсФиле:

Гет-БитсТрансфер -Име ЦопиИСОтоЕКТ | Адд-БитсФиле -Соурце Ц: \ исо \ в10мсу \ * -Одредење \\ ект-фс1 \ исо -Асинцхроноус

Да бисте избрисали све задатке за преузимање БИТС-а на рачунару (укључујући оне које су покренули други корисници), покрените наредбу:

Гет-БитсТрансфер -Аллусерс | Уклони-БитсТрансфер

Не можете отказати БИТС задатке покренуте из система (грешка 0к80070005 Није могуће отказати посао). Да бисте отказали овај задатак, треба да покренете наредбу Ремове-БитсТрансфер из СИСТЕМ-а.

Ако сервер на којем се датотека чува захтева провјеру идентитета корисника, можете позвати прозор у којем су вам потребни акредитиви за приступ ресурсу:

Старт-БитсТрансфер -соурце _хттп: //10.2.2.148/ерд65_32.исо -дестинација ц: \ темп -асинцхроноус -Приорити лов -Ауттикација НТЛМ -Цредентиал Гет-Цредентиал

Да бисте лакше пратили резултате БИТС задатка, можете користити једноставну скрипту која надгледа задатак и приказује проценат учитавања на екрану сваких неколико секунди. На крају преузимања датотеке, скрипта аутоматски претвара ТМП датотеку у њен оригинални формат:

Увоз-модул БитсТрансфер
$ јоб = Старт-БитсТрансфер -Соурце _хттп: //10.2.2.148/ерд65_32.исо -Одредење ц: \ темп -Асинцхроноус
вхиле (($ јоб.ЈобСтате.ТоСтринг () -ек 'Трансферинг') -ор ($ јоб.ЈобСтате.ТоСтринг () -ек 'Цоннецтинг'))

Врите-хост $ Јоб.ЈобСтате.ТоСтринг ()
$ Про = ($ посао.БитесТрансферред / $ посао.БитесТотал) * 100
Врите-Хост $ Про „%“
Слееп 3

Цомплете-БитсТрансфер -БитсЈоб $ посао

Копирање целокупног садржаја мрежног удела путем БИТС-а

Као што смо већ рекли, БИТС-у не треба Веб сервер да ради, то значи да можете копирати датотеке директно са других рачунара са Виндовс или из заједничких мрежних мапа:

Старт-БитсТрансфер -Соурце \\ мск-реп01 \ ос \ рхел-сервер-7.0-к86_64-двд.исо -Одредење ц: \ темп -Асинцхроноус

Цмдлети модула БитсТрансфер не могу рекурзивно копирати све датотеке и мапе из одређеног директорија или датотеке које користе други програми. Да бисте копирали све датотеке са поддиректоријумима из наведене мрежне мапе, користите ову функцију (прво можете проверити да ли постоји циљни директориј и креирати је):

Увоз-модул БитсТрансфер
$ Соурце = "\\ мск-реп01 \ ос \"
$ Дестинатион = "ц: \ тмп \"
иф (-Нот (одредиште $ тест-одредишта))

$ нулл = Нова ставка-Пут $ Одредиште -ИтемТипе Дирецтори

$ фолдерс = Гет-ЦхилдИтем -Наме -Патх $ соурце -Дирецтори -Рецурсе
$ јоб = Старт-БитсТрансфер -Соурце $ Соурце \ *. * -Одредиште $ Дестинатион -асинцхроноус -Притиити лов
вхиле (($ јоб.ЈобСтате.ТоСтринг () -ек 'Трансферинг') -ор ($ јоб.ЈобСтате.ТоСтринг () -ек 'Цоннецтинг'))

Слееп 3

Цомплете-БитсТрансфер -БитсЈоб $ посао
фореацх ($ и у $ мапама)

$ постоји = одредница $ тест одредишта \ $ и
иф ($ постоји -ек $ фалсе) Нова ставка $ Дестинатион \ $ и -ИтемТипе Дирецтори
$ јоб = Старт-БитсТрансфер -Соурце $ Соурце \ $ и \ *. * -Одредница $ Дестинатион \ $ и -асинцхроноус -Притиити лов
вхиле (($ јоб.ЈобСтате.ТоСтринг () -ек 'Трансферинг') -ор ($ јоб.ЈобСтате.ТоСтринг () -ек 'Цоннецтинг'))

Слееп 3

Цомплете-БитсТрансфер -БитсЈоб $ посао


Пренос датотеке на ХТТП сервер помоћу ПоверСхелл-а и БИТС-а

Помоћу БИТС-а не можете само преузети датотеку са ХТТП сервера, већ је и отпремити на удаљени веб сервер. Да бисте то учинили, ИИС веб сервер са инсталираном компонентом мора бити инсталиран на страни примаоца Битови Сервер Продужетак. У поставкама ИИС виртуалног директорија у одељку Битови Отпреме треба да омогућите опцију "Дозволи клијенти до уплоадс датотека".

Ако користите анонимну ауторизацију, морате анонимним корисницима омогућити да пишу у директориј на НТФС нивоу. Ако се преузимање датотеке врши код овлаштених корисника, морају им бити додијељене РВ дозволе у ​​мапи за преузимање.

Да бисте пребацили датотеку на ХТТП сервер користећи БИТС протокол, покрените наредбу:

Стартни битови-извор ц: \ исо \ вин2016.исо -дестинатион хттп://10.10.1.200/МЕДВИмагес/вин2016.исо -Трансфертипе Уплоад

Имајте на уму да ИИС подразумевано омогућава отпремање датотека до 30 МБ. Да бисте омогућили пренос великих датотека, морате да промените вредност у параметру макАлловЦонтентЛенгтх у датотеци веб.цонфиг.

Стога је коришћење БИТС функција одлична алтернатива традиционалном копирању датотека преко мреже помоћу СМБ протокола. За разлику од последњег, задатак копирања БИТС датотека врши се упркос искључивању и поновном покретању рачунара и не оптерећује комуникацијски канал без ометања рада осталих мрежних апликација и корисника. БИТС протокол може бити оптимално решење за пренос великих ИСО слика и датотека виртуалних машина (вмдк, вхдк) преко ВАН мреже.