また電子証明書の期限切れ
cronで自動化してあったハズなのに?
# /usr/bin/certbot renew
# systemctl restart httpd
ブログにログインすらできない。
再起動してもダメ
でもしばらく経ったらOKだった。
手動でdnf updateするとAppStreamが見えないとか言い出す
ググってみるとURLが変わったらしい
/etc/yum.repos.dをバックアップし
sed -i -e 's/mirrorlist=/#mirrorlist=/g' -e 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
※元ネタ
CentOS8 で dnf update が失敗する件
dnf updateしたら、1826個もあった。変わったのは相当前だったのかもしれない(笑
2021/11/04にcerbot-auto newしていたからその後らしいけど。
廃止 : centos-release-8.2-2.2004.0.1.el8.x86_64 1821/1826
廃止 : centos-repos-8.2-2.2004.0.1.el8.x86_64 1822/1826
警告: /etc/yum.repos.d/CentOS-fasttrack.repo は /etc/yum.repos.d/CentOS-fasttrack.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-centosplus.repo は /etc/yum.repos.d/CentOS-centosplus.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-Sources.repo は /etc/yum.repos.d/CentOS-Sources.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-PowerTools.repo は /etc/yum.repos.d/CentOS-PowerTools.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-HA.repo は /etc/yum.repos.d/CentOS-HA.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-Extras.repo は /etc/yum.repos.d/CentOS-Extras.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-Devel.repo は /etc/yum.repos.d/CentOS-Devel.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-CR.repo は /etc/yum.repos.d/CentOS-CR.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-Base.repo は /etc/yum.repos.d/CentOS-Base.repo.rpmsave として保存されました。
警告: /etc/yum.repos.d/CentOS-AppStream.repo は /etc/yum.repos.d/CentOS-AppStream.repo.rpmsave として保存されました
w
URLの変更が巻き戻されとる!
もう1回
# sed -i -e 's/mirrorlist=/#mirrorlist=/g' -e 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
# dnf update
CentOS Linux 8 - AppStream 4.8 MB/s | 8.4 MB 00:01
CentOS Linux 8 - BaseOS 4.7 MB/s | 4.6 MB 00:00
CentOS Linux 8 - Extras 6.3 kB/s | 1.5 kB 00:00
Remi's Modular repository for Enterprise Linux 8 - x86_64 3.0 MB/s | 3.1 kB 00:00
GPG 鍵 0x5F11735A をインポート中:
Userid : "Remi's RPM repository <remi@remirepo.net>"
Fingerprint: 6B38 FEA7 231F 87F5 2B9C A9D8 5550 9759 5F11 735A
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-remi.el8
これでよろしいですか? [y/N]: y
Remi's Modular repository for Enterprise Linux 8 - x86_64 153 kB/s | 973 kB 00:06
Safe Remi's RPM repository for Enterprise Linux 8 - x86_6 2.3 MB/s | 3.1 kB 00:00
GPG 鍵 0x5F11735A をインポート中:
Userid : "Remi's RPM repository <remi@remirepo.net>"
Fingerprint: 6B38 FEA7 231F 87F5 2B9C A9D8 5550 9759 5F11 735A
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-remi.el8
これでよろしいですか? [y/N]: y
Safe Remi's RPM repository for Enterprise Linux 8 - x86_6 474 kB/s | 2.1 MB 00:04
依存関係が解決しました。
行うべきことはありません。
完了しました!
#
しかも1826はMAX値なのか1826番目の関連パッケージが多すぎるのか?
以後、1826/1826表示が延々続く・・・(汗
更にcronが消えていたことも判明
# /etc/rc.d/init.d/crond status
-bash: /etc/rc.d/init.d/crond: そのようなファイルやディレクトリはありません
CentOS7以降はcronからcronie-noanacronに変わったので、
CentOS7以降はcronからcronie-anacronに変わったので、
自動 ndf updateで削除されてしまったのかな?
cronie-noanacronをインストしcronie-anacronをアンスコしてみた。
# sudo dnf install cronie-noanacron
メタデータの期限切れの最終確認: 0:01:41 時間前の 2022年03月19日 22時30分50秒 に実施しまし た。
依存関係が解決しました。
==========================================================================================
パッケージ アーキテクチャー バージョン リポジトリー サイズ
==========================================================================================
インストール:
cronie-noanacron x86_64 1.5.2-4.el8 baseos 19 k
トランザクションの概要
==========================================================================================
インストール 1 パッケージ
ダウンロードサイズの合計: 19 k
インストール後のサイズ: 396
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
cronie-noanacron-1.5.2-4.el8.x86_64.rpm 20 kB/s | 19 kB 00:00
------------------------------------------------------------------------------------------
合計 20 kB/s | 19 kB 00:00
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
準備 : 1/1
インストール中 : cronie-noanacron-1.5.2-4.el8.x86_64 1/1
検証 : cronie-noanacron-1.5.2-4.el8.x86_64 1/1
インストール済みの製品が更新されています。
インストール済み:
cronie-noanacron-1.5.2-4.el8.x86_64
完了しました!
# dnf remove cronie-anacron
依存関係が解決しました。
==========================================================================================
パッケージ Arch バージョン リポジトリー サイズ
==========================================================================================
削除中:
cronie-anacron x86_64 1.5.2-4.el8 @anaconda 49 k
トランザクションの概要
==========================================================================================
削除 1 パッケージ
解放された容量: 49 k
これでよろしいですか? [y/N]: y
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
準備 : 1/1
削除 : cronie-anacron-1.5.2-4.el8.x86_64 1/1
scriptletの実行中: cronie-anacron-1.5.2-4.el8.x86_64 1/1
検証 : cronie-anacron-1.5.2-4.el8.x86_64 1/1
インストール済みの製品が更新されています。
削除しました:
cronie-anacron-1.5.2-4.el8.x86_64
完了しました!
# systemctl restart crond
# systemctl status crond
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2022-03-19 22:42:46 JST; 4s ago
Main PID: 120900 (crond)
Tasks: 1 (limit: 23826)
Memory: 1.2M
CGroup: /system.slice/crond.service
mq120900 /usr/sbin/crond -n
(push q)
※元ネタ
【CentOS7】Cron(cronie-noanacron)をインストール
CentOS8でファイルを定期的にバックアップするcronの設定
statusこまんどがqキー押下するまで待ちになっているのも謎だけど
ここまで書いて【更新】したら
サーバがオフラインらしいよぉ?と泣き言
あ、消したssl.confが復活しとる。
パッケージのssl.confは手元のSSL化したバーチャルホスト設定ファイルとうまくかみ合わないので
# NameVirtualHost *:80
# SSL
Listen 443 https
SSLPassPhraseDialog exec:/usr/libexec/httpd-ssl-pass-dialog
SSLSessionCache shmcb:/run/httpd/sslcache(512000)
SSLSessionCacheTimeout 300
SSLRandomSeed startup file:/dev/random 256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin
Include vhost/*.conf
な内容のvhost.confで代用している。
だけ追記してもいいけどね。
なかなか面倒だなぁ
ps.2022/06/17
再びhttps期限切れ。
クローン化したのにどうしたのかな?
# systemctl status crond
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor prese>
Active: active (running) since Sat 2022-03-19 22:42:46 JST; 2 months 29 days>
Main PID: 120900 (crond)
Tasks: 1 (limit: 23826)
Memory: 13.1M
CGroup: /system.slice/crond.service
mq120900 /usr/sbin/crond -n
6月 17 17:01:01 **********.*********.***** CROND[1338801]: (root) CMD (run-par>
・・・
6月 17 21:05:01 **********.*********.***** crond[120900]: (curl) ERROR (getpwn>
・・・
# systemctl restart crond
# systemctl status crond
● crond.service - Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-06-17 21:45:51 JST; 11s ago
Main PID: 1350619 (crond)
Tasks: 1 (limit: 23826)
Memory: 1.2M
CGroup: /system.slice/crond.service
mq1350619 /usr/sbin/crond -n
6月 17 21:45:51 **********.*********.***** systemd[1]: Started Command Scheduler.
6月 17 21:45:51 **********.*********.***** crond[1350619]: (CRON) STARTUP (1.5.2)
6月 17 21:45:51 **********.*********.***** crond[1350619]: (CRON) INFO (Syslog will be used instead of sendmail.)
6月 17 21:45:51 **********.*********.***** crond[1350619]: (CRON) INFO (RANDOM_DELAY will be scaled with factor >
6月 17 21:45:51 **********.*********.***** crond[1350619]: (CRON) INFO (running with inotify support)
6月 17 21:45:51 **********.*********.***** crond[1350619]: (CRON) INFO (@reboot jobs will be run at computer's s>
何やらエラってたのでリスタート。
# /usr/bin/certbot renew
# systemctl restart httpd
で修復完了。
クローンのログを見ると
Jun 12 18:05:01 *********** crond[120900]: (curl) ERROR (getpwnam() failed - user unknown)
curlってユーザが無いということらしい。
wp-cron.phpを起動するトコで使っていたので、apacheに変えてみる。
certbotはログになかった???
時間が被って変になったのかもしれない毎月1日の04:03に変えてみる。
ps.2023/3/23
# dnf update
トランザクションの概要
================================================================================
インストール 6 パッケージ
アップグレード 561 パッケージ
削除 3 パッケージ
ダウンロードサイズの合計: 1.0 G
これでよろしいですか? [y/N]: y
・・・
ps.2023/08/31
なぜか証明書が更新されなかったのでコマンドラインから更新してみた。
# /usr/bin/certbot renew
Saving debug log to /var/log/letsencrypt/letsencrypt.log
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Processing /etc/letsencrypt/****************.***
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Renewing an existing certificate for ssiscirine.iobb.net
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations, all renewals succeeded:
/etc/letsencrypt/********************.*** (success)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
※ここまでを見ると証明書の更新は成功したようだ・・・
Hook 'post-hook' reported error code 5
Hook 'post-hook' ran with error output:
Invalid unit name "httpd
" was escaped as "httpd\x0d" (maybe you should use systemd-escape?)
Failed to reload httpd\x0d.service: Unit httpd\x0d.service not found.
※cronで指定したオプションがなぜか動き(ゴミファイルかな?)、しかも内容がマズかったらしい。ググってみるとapacheを起動しようとして失敗したようなので手動で再起動。
# systemctl restart httpd
8/1のletsencryptのログを見ると
–post-hook “systemctl reload httpd”
が直後のCR(\x0d)を誤って
–post-hook “systemctl reload httpd\x0d”
に観えたらしい。
このpost-hookで失敗したので
ヤバイと思ったのか、ちゃんと更新できた証明書も巻き戻したらしい。
/etc/cron.d/letsencryptの改行をCRLFからLFに治す。
動作テストには –force-renew –dry-run オプションを付ければいいはず。