Почему установка флага -только для чтения устройства опасна в hdparm?

Я не знаю, почему ваш скриптxargs-не работает, возможно, в конце нет новой строки или какая-то другая проблема с параметром -d. Поскольку меньший список работает, возможно, в какой-то строке есть проблемные символы.

Итак, вместо использования -d $'\n'я предпочитаю использовать -I{}, чтобы избежать проблем и получить больше контроля. Для команды используйте {}, который заменяется каждой строкой.

Кроме того, у вас есть UUOC , xargsобеспечивает опцию -aили --arg-file:

-a file, --arg-file=file Read items from file instead of standard input. If you use this option, stdin remains unchanged when commands are run. Otherwise, stdin is redirected from /dev/null.

Попробуйте:

xargs -a urls.txt -I{} -P 250 php script.php {}

1
21.08.2021, 04:22
1 ответ

Та же опция также используется для сброса флага только для чтения, переводя диск из режима только для чтения в режим чтения/записи.

Для дисков, которые действительно не поддерживают операции чтения/записи, ОС будет пытаться обработать запросы программ на запись на диск, и диск, вероятно, ответит ошибками; но многие диски только для чтения не проходят тщательного тестирования для обработки команд записи. Существует вероятность того, что ваш диск не будет реагировать с ошибками высокого качества, что приведет к тому, что операционная система получит другое представление о состоянии оборудования, чем действительно существует на машине.

Поскольку операционная система получает «другое» представление об аппаратном обеспечении, чем его состояние, новые команды теперь работают с неправильным пониманием истинного состояния аппаратного обеспечения. Операционная система может восстанавливать (в некоторых случаях )неверные аппаратные конфигурации, но только если она понимает, что неверные конфигурации существуют. Если он понимает, что оборудование работает нормально, он не будет пытаться восстановить оборудование и может выдать дополнительные команды устройству, которое уже находится в плохом состоянии.

Почему оборудование не тестируется полностью для каждой операции? Для некоторого оборудования нет смысла полностью тестировать железо. Например, мало кто действительно разозлится, если вы не проверите, что у вас есть правильный код ошибки для записи на компакт-диск, потому что многие из этих людей будут полагать, что операционная система никогда не запишет на компакт-диск (как он не может заменить пластиковый диск ).

Почему оборудование иногда зависает при вводе неправильных команд? Это связано с большим количеством оборудования, в котором программы, обрабатывающие команды, реализованы таким образом, что приходится использовать очень мало ресурсов и работать очень быстро.Это означает, что 100% полная обработка каждого состояния часто не запрограммирована в аппаратном контроллере, потому что команды, которые никогда не должны выполняться после других команд, никогда не встречаются в правильно функционирующей операционной системе. Кроме того, в некоторых случаях полная способность реагировать на все команды означает более медленные аппаратные контроллеры или аппаратные контроллеры, требующие более крупных/мощных микросхем для хранения/обработки команд.

Я надеюсь, что эти опасения дали вам некоторое представление о комментарии «это опасно». В то время как настройка чтения/записи на «только для чтения», как правило, менее опасна (, если только у вас нет -незавершенной записи, ожидающей )установка «чтения/записи» может быть действительно плохой в некоторых обстоятельствах.

1
24.11.2021, 17:06

Теги

Похожие вопросы