(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

IT-UNIX

【Linux/Bash】マルチバイトの文字列を文字数で切り出すスクリプト

やりたいこと 日本語含むマルチバイトな文字列に対して以下のように文字数で抽出を行いたい。 # ./wcut.sh あいうえお 3 あいう # ./wcut.sh あIうえお 3 あIう 環境情報 # cat /etc/os-release PRETTY_NAME="Debian GNU/Linux 9 (stretch)" ... やり方 以下…

【RHEL/Linux】イーサネットデバイスのMACアドレスを手動で変更する

やりたいこと RHELの仮想マシン上からネットワーク・インターフェースのMACアドレスを変更する。 環境情報 Red Hat Enterprise Linux Server 7.5 やり方 注意点 : 本操作を行うとネットワークから切断されるため、マシンと遠隔で接続している場合はWebコンソ…

【XML/文字コード】見た目は一緒にもかかわらずdiffで差異が出る事象の原因

事象 以下のように文字列として同じにもかかわらず cat 1.xml <div class="ac-container">cat 2.xml <div class="ac-container">diffの結果に差分が出る。 $ diff 1.xml 2.xml 1c1 < <div class="ac-container"> --- > <div class="ac-container"> 環境情報 $ bash --version GNU bash, バージョン 4.4.12(3)-release (x86_64-unknown-cygwin) 原因/解決策 XMLの空白文</div></div></div></div>…

【Linux/RHEL】パスワードの文字数制限を変えた場合の既存ユーザへの影響

はじめに Red Hat Enterprise Linux Serverではパスワードの最小文字数をminlenで指定できます。 本記事では同設定を変更した際にその制限に抵触するユーザの挙動を実機で確認しました。 コマンド実行環境 Red Hat Enterprise Linux Server 7.5 (Maipo) パス…

【GoogleAPI】curlで日本語URLを入力すると結果が文字化けするエラーの解消法

事象 以下のような日本語URLを利用するも # curl -L "https://script.google.com/macros/s/xx/exec?text='こんにちは'&source=ja&target=en"結果が文字化けして返ってくる。 {"code":200,"text":"'����������������'"} 環境情報 curl 7.52.1 (x86_64-pc-linu…

【Bash/Linux】sed -$Npを利用して特定の倍数行を表示するワンライナー

やりたいこと 以下のようなテキストファイルがあったとして $ cat test.txt a 1 A b 2 B c 3 C d 4 D数字が入った行(3で割って余りが2の行)のみを表示する。 環境情報 sed (GNU sed) 4.4 やり方 以下構文でファイルの3行目のみを抜きだすことができるの…

【Linux/SSH】ssh-keygenで生成された鍵のビット数を確認する

やりたいこと 既に作成済のSSH用の鍵のビット長(鍵長)を確認したい。 # cat id_rsa -----BEGIN PRIVATE KEY----- XwggSUXkAgSEAAoIBAQC2REYe... 環境情報 Red Hat Enterprise Linux Server 7.5 openssl.x86_64 1:1.0.2k-12.el7 やり方 ssh-keygenのlオプシ…

【Linux】NFSでサーバ/クライアントが共通のユーザIDマッピングを持つ重要性

はじめに セキュリティ観点でNFSを採用する際はサーバ側とクライアント側で共通のユーザID&グループIDの体系を持つことが推奨されています。本記事ではそれが満たされていない場合に何が起こるのかについて説明しました。以下をベースにサーバ/クライアント…

【RHEL/Linux】sudoコマンドのログをファイルに出力する設定 

やりたいこと sudoを付与して実行したコマンドをログファイルに吐き出したい。 環境情報 Red Hat Enterprise Linux Server 7.5 Sudo version 1.8.19p2(x86_64-redhat-linux-gnu) やり方 /etc/sudoersに出力先を以下のように記載し Defaults logfile=/var/l…

【Linux/bash】文字列としてのドットをsedで置換する

やりたいこと sedコマンドを利用して以下のような文字列を 1.テスト.csv 2.テスト.csv 3.テスト.csv以下のようにしたい 1テスト.csv 2テスト.csv 3テスト.csv 環境情報 $ sed --version sed (GNU sed) 4.4... やり方 /[\.]で置換を行う。 $ echo 1.テスト.cs…

【RHEL】snmptrapd.serviceを起動するも"No access configuration"と出力されるエラー

事象 snmptrapdサービスは起動しているも # systemctl status snmptrapd ▒▒ snmptrapd.service - Simple Network Management Protocol (SNMP) Trap Daemon. Loaded: loaded (/usr/lib/systemd/system/snmptrapd.service; disabled; vendor preset: disabled)…

【RHEL】netstatで開いているポート番号とプロセスを確認する

やりたいこと 以下のようにポート競合エラーが起きたため、サーバ上で開いているポート番号とそのポート番号を利用しているプロセスを確認する。 # docker-compose up xx ERROR: for xx Cannot start service xx: b'driver failed programming external conn…

【RHEL】systemd-tmpfiles-clean.timerで不要ファイルを削除する流れ

はじめに Linuxには systemd-tmpfiles-cleanと呼ばれるタイマー機能があり、一定期間更新が入っていないファイルを削除することが可能です。本記事では任意のディレクトリに対してこのタイマー機能でファイルを削除する機構を利用する流れについて記載しまし…

【RHEL】yumで特定パッケージのFinished Dependency Resolution Errorが出た際の解消方法

事象 yum installを実施した際に以下のようなエラーとなる。 --> Finished Dependency Resolution Error: Package: glib-networking-2.56.1-1.el7.x86_64 (xx) Requires: glib2(x86-64) >= 2.55.1 Installed: glib2-2.54.2-2.el7.x86_64 (xx) glib2(x86-64) …

【RHEL】nmcli con down ensX && nmcli con up ensX の注意点

はじめに RHELにてネットワークインターフェースに設定変更を加える際に、リロード目的でタイトルのコマンドを打つことがあります。 本記事では同コマンド群を打つ際の注意点を実機でコマンドを打った結果を元に解説します。 環境情報 Red Hat Enterprise Li…

【RHEL】オフライン環境でyumを利用するための資材をオンライン環境で用意する

はじめに オンライン環境(インターネットに接続)しているWindows端末でyumの資材を用意し、オフライン環境のRHELサーバにyumでモジュールをインストールする流れについて説明します。本手順はWindows端末に用意したCentOSのコンテナイメージを利用するので…

【Linux】chmodと拡張ACLを操作するsetfaclの違い

はじめに ファイルやディレクトリの権限を操作するコマンドchmodと似たコマンドにsetfacl(set file access control lists)があります。本記事ではコマンドの違いを実例付きで分かりやすく説明しました。 環境情報 RHEL 7.5 chmodはオーナーとグループでし…

【curlメモ】schannel: SNI or certificate check failedというエラーの回避方法

事象 URLに対してcurlコマンドを発行した際に $ curl https://test-output.hoge.jp以下のエラーとなる curl: (35) schannel: SNI or certificate check failed: SEC_E_WRONG_PRINCIPAL (0x80090322) - 対象のプリンシパル名が間違っています。 環境情報 ingr…

【Linux/RHEL】NFSマウント後に/etc/exportを編集すると起きる事象

はじめに NFSを利用するためにはサーバ側にて/etc/exportにクライアント側のIPを記載し、クライアント側は指定されたディレクトリをマウントします。その際、サーバ側にてやはりクライアント側からのアクセスを遮断したい場合は/etc/exportを書き換えて対応…

【Linux】数値データのパーセントタイルで値を切り出すスクリプト

はじめに Excelなどの表計算ソフトではデフォルトで入っているpercentileをLinuxで利用すべくスクリプトにしました。 方針としては数値データにて並び替えた上で行数を取得し、headとtailで切り出しています。 環境情報 Debian GNU/Linux 9 スクリプト 数値…

【Linux】bcコマンドで小数点を含んだ掛け算割り算を行う

やりたいこと 以下のような小数点を含んだ数値の四則演算を行いたい。 $ echo $((3*6*5.1)) -bash: 3*6*5.1: syntax error: invalid arithmetic operator (error token is ".1") 環境情報 Debian GNU/Linux 9 やり方 bcコマンドをインストールすれば # apt-g…

【Linux】任意の時刻フォーマットから時間の範囲で行を切り出す方法

はじめに 時刻データが保持されている行(例えば$1)を指定することで以下ワンライナーで値が切り出せるとのことですが $ awk -F - '"開始時間" < $1 && $1 <= "終了時間"' /var/log/secureワンライナーでなくても柔軟に値を抜き出したいことがあります。本…

【Linux】awkで先頭行と末尾の行を指定してその間を表示するワンライナー

やりたいこと 以下のようなテキストファイルがあった場合に $ cat test.txt H e l l o W o r l d4行目~7行目の以下部分だけを表示したい。 l o W o| コマンド実行状況 $ cat /etc/os-release PRETTY_NAME="Debian GNU/Linux 9 (stretch)"$ awk --version …

【Linux】カレンダーから任意の曜日の日付を取得するワンライナー

はじめに 以下記事ではUNIX系OSにて一連の日付を「yyyymmdd」形式で出力するワンライナーを解説しました。 本記事ではそこに条件を加えて第二土曜日(カレンダーにおいてその月の2回目の土曜日)を取得するワンライナーを説明します。 コマンド実行状況 $ c…

【Linux】lessコマンドを用いて出力結果を折り返さずに表示する

やりたいこと 以下のように画面で折り返される標準出力を $ kubectl config get-contexts CURRENT NAME CLUSTER AUTHINFO NAMESPACE hoge0/xxxxxxxxxx hoge0/xxxxxxxxxx testuser@hoge.com/yyyyyyy yyyyyyy default hoge1/xxxxxxxxxx hoge1/xxxxxxxxxx testu…

【RHEL】サブスクリプションをアタッチする手順

やりたいこと プロダクトをインストールするため、subscription-managerを使用してRHELサーバにサブスクリプション情報を登録する。今回はRed Hat OpenShiftをアタッチします。 環境情報 Red Hat Enterprise Linux Server VERSION="7.8 (Maipo)" 手順 以下コ…

【Linux】tmpfsを指定したRAMディスクの作成/削除手順

はじめに データをディスクではなくメモリ上に配置することで高速な読み込みを可能にする「RAMディスク」をRHEL環境で作成及び削除する手順を説明します。 環境情報 Red Hat EnterPrise Linux Server 7.6 メモリ容量の事前確認 同環境では meminfoにてー全体…

【Linux】ip routeで表示されるdev,via,src,protoの意味と見方

はじめに ip routeコマンドでよく見るタイトルの文言の意味とその見方を簡単に解説します。 尚、詳細が知りたければman ip routeでも確認可能です。 環境情報 Red Hat Enter Prise Linux Server 7.6 IP-ROUTE(8) dev/via/src/protoの意味 devはパケットを流…

【AIX】任意の時間にログインしていたユーザを特定する

やりたいこと ある時刻にてAIX機サーバにログインしていたユーザを調査する。 環境情報 AIX 7.1 やり方 lastコマンドにてログイン情報を表示してgrepコマンドで絞る。例えば9月7日の情報を見たければ以下とする。 $ last | grep "Sep 07"出力結果例は以下。 …

【Linux】viで保存時にE382: 'buftype'でエラーになる事象

事象 Linux環境で.vbaという拡張子のファイルを:wqで保存するも E382: 'buftype' オプションが設定されているので書込めませんというエラーで保存できない。画面キャプチャ 環境情報 $ bash --version GNU bash, バージョン 4.4.12(3)-release (x86_64-unkno…


他の記事を読む