Отвечать на Ваш вопрос об обычном пользователе, если Ваша программа (принимающий основанный на сети сервер) использует непривилегированные порты (выше 1000), то пользователь может выполнить его без su/sudo.
Возьмите другое взятие на нем.
if ./server_automated_net_setup.sh; then
kill `ps x --no-header --format=pid,cmd | awk '!/awk/&&/ServerAPP/{print $1}'` 2>&-
cd $HOME/server/install-dir
nohup env LD_LIBRARY_PATH=./:$HOME/server/install-dir/lib_boost:$HOME/server/install-dir/lib_openSSL ./ServerAPP >& /dev/null &
fi
Необходимо было бы изменить Ваш server_automated_net_setup.sh
возвратить успех (0
) если что-то было обновлено и восстановлено, и отказ (1
) если ничто не изменилось.
Затем назовите этот сценарий от крона каждым периодом. Если Вы имеете каждую минуту, может быть слишком много диска, перегружающегося между обновлением и восстановлением программного обеспечения. Нет также ничего препятствующего тому, чтобы Вы назвали сценарий сами.
Для server_automated_net_setup.sh
, Я сделал бы что-то близко к:
wcdir=$HOME/source/myworkingcopy
if [ -n `svn status -qu $wcdir | awk '/^........\*/'` ]; then
gmake -C $wcdir svn-update rebuild deploy
echo $?
else
exit 1
fi
gmake
выполнил бы svn+update, прежде чем частичная сборка и копирование артефакта к каталогу установки (развернутся).
Что касается того, поскольку я могу найти, что только E5 Xeons поддерживается с sb_edac модулем
Начиная с версии 3.17 ядра Linux, ошибки ECC на E3 Xeon можно отслеживать с помощью драйвера ie31200_edac
, представленного этим коммитом . При этом используется стандартный интерфейс EDAC, поэтому ошибки могут быть перечислены с помощью edac-util
.
Более подробно:
sudo modprobe ie31200-edac
загружает драйвер, в результате чего в журнале ядра (в системе C216 Haswell) появляются строки вроде
[ 14.635299] EDAC MC: Ver: 3.0.0
[ 14.637898] EDAC MC0: Giving out device to module ie31200_edac controller IE31200: DEV 0000:00:00.0 (POLLED)
; тогда
`edac-util`
сообщит о любых ошибках.
Контроллеры памяти Xeon D, E5 и E7 поддерживаются с помощью модулей sb_edac
или skx_edac
.