Com base nas informações disponíveis atualmente, presumo que você tenha uma CPU multi-core ou pelo menos multi-thread e que o despacho e o desacoplamento de problemas estejam permitindo a execução fora de ordem, causando anomalia fora de ordem no log saída. Eu usaria numactl
para iniciar seu script. Aqui está um exemplo:
numactl --physcpubind=0 /path/to/your/script
ou neste caso específico
numactl --physcpubind=0 /home/upload.sh
Isso executará seu processo no primeiro core / cpu atribuído ao seu chipset (índice 0), conforme listado em /proc/cpuinfo
Isso forçará o script a executar no máximo um thread simultaneamente, mas isso não significa que todo o processo será composto de apenas um thread. Se o programa for escrito para gerar um novo thread, ele será executado, mas será executado no mesmo core / cpu / thread que o restante do processo.
EDITAR: Observe que ao restringir seu processamento a um único encadeamento / núcleo / CPU isso pode resultar em um processamento mais lento da tarefa em questão.
Fontes:
man numactl