サイトマップ » R

  • Rocky Linux8.5 にSAS2008を認識させる
    【現環境】Linux ****.chovits.net 4.18.0-348.20.1.el8_5.x86_64 #1 SMP Thu Mar 10 20:59:28 UTC 2022 x86_64 x86_64 x86_64 GNU/LinuxRAID Card: MegaRAID SAS 9240-8i (SAS2008) 【更新前の状況】CentOS8.4より古いRAIDカードドライバーが削除(非対応)となり、マザーボード交換の際にOSを入れなおしたタイミング(OSをCentOS7系→8系)でRAIDカードがOSで認識されなくなった。CentOS7系にすれば動作するはずだが、当時調べた際の対応として、RepositoryのCentOSPlusでリリースされたKernelであれば、SAS2008が使えるとの情報があり、CentOSPlusのkernelを使っていた。その後CentOS8系のサポート終了となり、Kernelが標準ではない、CentOSPlusのkernelを使っているのも忘れ、RockyLinux8へそのままマイグレーション。再起動後、見事にOSが起動しなくなった。※ OS起動中にcoreダンプして止まる結局、RockyLinux8.5をクリーンインストールするも、RockyLinux8でもRAIDカード認識せず。色々と情報をgoogleったが、RockyLinux8はまだまだ情報も薄く有益な情報がない。本来のマシン用途(ファイルサーバー)が使えず、色々と支障が出てきたので、RockyLinux8 で、kernelはCentOSPlusのkernel 4.18.0-305.25.1.el8_4.centos.plus.x86_64を使う。yum でインストールするが、OS起動時にkernelの署名のmismatchでエラーが出て起動できず。マザーボードBIOSのUEFIセキュアモードをOFFにした。レガシーBIOSで起動しているはず。 【再挑戦】前置きが長くなったが、・ Rocky8.5
  • rsync 転送元のパス(絶対パス)を転送先ディレクトリで維持したい(階層構造を維持したい)
    結論からいうと、R(大文字)オプションを使えば良い。# rsync -avR /var/log /backup/実行完了イメージ- /backup       |- var       |    |- log       |    |    |- boot.log       |    |    |- auth.log       |    |    |-     :       |    |   
  • Rocky Linux8.6 にSAS2008を認識させる
    【環境】 Linux ******.chovits.net 4.18.0-348.23.1.el8_5.x86_64RAID Card: MegaRAID SAS 9240-8i (SAS2008)OS部分のHDD(SSD)は、マザーボードSATA接続その他データ領域として、マザーボード(PCI-E) => RAIDカード(SAS2008) => HDD 接続。RAIDカードが認識しなくても、OSは立ち上がる構成※ RAID未認識状態では、/etc/fstab でmountしているので、Diskが読み取れずEmergencyモードで立ち上がる 【更新時の状況】 (現在)   Kernel 4.18.0-348.23.1.el8_5(1つ前) Kernel 4.18.0-348.20.1.el8_5Kernel 4.18.0-348.20.1.el8_5 -> 4.18.0-348.23.1.el8_5 のUpdateでは、問題なくRAIDカード(SAS2008)を認識していた。(最新) Kernelが、4.18.0-372.26.1.el8_6リビルドバージョンが、 348系から372系と変わるので、RAIDカード認識しなくなるだろうなぁと思いながらもUpdate実施。まあ期待通りではあるのだがRAIDカードが認識しなくなり、Emergencyモードで立ち上がった。やっぱりか!Boot時に、1つ前のKernel
  • Redhat系Linuxで、レポジトリーに無いプログラムやperlモジュールのRPMを作成する
    【環境】 RockyLinux 9.0 【開発機を準備】 最近は、仮想OSがPCでも使える(VirtualBoxとか)ので便利。RPMをリビルドする際は、かなり多くのRPMを入れる。RPM化が済むとRPM化する為にインストールしたRPMは、通常稼働中は使われないので、リビルドマシンを準備したほうが、色々とメリットが大きい。 【リビルド時に必要なRPMをインストール】 準備として・ リビルドする為のディレクトリツリーの作成 (rpmdev-setuptreeコマンドを利用)・ ソースやソースRPMからRPMを作成するコマンド (rpmbuild)・ perlモジュールからRPMを作成するコマンド (cpanflute2) # dnf install rpmdevtools yum-utils gcc perl-CPANcpanflute2 (RPM-Specfile)は、RPMが無いのでCPANからインストール# cpancpan[1]> make RPM::Specfile/usr/bin/make -- OK OKが表示されたので、cpan[2]> install RPM::Specfilecpan[3]> exit 【リビルドする】 同じディストリビューションのLinux。今回で言えば、Redhat系のソースRPMであれば、SPECファイルをいじる必要は、ほとんどありません。※ パッケージ情報(rpm
  • Rocky8日本語環境でfail2ban利用時の通知メールで文字化けを解消する
    著者はRocky8にて、OSロケールを日本語に設定(LANG=ja_JP.utf8)しており、fail2banを動作させている。 [状況] 以下の設定/条件において、通知メールのメール本文が文字化けを起こす・fail2banの設定で、ban確定IPアドレスのwhois結果をメール通知設定(action = %(action_mw)s)・banIPが日本(JPNIC)管理のIPアドレスの場合 fail2banの通知メール(テンプレート)は、英語表記だが、日本(JPRS database)のwhoisサーバーで検索すると、whois結果は日本語で表示される結果、メール本文(whois結果の部分)が文字化けを起こす [対処方法] 日本(JPRS database)のwhoisサーバーで検索時は、/e 引数を追加すれば結果は英語表記となるが、/e 引数が世界標準かは未調査。日本人としては、せっかく日本語表記となっているので、通知メール(テンプレート)側で対応した。 ・「Content-Type: text/plain; charset="UTF-8"」を追記 action.d/sendmail-whois.conf actionban = printf %%b "Subject: [Fail2Ban] : banned from Date: `LC_ALL=C date +"%%a, %%d %%h %%Y %%T
  • RockyLinux (おそらくRH系OSなら・・・)で、dnf レポジトリを日本に限定
    dnf update 等を行うと、ダウンロード速度が遅い時がある。IPアドレスを確認すると、海外のレポジトリサーバーへ接続している場合がある。ロケーションは日本なので、日本のレポジトリサーバーへ接続して、ダウンロード速度を早くしたい 【RockyLinux】 /etc/yum.repos.d/xxxxx.repo のmirrorlist=URL の末尾に、&country=JP を追記する /etc/yum.repos.d/Rocky-BaseOS.repo の場合、mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=BaseOS-$releaseverをmirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=BaseOS-$releasever&country=JPと追記する 【Fedora】 /etc/yum.repos.d/xxxxx.repo のmirrorlist=URL の末尾に、&country=JP を追記する /etc/yum.repos.d/fedora.repo の場合、metalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearchをmetalink=https://mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch&country=JPと追記する 著者は、Rocky8 と fedora36 にて確認した。おそらくCentOSも同じように設定可能だと思われる。 他のRH系ディストリビューションは触った事が無いので未確認。yum時代は、fastestmirror.conf に「include_only=.jp」を指定していたが、dnfになってから設定方法が不明だった。
  • RockyLinux8 で、php7.4とphp8.2を共存させる (Apache + php-fpm構成)
    〇 要件 これまで、php7.4にてWEBサーバーを運用していたが、とあるアプリケーションのバージョンアップをする為には、php8.2 or php8.3に上げる必要があった。しかしながら、単純にphpを7.4 -> 8系に上げると稼働しているCMSが動作しない事が判明。まあ、諸事情によりCMSのphp8系対応は見通しが立たない。という訳で、とあるアプリケーションだけphp8系に上げる事にした。 [環境] ※導入前 ・Rocky Linux 8.9 (Green Obsidian)・httpd-2.4.37-62.module+el8.9.0+1436+2b7d5021.x86_64・php-7.4.33-1.module+el8.8.0+1150+ac720675.x86_64  → コンテンツは、php7.4にて稼働中 ※ この記事は検証環境で試して成功した段階で忘れないように執筆しています。    本番環境を弄った際に手順が異なったら、後ほど記事を修正します。 〇 Googleと・・・・ 世の中には同様に考えている人が多いもので、さくっと見た限りでは2通りの方法がある。・バーチャルホスト毎にphpバージョンを分ける・ドキュメントルート ディレクトリでphpバージョンを分ける。今回は後者のディレクトリでphpバージョンを分ける方法を選択した。 〇 php8系のインストール RockyLinux8のAppStreamは8.0までのようなので、Remiレポジトリを追加※ EPELリポジトリは既に設定済。未導入の場合は、依存関係で必要なRPMがあるので導入必須# dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm# dnf update 今回は、php8.2をインストールする。#
  • RockyLinux8 と Windows10間でiscsi接続設定
    PCのHDD容量が不足してきたため、ファイルサーバーのHDDの一部領域を、PCに割り当てたくiscsiで設定してみた 個人で利用している環境では、PCにドメイン名を設定せずに利用している事が多い。今回の設定では、ドメイン名が必要となるので、マイドメインを取得していない場合は、テスト用のドメインを利用して欲しい。今回は、example.jp を利用して情報を残しておく 2つの記事に分けて執筆しているので、必要に応じて参考にして頂きたい・ RockyLinux8 と Windows10間でiscsi接続設定 (iscsi ターゲットサーバー設定)  *** この記事 ***・ RockyLinux8 と Windows10間でiscsi接続設定 (iscsiイニシエーター設定)  (1) iscsi設定を行う為の事前情報 iscsiの設定を行うに辺り、iSCSI ターゲット名/イニシエーター名を事前に決めておく。命名規則があるので、フォーマットに倣って決定するフォーマットは [ iqn.年-月.ドメイン名の逆:任意の名前 ] 【環境】 ・サーバー (iscsiターゲットサーバー)     RockyLinux8.9     Hostname :
  • rsyslog にてロギングされる時刻フォーマットを変更したい
    著者が使用しているメインのLinuxディストリビューションはRockyLinuxシングルボードコンピューター(RaspberryPiやOrangePIなど)は、「Raspberry Pi OS」「Armbian」を使用している。Armbianの最新OSを使用しだしたら、rsyslogの時刻フォーマットが変更されていた。まあ、検証や調査等で他のディストリビューションを使用したりしていた時に、チラホラ見かけていたのだが。 (A) Armbian 24.2.1 bookworm で使用されているrsyslogの時刻フォーマット 2024-02-13T03:22:26.022354+00:00 orangepi5 kernel: [    4.767558] Linux version 5.10.160-legacy-rk35xx (armbian@next) (aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, GNU ld (GNU Binutils for
  • RockyLinux8 nftablesをDDNS対応(自宅のグローバルIPが動的の場合など)にしたい
    nftablesでは、IPアドレスやポート等の指定でアクセスコントロールを行う。FQDNでは登録が出来ない。しかしながら、githubを巡回している際に、まさに欲しかった機能を開発されているソースを見かけたので実装した。 〇 プログラム  azlux / nft-dns https://github.com/azlux/nft-dns 〇 動作 動作は至ってシンプルで、通常通りnftablesを動作させておき、nft-dnsが起動時に設定ファイルから、ホスト名(FQDN)を名前解決。nftコマンドで、予め定義されているテープルへIPアドレスで登録。 nft-dns 初回動作後はデーモンとして常駐。デフォルト300秒 スリープして再度名前解決。IPアドレスが変更されていれば、nftコマンドで再登録される。 〇 注意 アクセスコントロール(ACL)において、ホスト名(FQDN)で名前解決での登録は脆弱であるという考えもあると思う。代表されるものに、「DNSキャッシュポイズニング(キャッシュ汚染)」があるが、nft-dnsの設定ファイルで、名前解決するDNSサーバを指定出来る。信頼のおけるDNSサーバーを指定すれば、精神的に楽になるだろう。 〇 インストール debianではパッケージが用意されているようだが、RockyLinux用は無いので手動インストールを行う。 # dnf install python3.11.x86_64 python3.11-pip.noarch python3.11-pip-wheel.noarch    → デフォルトの3.6, 試しにインストした3.9では動作せず。        3.11 で動作確認 # dnf install python3.11-dns.noarch# pip3.11