揮発性のメモ2

http://d.hatena.ne.jp/iww/

Linux

journalコマンドで sudo の動作ログを見る

# journalctl -t sudo ・・・ 9月 18 17:03:43 chinko sudo[1970]: unko : TTY=pts/0 ; PWD=/home/unko ; USER=root ; COMMAND=/usr/bin/lssudo はユニットじゃないので、 -u は使えない。 ので、普通に識別子を使う journalctlコマンド - systemd管理のログ…

sshログイン時に "no hostkey alg" というエラーが出る

古いSSHクライアントで新しいSSHサーバに接続したらエラーになった。 クライアント側 OpenSSH_5.3p1 (CentOS 6.7) サーバ側 OpenSSH_8.8p1 (Fedora 37) dokuwiki.fl8.jpサーバ側は手が入れられなかったので、クライアント側で対処 とりあえずパスワード認証…

ZIPファイルを解凍せずにパスワードを付与したり解除したりする zipcloak

zipcloakコマンドを使う atmarkit.itmedia.co.jp zipcloakコマンドは zipのパッケージに入っている zipcloakというパッケージかなんかだと思い込んでいたので、zipと同じパッケージだと気づくのにずいぶん時間がかかった 対話型のコマンドなので、パスワード…

certbotのエラーを対処

サーバがなんか死んでたので再起動したら、WEBサーバが起動できない。 証明書の問題っぽかったので証明書を手動で更新したところ それもうまくいかず こういうエラーが画面に出力された OpenSSL.crypto.Error: [('PEM routines', 'PEM_read_bio', 'no start …

adduserとuseradd

どっちがどっちだかわかんねーな と思ってたら、redhat系では同じものだった。 マジかよ $ ls -l /usr/sbin/adduser /usr/sbin/useradd lrwxrwxrwx 1 root root 7 4月 10 14:46 2015 /usr/sbin/adduser -> useradd -rwxr-x--- 1 root root 101168 4月 7 18:5…

Fedora37にDockerをインストールする

Fedora37 dockerをインストールする方法 - 最新IT技術情報_arkgame.com 10.2. DNF リポジトリーの追加 Red Hat Enterprise Linux 9 | Red Hat Customer Portal dnfコマンド yumからDNFへの移行 - Qiita dnfコマンドはyumコマンドみたいなやつらしい。 yumが…

libcのバージョンを見る方法

lddコマンドで見るのが楽 $ ldd --version ldd (GNU libc) 2.3.2Debian 3.1 sarge $ ldd --version ldd (GNU libc) 2.12CentOS 6.7 $ ldd --version ldd (Debian EGLIBC 2.13-38+deb7u12) 2.13Debian 7 wheezy $ ldd --version ldd (Debian GLIBC 2.31-13+de…

PHP5.6でZipArchiveを使うと日本語ファイル名が化ける問題

Windowsで作ったZIPファイルはファイル名がSJISであり、これをLinuxのPHPでファイル名をUTF-8にして解凍したい。 という話 blog.narazaki.info PHPでZipArchiveを使うと、statIndex() が勝手に憶測で文字コード変換をするために文字コードが破壊されてしまう…

レッツノート CF-R4 の無線LANを有効にする

CF-R4J にインストールした Debian10 で ipw2200 を使えるようにする話wiki.debian.org/etc/apt/sources.list を編集し、全部に contrib non-free を追加する deb http://deb.debian.org/debian/ buster main contrib non-free deb-src http://deb.debian.or…

ntpdとかntpdateの代わりのやつ

systemd-timesyncd というのを使う man.kusakata.com 設定ファイル /etc/systemd/timesyncd.conf man7.org [Time] NTP=192.168.0.1 確認方法 timedatectl # timedatectl Local time: Thu 2022-12-01 10:28:15 JST Universal time: Thu 2022-12-01 01:28:15 U…

findで、指定バイト未満のファイルを削除する

名前が "*.dat" で 大きさが118バイト未満のファイルを削除する find . -name "*.dat" -size -118c -delete バイトの指定をするときは、サフィックス c をつける。 b はブロック(512バイト単位)になり、何もつけないときはブロックになる。 linuxjm.osdn.j…

/etc/network/interfaces で、USB-LAN用の設定

/etc/network/interfaces.d/HOGEHOGE で、抜いたり挿したりが発生するインターフェースは auto じゃなくて allow-hotplug で書く # 内蔵LAN auto eth0 #iface eth0 inet dhcp iface eth0 inet static address 172.16.0.2 netmask 255.255.0.0 gateway 172.16…

screenでシリアル接続

cuと違い、 /dev/ttyUSB0 の所有者とパーミッションをそのまま読んでそのまま動作するので、それだけで気分が良い。そもそもcuはなんか行儀の悪い動作をいっぱいしてるので気分が良くない。 ファイルディスクリプタ 3~1023 を念のため起動時に全部閉じると…

cuで、/dev/ttyUSB0のパーミッションがないと言われる

# cu -l /dev/ttyUSB0 cu: open (/dev/ttyUSB0): Permission denied cu: /dev/ttyUSB0: Line in userootでやってんので当然パーミッションはある # ls -l /dev/ttyUSB0 crw-rw---- 1 root dialout 188, 0 11月 10 10:44 /dev/ttyUSB0結局、ユーザを変えよう…

ufwで、インターフェースごとに設定をする

eth0のポート22のアクセスを許可する。 eth1とか他のは許さない ufw allow in on eth0 to any port 22on NIC名 を書くときは、 allow in の in をつけなければならない あと、to の省略もできなくなる 設定はこんな感じに表示される $ sudo ufw status numbe…

/usr/lib/rsyslog/rsyslog-rotate

/etc/logrotate.d/rsyslog に書いてある rsyslog-rotate とは /var/log/syslog { rotate 7 daily missingok notifempty delaycompress compress postrotate /usr/lib/rsyslog/rsyslog-rotate endscript } 正体はこういうスクリプトだった # cat /usr/lib/rsy…

/var/log/alternatives.log

alternatives.logは、update-alternativesコマンドを使用したときの専用ログらしい。これってそんな特別視するほどのコマンド? これ別ログにするなら、ついでに一緒に記録したほうが良い ヤバイコマンドもっとあるんじゃないの? なんか歴史的経緯的なやつ?…

nginxで、ログを全部syslogに飛ばす

/var/log/nginx というディレクトリを使用したくないんです! nginx.org ここにあるとおり、syslogに飛ばすには syslogサーバなりUNIXドメインソケットなりを指定する。 もっとも簡単なパターンは次の通り http { (中略) ## # Logging Settings ## access_…

auth.logで、pam_unix(cron:session): session opened for user root みたいなメッセージがずっと出ててうっとおしいやつ

/var/log/auth.log にて、CRONが動くときこういうログがずーっと出てて 超うっとおしいやつ Oct 24 19:28:01 unkoman CRON[22792]: pam_unix(cron:session): session opened for user root by (uid=0) Oct 24 19:28:02 unkoman CRON[22792]: pam_unix(cron:s…

busterで、ネットワークインターフェイス名をeth1とかに戻す

Debianでネットワークインターフェイス名を eth0, eth1, ... に戻したい。 とりあえず、 Debian10 buster での戻し方は分かった /lib/udev/rules.d/73-usb-net-by-mac.rules /lib/udev/rules.d/80-net-setup-link.rulesこの2つのファイルを読まれないよう無…

rsyslogで、ファシリティに応じて分岐する

LOCAL0 だけ別ファイルにしたい # ログファイル名テンプレート $template HOGE_LOG, "/var/log/hoge/%programname%.log" # ログフォーマットテンプレート $template HOGE_FORMAT, "%$now% %timestamp:12:23:date-rfc3339% %syslogtag%%syslogseverity-text::…

vimで日本語が文字化けする

あいうえお と入力してるのにこんななっちゃうやつ 筐A~B筐A~D筐A~F筐A~H筐A~Jエンコーディングが指定されていないとこうなる :set enc? encoding=latin1このときは ~/.vimrc などに次の設定を書くと良い set encoding=utf-8www.www-creators.com

sudoで、sudo: unable to resolve host というエラーが出るとき

/etc/hosts にホスト名を書けばいい、なんてことはわかっている。 ホスト名を書きたくないときにどうすればよいか Defaults !requiretty Defaults !fqdn # ★これ root ALL = (root) NOPASSWD: ALL Defaults !fqdn を設定すると名前を気にしなくなる superuse…

systemdのsocketで、接続元のIPアドレスを取得する

For IPv4 and IPv6 connections, the REMOTE_ADDR environment variable will contain the remote IP address, https://www.freedesktop.org/software/systemd/man/systemd.socket.html 環境変数 REMOTE_ADDR で接続元のIPアドレスを取得できる。

systemdで、socketを使ってエコーサーバを立てる 最小のユニットファイル

xinetdの代わりに。 次の2つのユニットファイルを同じ場所に作って登録する hogehoge.socket [Unit] Description=HOGEHOGE Echo Server Socket [Socket] ListenStream=0.0.0.0:16000 Accept=yes [Install] WantedBy=sockets.target hogehoge@.service [Unit…

Linuxで、ARPテーブルをクリアする

unix.stackexchange.com ip link set arp off dev eth0 ; ip link set arp on dev eth0なるほど乱暴だけど確実だ

viで、外部コマンドを実行する

viで外部コマンドを実行するのは :!コマンド bashとか実行すると、普通にそこからbashが起動する。exitでviに戻る。 viで外部コマンドを実行禁止する -Zオプションを付けて起動すると制限モードになり、外部コマンドなどなどが一切使えなくなる vim-jp.org

Linuxの起動日時を表示 3

uptime -s オプションで起動日時で表示してくれる。 自分で一生懸命計算する必要はなかった $ uptime 22:12:22 up 11:23, 1 user, load average: 0.21, 0.22, 0.18 $ uptime -s 2022-07-16 10:49:07

シンボリックリンクがどこを指しているかを取得する

$ ls -l hoge.conf lrwxrwxrwx 1 root root 28 Mon Jul 11 19:23:54 2022 hoge.conf -> /opt/unko/etc/hoge.conf 要はこの最後の -> の後ろの文字列が取得したい $ ls -l hoge.conf | awk '{print $NF}' /opt/unko/etc/hoge.conf www.soum.co.jp

certbotで let's encryptの証明書を 再取得する

なんか設定ファイルが壊れたりして 全部やりなおしたくなったとき /etc/letsencrypt を空にしてしまえば良い mv /etc/letsencrypt /etc/letsencrypt.bak mkdir -m755 /etc/letsencrypt certbot certonly --standalone -d unko.example.com teratail.com qiit…