Установление соединения между компьютером с Fedora и удаленным сервером занимает более 10 секунд!

Я думаю, что эта проблема была связана с установленным жестким диском или твердотельным накопителем.

Что я делаю, так это то, что в crontab у меня есть сценарий оболочки @reboot startup.sh, который выполняется основным пользователем (uid 1000 ), и этот сценарий монтирует жесткий диск (, который он использовал. был хдд, теперь ссд):

sudo mount /dev/sdb1 /media/ssd1

Затем я создал shutdown.shскрипт, который выглядит следующим образом:

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#       Ensure that this is desired
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo ""
echo "---- do you really want to shutdown/reboot? ----"
echo ""
read -n 1 -p "no, yes? (N/y) " ans;
case $ans in
  y|Y) printf "\n\nok, preparing for shutdown/reboot\n\n";;
    *) printf "\nok, exited\n\n";       exit;;
esac

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#       DOCKER
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo ''
echo '--| stopping docker portainer |--';
echo ''
docker stop portainer

... stop more containers

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#       Python
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo ''
echo '--| killing all python processes |--';
echo ''
sudo pkill python

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#       MongoDB
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo ''
echo '--| exiting mongodb instances |--';
echo ''
mongod --dbpath /media/ssd1/data/mongodb/network/wiredTiger --shutdown

... stop more databases

echo ''
echo '--| deleting old mongodb logs |--';
echo ''
exec rm -rf {} \;"
sudo sh -c "find /media/ssd1/data/mongodb -type f -name 'log.txt.*' -exec du -ch {} + | sort -h"
sudo sh -c "find /media/ssd1/data/mongodb -type f -name 'log.txt.*' -exec rm -rf {} \;"

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#       Sync
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo ''
echo '--| syncing discs |--';
sync

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#       SSD
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo ''
echo '--| unmounting ssd1 and hdd5-1 |--';
echo ''
sudo umount /media/ssd1/

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#       Ask for next step
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo ""
echo "---- ok, done. what next? ----"
echo ""
read -n 1 -p "exit, reboot, or shutdown? (E/r/s) " ans;
case $ans in
  r|R) printf "\n\nok, rebooting\n\n";    sudo reboot </dev/null;;
  s|S) printf "\n\nok, powering off\n\n"; sudo poweroff </dev/null;;
    *) printf "\nok, exited\n\n";       exit;;
esac

С помощью этого я могу как выключить, так и перезагрузить систему. Так что, возможно, это было связано с тем, что диск явно не размонтировался, а также не выполнялась синхронизация перед выключением / перезагрузкой.

Как упоминалось в комментариях, я заметил, что один контейнер (RabbitMQ )создавал огромный файл журнала (, который вырос до 40 ГБ ). Возможно, синхронизация этого файла вызывала проблемы, когда он пытался синхронизировать его в почти выключенном состоянии. Но я не уверен, потому что у меня была эта проблема практически с самого начала, и, насколько я знаю, изначально я не запускал RabbitMQ.

1
29.10.2020, 16:54
1 ответ

Спасибо всем, кто уделил этому вопросу немного времени. Написав вопрос, я вспомнил, что изменил DNS в своем маршрутизаторе, поэтому я проверил, какой DNS используется моей машиной :cat /etc/resolve.conf

и обнаружил, что это тот, который определен в моем маршрутизаторе, я изменил его на 8.8.8.8, и теперь он работает как положено.

3
18.03.2021, 22:53

Теги

Похожие вопросы