Каждый раз, когда я перезагружаю свою машину с Windows 10, мне приходится перезапускать службу iSCSI.

Всякий раз, когда я перезагружаюсь, диски iSCSI не подключаются, и я вижу "переподключение" в инициаторе Microsoft iSCSI, если я пытаюсь отключиться, я получаю сообщение об ошибке, но после перезапуска службы iSCSI (в этот момент я написал короткую PowerShell сценарий и положить его на моем рабочем столе), диски iSCSI переподключиться.

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

Сервер iSCSI является устройством FreeNAS и имеет 1 портал с 1 целью и 2 экстентами. Раньше было 2 цели с одним экстентом каждая, но я объединил 2 цели в одну.

Я думал о создании запланированной задачи для перезапуска службы iSCSI при входе в систему, но я чувствую, что мне, вероятно, все равно придется заново создавать библиотеку Steam на диске каждый раз.

Следующие фрагменты истории гораздо менее актуальны, но могут содержать подсказки:

У меня есть игровой ПК с Windows 10 с нулевыми жесткими дисками и несколькими твердотельными накопителями SATA (я могу сломать его, если это имеет значение, но суть в том, что у меня нет портов SATA на моей материнской плате)

Вместо того, чтобы устанавливать жесткие диски для "медленного хранения" или использовать SMB (что довольно медленно), у меня есть 2 диска iSCSI (одна цель / портал, 2 разных экстента), поступающих с моего NAS.

Какое-то время это "только что сработало", в Черную пятницу 2018 года я получил SATA SSD емкостью 1 ТБ и адаптер, который заполнил мой последний порт SATA.

Проблемы начались совсем недавно, когда я получил встроенный USB3-концентратор, который входит в 5,25-дюймовый отсек... после его установки мой новый твердотельный накопитель емкостью 1 ТБ и диски iSCSI неожиданно перестали работать. Я работал через это. Адаптер PCIe-M.2 ослаб, и винт, удерживающий его на месте, не работал, поэтому я заменил винт, запустил chkdsk и т. Д., И все было хорошо. Но... как-то это испортило iSCSI? непонятно, но это произошло одновременно. Если бы игра "The Talos Principal" (установленная на 1 ТБ SSD), могла бы испортить ее. (У меня был забавный сбой, когда освободился твердотельный накопитель, но опять же, не очень актуально для проблем с iSCSI)

Я изменил настройки iSCSI на своем NAS, чтобы иметь 1 портал + 1 цель с 2 экстентами вместо 1 портала с 2 целями (по одному экстенту на каждую цель). Это чертовски запутало Windows, я в основном делал это, потому что он казался чище, но я смог отключить службу iSCSI, удалить драйвер, сбросить настройки iSCSI из реестра и заново добавить все, и все выглядело хорошо,

1 ответ

Поэтому я в итоге создал задачу по расписанию, которая запускает службу iSCSI, но задерживается до готовности сети (аналогичные решения рекомендуют отложить на одну минуту).

Затем я установил Steam на 90-е годы после входа в систему, а не при входе в систему...

Это не идеально, но я перезагружаю свой компьютер... а потом иду выпить кофе или еще чего-нибудь, и я возвращаюсь, и я могу играть в игры на своем диске iSCSI, не вмешиваясь в настройки.

Запланированное задание выглядит так:

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Date>2016-03-11T17:58:47.9924646</Date>
    <Author>gkmachine</Author>
    <URI>\Start iSCSI service at startup delayed</URI>
  </RegistrationInfo>
  <Triggers>
    <BootTrigger>
      <ExecutionTimeLimit>PT10M</ExecutionTimeLimit>
      <Enabled>true</Enabled>
    </BootTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>S-1-5-18</UserId>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
    <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <AllowHardTerminate>true</AllowHardTerminate>
    <StartWhenAvailable>false</StartWhenAvailable>
    <RunOnlyIfNetworkAvailable>true</RunOnlyIfNetworkAvailable>
    <IdleSettings>
      <StopOnIdleEnd>true</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <AllowStartOnDemand>true</AllowStartOnDemand>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
    <UseUnifiedSchedulingEngine>true</UseUnifiedSchedulingEngine>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT72H</ExecutionTimeLimit>
    <Priority>7</Priority>
    <RestartOnFailure>
      <Interval>PT5M</Interval>
      <Count>999</Count>
    </RestartOnFailure>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>powershell</Command>
      <Arguments>"-Command" "Restart-Service -Name 'Microsoft iSCSI Initiator Service'"</Arguments>
    </Exec>
  </Actions>
</Task>

Я использовал Glary Utilities, чтобы отложить запуск Steam Client Bootstrapper на 90 секунд, но, вероятно, вы могли бы удалить загрузочное приложение и установить запланированное задание, вместо того, чтобы устанавливать странную вспомогательную утилиту (хотя мне нравится Glary и сохранить это вокруг).

Другие вопросы по тегам