私は現在、デュアルシステムPCウィンドウ(レガシー)とPop_!Os(UFEI)を開発しています。
最近、Windowsには存在しない時間の問題が発生しましたが、デバイスを再起動するたびにLinuxの時間と日付がめちゃくちゃになりました!ノートWindowsとLinuxの両方が異なるディスクにインストールされ、異なるUFEIパーティションを持っています。
私がしたことは次のとおりです。
- 私が作成したコマンドは、
date
ユーザーにパスワードを入力する必要はなく、次のようになります。郵便はがき。
time
私がディレクトリに作成した実行可能スクリプトには、次のものがif-up.d
含まれています。
#!/bin/sh
FLAGFILE=/var/run/work-was-already-done
case "$IFACE" in
lo)
# The loopback interface does not count.
# only run when some other interface comes up
exit 0
;;
*)
;;
esac
if [ -e $FLAGFILE ]; then
exit 0
else
touch $FLAGFILE
fi
sudo date -s "$(curl -s --head http://bing.de | grep '^Date:' | cut -d' ' -f 3-)"
echo $(date) >> /home/myPop/Desktop/timeLog.txt
sudo date -s "$(wget -qSO- --max-redirect=0 http://google.com 2>&1 | grep '^ Date:' | cut -d' ' -f 5-)"
echo $(date) >> /home/myPop/Desktop/timeLog.txt
-v`コマンドを呼び出した後、sudo ifup --all
次のようになります。
ifup: reading directory /etc/network/interfaces.d
/bin/run-parts --exit-on-error --verbose /etc/network/if-pre-up.d
run-parts: executing /etc/network/if-pre-up.d/wireless-tools
run-parts: executing /etc/network/if-pre-up.d/wpasupplicant
/bin/run-parts --exit-on-error --verbose /etc/network/if-up.d
run-parts: executing /etc/network/if-up.d/000resolvconf
run-parts: executing /etc/network/if-up.d/avahi-autoipd
run-parts: executing /etc/network/if-up.d/openvpn
run-parts: executing /etc/network/if-up.d/time
run-parts: executing /etc/network/if-up.d/wpasupplicant
実行すると、正しい日付と時刻がデスクトップのログファイルに書き込まれます。ただし、再起動すると、wget
この方法で生成されたデータがcurl
時間を変更せずに、今日の日付に基づいて以下を生成することがわかります。
Thu Oct 15 00:00:00 CEST 2020
Thu Oct 15 00:00:00 CEST 2020
私を混乱させるのは、なぜこれらの2つのコマンドが起動時に間違った時間を生成するのか、デスクトップが表示された後に実行されたときに正しい答えを提供する理由です。
/etc/adjtime
この手順に従ってファイルを削除しました。場所しかし違いはありません。私のBIOSの時間が間違っている可能性があると疑っていましたが、もう一度確認してみました。
私は専門家ではないので、ルータが間違った時間情報を提供するのではないかと疑っていましたが、学生の宿舎に住んでいてルータにデバイスにアクセスできないため、これを確認できず、私の家に行き、それを無効にするので、理論的にはデバイスはルータの
system setting-> date & time-> Automatic date & time
時間ですデータをインポートしません(可能な場合)。
どうすればよいかを提案してください。私は現在、すべての提案で開いています:).
よろしくお願いします。