Я использую команду GNU date
, которая поддерживает таймер с высоким разрешением:
START=$(date +%s.%N)
# do something #######################
"$@" &> /dev/null
#######################################
END=$(date +%s.%N)
DIFF=$( echo "scale=3; (${END} - ${START})*1000/1" | bc )
echo "${DIFF}"
И затем я вызываю сценарий следующим образом:
/usr/local/bin/timing dig +short unix.stackexchange.com
141.835
Единица вывода - миллисекунды.
Если процессоры будут совместно использовать всю корневую файловую систему, это будет включать все конфигурации, в том числе, например, конфигурацию nfs. Как они узнают, что они главные или компаньоны?
Одним из подходов было бы создание разделов на флэш-памяти для самых больших каталогов (узнайте это с помощью du -sm /*|sort -n
) и монтирование их с компаньонов, если это возможно (вы можете сделать это с /home
или /usr
, но не с /etc
).
Но пока система находится в разработке, вы можете не знать, сколько места вам понадобится на каждом разделе, поэтому лучше иметь только маленький раздел /root
и один большой другой раздел, например /shared
, который можно смонтировать. Затем вам нужно будет создать символические ссылки, например ln -s /shared/home /home
. Но убедитесь, что вы не сломали свою систему! Если вы попытаетесь переместить /bin
на общий раздел, /bin/mount
не будет найден при загрузке.
Без -рекурсивной привязки -монтирования корневого каталога в другом месте, например./srv/nfs/root
:
mount --bind / /srv/nfs/root
Затем экспортируйте /srv/nfs/root
.
Не выполняйте рекурсивную привязку (--rbind
), иначе такие каталоги, как /proc, /sys и /dev, также будут экспортированы.