Использование exec
делает обертку более прозрачной, т.е. снижает вероятность того, что пользователь или приложение, вызывающее скрипт, должны знать, что это ретранслятор, который в свою очередь запускает "настоящую" программу.
В частности, если вызывающая программа захочет убить программу, она просто убьет процесс, который только что запустила. Если сценарий-обертка запускает дочерний процесс, вызывающая сторона должна знать, что ей следует выяснить дочерний процесс обертки и убить его вместо этого. Сценарий обертки может установить ловушку для передачи некоторых сигналов, но это не будет работать с SIGSTOP или SIGKILL, которые нельзя перехватить.
Вызов exec
также экономит немного памяти (и других ресурсов, таких как PID и т.д.), поскольку нет необходимости держать вокруг себя дополнительный shell, которому нечего делать.
Если оболочек несколько, то проблем становится больше (трудности с поиском нужного процесса для уничтожения, затраты памяти и т.д.).
Некоторые оболочки (например, оболочка Korn) автоматически определяют, когда команда является последней и нет активной ловушки, и ставят неявный exec
, но не все (например, не bash).
Окончательный результат :После сеанса удаленной отладки в чате, включая отключение питания его вращающегося жесткого диска, стало ясно, что вращается не его жесткий диск, а вентилятор его карты nvidia.
Проблема была решена после установки драйвера nVidia .
Расширение :jbd2 означает фоновую задачу на основе ядра -, выполняющую побочную -работу с одной из ваших linux файловых систем, она, конечно же, ничего не делает с вашими разделами win. Подробнее об этом можно прочитать здесь .
Это явно экстраординарный случай -если вы не используете Ubuntu, она не должна вращать ваш диск. Есть какой-то фоновый процесс, который может и не нужен (или нужен, но тогда хороший вопрос, что он делает ).
Однако, к счастью, есть как простой, так и более сложный способ решения этой проблемы.
top
. Итак, введите:top
и проверьте, что находится сверху. Найдите процессы, имеющие состояниеR
(=running )в столбцеS
(tate ). Также вы можете использовать ps uxa|grep R
как решение чисто командной строки -для той же задачи. Хотя top
упорядочивает процессы по их использованию процессора , а не по их операциям ввода-вывода , в большинстве случаев также процессы с интенсивным вводом-выводом выходят на первое место в списке. top
, как побочный -эффект. Наиболее вероятными причинами вашей проблемы являются следующие:
К комментариям:
Какие разделы смонтированы и где, вы можете проверить с помощью команды mount
. К сожалению, он наполнен дерьмом уже несколько лет, но до конца вы можете посмотреть список. Найдите такие строки:
/dev/sda7 on /media/archive type ext4 (rw,relatime,nobarrier,errors=remount-ro,commit=6935,data=ordered)
Это означает, что ваш /dev/sda7
смонтирован в директорию /media/archive
. Sda7 — это 7-й раздел вашего первого жесткого диска.
Расширение:Как видно из выходных данных fdisk, ваш SSD — это ваш/dev/sdb1
.