Partprobe звонит BLKRRPART
ioctl, который документируется в, допускает ошибку, include/linux/fs.h
, и кроме того источник ядра (суть находится в rescan_partitions()
):
#define BLKRRPART _IO(0x12,95) /* re-read partition table */
Самый легкий способ узнать это состоит в том, чтобы работать strace -e raw=ioctl -e open,ioctl partprobe /dev/sdb
.
Я думаю, чем Вы попробовали /sys/*/*scan
говорит ядру проверять, было ли изменение диска. Это не помогает, если диск не изменился (или был заменен в горячем режиме способом, который не обнаруживает ядро?), но структура раздела на нем изменилась.
Компиляция является процессом создания двоичных файлов из источника. Настраивать сценарий и make-файл выберут то, что подходит для Вашей системы. (64-разрядный исполняемый файл для 64-разрядной системы, 32-разрядной для 32-разрядного.)
И если у Вас есть 64-разрядная система, существует, вероятно, некоторый потенциал для улучшенной производительности в использовании 64-разрядных двоичных файлов. Для некоторых вещей это могло быть огромное повышение; я предполагаю, что для Apache это - не совсем настолько большое соглашение, но я не эксперт там. Конечно, не повредит, тем не менее, создавать соответствующие двоичные файлы, и я не вижу, почему Вы когда-либо потрудились бы смешивать с процессом сборки для получения 32-разрядных двоичных файлов, если у Вас есть 64-разрядная система.