カテゴリー: Troubles errors
CATEGORY ARCHIVE
アクセスログを見ていたところ 「・・・/wp-json/wp/v2/posts/・・・」 といったアクセスがありそこにアクセスしたところ、いろんな細部の情報が表示される。 security上問題があるのではないかと思い、アクセスを禁止した。
参考にしたサイト
’https://www.webdesignleaves.com/pr/wp/wp_user_enumeration.html
コードと補足
単なるアクセス禁止だと、Gutenbergから「更新に失敗しました。 REST API is disabled」というメッセージが出る結果だっと。それで、結局上記の参考にさせていただいたページの「WP REST API を無効にする」の部分のコードを使わせていただいた。 function.phpに追加したコードは以下。
add_filter( 'rest_authentication_errors', function( $result ) {
if ( ! empty( $result ) ) {
return $result;
}
if ( ! is_user_logged_in() ) {
return new WP_Error( 'rest_not_logged_in', 'You are not currently logged in.', array( 'status' => 401 ) );
}
return $result;
});
投稿ナビゲーション
ubuntu20.04にバージョンアップした後、いろいろ問題が発生したがそのうちの一つにタイトルにある様なエラーがboot中のメッセージに現れた。 これに対してネットの情報を頼って対処していたところ本メッセージがでなくなったので記録として残しておく。 ただし、どれが効果があったのか特定できていないかもしれない。
トラブルの内容
boot中に
initramfs unpacking failed: Decoding failed
のメッセージが出る。 実害は不明
関係がある可能性のある環境要因
ubuntu 18.04 からubuntu 20.04にバージョンアップ Geforce 1060搭載 kernelは5.6に更新済み
効果があったかもしれない対処
sudo /etc/initramfs-tools/initramfs.conf
COMPRESS=lz4 を COMPRESS=gzip に変更
sudo update-initramfs -u
sudo reboot
grep 10de /lib/udev/rules.d/*
これで出力されるところの、 ATTR{power/control}=“auto” の部分を ATTR{power/control}=“on” に変更し,
sudo update-initramfs -u
sudo reboot
両方おこなってから、rebootしたのでどちらが正解か不明
投稿ナビゲーション
ubuntu20.04に更新したところ音声が出なくなった。 いろいろ試した後、vlc media playerからだけは音声を出すことができたの記録する。
試したのはいくつもあるが、いろいろ載っているのは下記サイトhttps://askubuntu.com/questions/1231602/no-sound-ubuntu-20-04-lts
トラブル内容
ubuntuを18.04LTSから20.04LTSへ更新後、vlc media playerからビデオの画像は表示されるが音声が出ない。 いろいろtryしたので下記だけでよいのかどうかは不明だが、ともかく最後に下記を行ったところ音声が聞こえる様になった。
最終的に行った対応
vlc media playerの画面から、「オーディオ(A)」-> 「オーディオデバイス(D)」を開き、(HDMI2)を選択しなおす。
まだ、音声で問題が残っているが、レンタルビデオが見れる様になったのでしばらくこのままで放置することにする。
投稿ナビゲーション
トラブル
使用しているubuntuで/var/log/syslogを覗いたところ、大量かつ頻繁に systemd-udevd[24420]: Process '/bin/chmod 0666 ' failed with exit code 1. と、いったかんじのエラーが出ていた。
調べたところ
systemd-udevdが出てくることから、 /etc/udev/rules.d/ 内の設定ファイルが関係しているのではと疑った。 そのディレクトリーの中のファイルで /bin/chmod 0666 があるのは、、/etc/udev/rules.d/99-sbig.rules だけであった。そのファイルの中に
# SBIG ST-L cameras
SUBSYSTEM=="usb", ACTION=="add", SYSFS{idVendor}=="0d97", SYSFS{idProduct}=="0002" , ENV{DEVTYPE}="usb_device", \
RUN+="/sbin/fxload -I /lib/firmware/sbiglcam.hex -D $env{DEVNAME}"
RUN+="/bin/chmod 0666 $env{DEVNAME}"
# SBIG ST-402/1603/3200 cameras
SUBSYSTEM=="usb", ACTION=="add", SYSFS{idVendor}=="0d97", SYSFS{idProduct}=="0003" , ENV{DEVTYPE}="usb_device", \
RUN+="/sbin/fxload -I /lib/firmware/sbigfcam.hex -D $env{DEVNAME}"
RUN+="/bin/chmod 0666 $env{DEVNAME}"
と、いったコードがあった。 USB ID DAtabase (the sz development) のサイトでidVendorとidProductから調べると、
0x0D97 Santa Barbara Instrument Group (SBIG) 0x0001 SBIG Astronomy Camera (without firmware)
であった。puroduct id=2,3についてはわからず。
work around
対処方法がわからなかったが(何か月か前に接続した激安カメラが関係か?)、相当しそうなものは接続していないので、ファイルを消して見ることにした。 syslogにfailedメッセージを吐くことは止まった。 副作用がないかどうかは不明だが、特に問題なく動いてそう。
sudo mv /etc/udev/rules.d/99-sbig.rules /etc/udev/rules.d/99-sbig.rulesbk
投稿ナビゲーション
Raspberry pi 2B v1.1で、SDHCでブートし、以降HDDを使う設定にしたが、何かの拍子で(おそらくrebootで)sudoが無効になってしまった。 例えば、sudoで行っているのに読み込み専用ファイルですとかのエラーが出る。
対応
sudo mount -o remount,rw / を実行すると、(一部エラーの表示がでるが)復活した。
SDHCで立ち上がっている?
※ /etc/rc.localに記述してもダメ また、systemctl --failed で見てみると、xrdpやpostfix, dovecot 他 が立ち上がっていない。 /etc/fstabに書いたがそこが読まれなかったのか?
投稿ナビゲーション
raspberry piでサーバー運用しているので稼働状況をメールで自動的にメールで送らせるようにする。
前提条件
OS : raspberry pi OS (buster) mail server: postfix+dovecot (これでないといけないというわけではない) 範囲 : LAN内でのみ使用 (securityは考えない)
方針
LAN内でのみ使用 postfixでサポートのsendmailインターフェースを使う (mutt でトライしたがうまく動かせず断念) 簡単のためシェルを使う メールのsubjectにはアルファベットを使う。 計測するデータは、cpuの温度、メモリー使用状況、SSD使用容量、smart状況
メール送信用コマンド
mytools/health.sh | sendmail -i -t
mytools/health.shが計測用シェル兼sendmailへのインターフェース部
シェルの中身
#!/bin/bash
echo from: sender_name@domain_name
echo to: receiver_name@domain_name
echo subject: raspi server status report
echo Content-Type: text/plain;charset="UTF-8"
echo
echo ------ date and time ----------
date
echo
echo ----- cpu temparature -----------
vcgencmd measure_temp
echo
echo ------- memory usage -----------
free -h
echo
echo -------- device usage ---------
df -h
echo
echo ------- SSD smart data ----------
smartctl -d sat -A /dev/sda
sender_name, receiver_name, domain_name, /dev/sdaは実際の値に調整する。
ユーザー追加
sudo useradd sender_name -s /sbin/nologin
sudo passwd sender_name
sudo mkdir /home/sender_name
sudo chown sender_name:sender_name /home/sender_name
下2行の必要性がよくわからないが、/var/log/mail.errに出てくるエラーを消すためにいろいろしていて、その結果上記の様にしたところメール送信ができたため。
cronの設定
次の様な内容のファイル(例えばhealthcheck)を作成し、/etc/cron.dに配置する。 なお、オーナーをroot にしておかないとcronがエラーになったのでrootにする。 超参考となったサイト:https://www.server-memo.net/tips/etc-crontab.html
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=""
HOME=/home/pi
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,$
# | | | | |
# * * * * * user-name command to be executed
7 10 * * * root /home/pi/mytools/health.sh | sendmail -i -t
7 22 * * * root /home/pi/mytools/health.sh | sendmail -i -t
sudoがcronの中で使おうとすると、"TTY onknown"となったのでsudoを使わないようにするsmartctlをcronの中で使えるようにする。従ってユーザーもrootとする。
最後は、メーラ側の設定を行いおしまい
投稿ナビゲーション