Это значение устанавливается Suricata. Он использует "max-pending-packets" из вашего suricata.yaml и умножает его на 4
int r = NFQInitThread(ntv, (max_pending_packets * NFQ_BURST_FACTOR));
if (r != TM_ECODE_OK) {
, где NFQ_BURST_FACTOR равно 4. См. https://github.com/inliniac/suricata/blob/71a3c4caac22b475c09ee2f082cr011d443 -nfq.c # L712
Вы можете увеличить значение в вашем suricata.yaml. Если вы установите max-pending-packets равным 4096, вы должны получить результат, подобный следующему:
[6146] 7/6/2016 -- 20:31:12 - -- binding this thread 0 to queue '0'
[6146] 7/6/2016 -- 20:31:12 - -- setting queue length to 16384
Еще одна вещь, которую вы можете попробовать, - включить поддержку 'fail open'. Это означает, что на стороне ядра NFQ передает пакеты, когда Suricata не успевает за ними. Однако это приводит к риску безопасности, так как некоторые пакеты не будут проверяться.
Из suricata.yaml:
# On linux >= 3.6, you can set the fail-open option to yes to have the kernel
# accept the packet if suricata is not able to keep pace.
nfq:
# mode: accept
# repeat-mark: 1
# repeat-mask: 1
# route-queue: 2
# batchcount: 20
# fail-open: yes
Если вы раскомментируете последнее открытие, будет включена поддержка открытия при отказе.
Я определенно рекомендую увеличить длину очереди перед включением функции открытия при сбое.
La utilidad date
en macOS (que supongo que está utilizando a juzgar por la ubicación de los directorios de inicio del usuario )no es GNU date
y, por lo tanto, no es compatible con todas sus funciones.
Esto significa que su variable OLD_BACKUP
estará vacía (y debería ver un mensaje de error cuando se ejecuta date
), lo que a su vez significa que es el directorio ${BACKUP_DEST[$i]}
el que se elimina.
En su lugar, puede usar date -v -3d +'%d-%m-%Y'
.
#!/bin/bash
set -e
backup_dest=(
'/Users/christopherdavies/Desktop/rsync/test1.co.uk'
'/Users/christopherdavies/Desktop/rsync/test2.co.uk'
)
when=$( date -v -3d +'%d-%m-%Y' )
for backup in "${backup_dest[@]}"; do
[ -d "$backup/$when" ] && rm -Rf "$backup/$when"
done
Alternativamente, instale GNU coreutils y use GNU date
.
Otros cambios realizados en su código:
Eliminado exit 0
del final y agregado set -e
. Si el script falla, querrá poder notarlo.
No se usó la matriz del sitio web.
Recorra los elementos de la matriz en lugar de usar índices, es más fácil de leer.
Si desea una declaración simple if
de una sola línea, puede usar la sintaxis de cortocircuito en su lugar (, que es más corta ).
Use minúsculas -nombres de variables de mayúsculas y minúsculas.
Citar siempre expansiones variables.
Es un script bash
, por lo que debe hacer referencia a bash
en la línea #!
-.