Como posso alterar o fuso horário da largura de banda?

8

Existe alguma maneira de alterar o deslocamento UTC para os gráficos gerados pela largura de banda ?

tslocum
fonte

Respostas:

5

O código fonte usa e armazena carimbos de data e hora, que são fornecidos às funções C ctime () e localtime () para exibir a data na parte superior da página e na parte inferior dos gráficos.

Esses carimbos de data e hora do Unix não possuem fuso horário, o número de segundos desde 01-01-2009.
Para obter um horário legível por humanos, ctime () e localtime () ajustam automaticamente o fuso horário a ser usado de acordo com o fuso horário do sistema (por meio de uma chamada para tzset () ).

Forçando a TZ a hora de um comando

Você pode forçar de qualquer maneira o fuso horário para um determinado valor apenas pelo tempo de execução de um comando ou durante uma sessão inteira do daemon, como largura de banda . A variável de ambiente TZé lida por tzset () para ajustar o fuso horário, se definido.

Primeiro, veja as definições de fuso horário em /usr/share/zoneinfo

Então, por exemplo, cdno seu diretório pessoal em um terminal e faça um simples ls -lrtpara ver os arquivos mais recentes na parte inferior da lista. Em seguida, defina o fuso horário para Paris, França, por exemplo

export TZ="Europe/Paris"

e faça outra ls -lrt, a hora deve ser diferente (se houver um sistema configurado com um fuso horário definido como França, você poderá escolher outra TZ!).

Agora desative o TZ var, apenas para evitar alguns erros com base no tempo exibido no terminal.

unset TZ


Alterando o TZ da largura de banda

Eu suponho que você instalou o pacote bandwidthd do Ubuntu apt-gete você deve ter um arquivo init para que ele inicie como um serviço. Faça uma cópia em algum lugar do arquivo e edite-o como root ( vi ou outro editor)

sudo cp -p /etc/init.d/bandwidthd ~/bandwidthd.save
sudo vi /etc/init.d/bandwidthd

Perto do topo, você vê algumas definições de variáveis

NAME=bandwidthd
DESC=BandwidthD
...

adicione um (por exemplo, para Paris)

MYTZ="Europe/Paris"

então, mais abaixo na função startd () , você deverá ver

    cd $WORKDIR && start-stop-daemon --start --quiet \
            --pidfile $PIDFILE \
            --chdir $WORKDIR \
            --exec $DAEMON -- $DAEMON_OPTS

mude para

    cd $WORKDIR && start-stop-daemon --start --quiet \
            --pidfile $PIDFILE \
            --chdir $WORKDIR \
            --exec /usr/bin/env TZ="$MYTZ" $DAEMON -- $DAEMON_OPTS

(observe o /usr/bin/env TZ="$MYTZ"meio --exece $DAEMON).


Reinicie o processo

sudo service bandwidthd restart

e, pode levar alguns segundos, os arquivos devem ser atualizados, em um navegador aberto file:///var/lib/bandwidthd/htdocs/index.html(ou no diretório em que os arquivos estão gravados) para verificação.

Anel Ø
fonte