IT備忘録

インフラエンジニアのIT備忘録です

LVMとファイルシステムについて

LVM(Logical Volume Manager)とは

LVMを利用すると複数のHDDやパーティションにまたがった記憶領域を一つのボリュームグループにまとめて単一の論理ボリュームとして扱うことができます。
OSのインストール後にもパーティション構成の拡大や縮小が行えます。

LVMおよびその他に関連する基本用語

物理ボリューム(PV) 物理的なパーティションをLVM用のパーティション(物理ボリューム)に変換する
ボリュームグループ(VG) 一つ以上のブル地ボリュームをまとめてプール化し物理エクステントとして論理ボリュームに割り当てる
論理ボリューム(LV) ボリュームグループともとに作成した論理ボリューム上にファイルシステムを作成しマウントする
物理エクステント(PE) LVMの扱うデータの最小単位
XFSファイルシステム RHEL7のデフォルトファイルシステム、最大ファイルサイズ/最大ボリュームサイズは500TiB

LVMおよびその他に関連するコマンド・ファイル

fdisk パーティションの作成/削除/システムタイプの変更/パーティションテーブルの書き込み
/etc/fstab OS起動時に自動でマウントする情報を記載したファイル
lsblk ブロックデバイス情報を一覧表示(HDDに新規パーティションを作成するための残容量があるか確認)
blkid バイスとUUIDの関連付け
lvmdiskscan LVM情報の表示
pvs / pvscan / pvdisply 物理ボリューム情報の表示
vgs / vgscan / vgdisply ボリュームグループ情報の表示
lvs / lvscan / vldisply 論理ボリューム情報の表示

LVMの注意点

XFSでは論理ボリュームの縮小ができないためパーティションサイズを縮小するには論理ボリュームの削除および再作成が必要になる。
ブートローダはLVMボリュームを読み込むことができないため/bootパーティションは標準パーティションになる。

LVMを利用するケース【HDDを追加して既存パーティション(/var)拡張する】
HDDの空き容量に新規標準パーティションを作成しシステムタイプ(LVM:8e)を変更
# fdisk /dev/sda
パーティション追加を反映するためにOS再起動
# reboot
新規パーティションをもとに物理ボリュームを作成
# pvcreate /dev/sda3
物理ボリュームを既存のボリュームグループに統合
# vgextend VolGroup /dev/sda3
論理ボリュームを拡張(最大サイズで拡張する場合)
# lvextend -l +100%FREE /dev/VolGroup/var
論理ボリュームを拡張(サイズしていで拡張する場合)
# lvextend -l L+5G /dev/VolGroup/var
拡張した論理ボリューム上のファイルシステムのサイズを拡張
# xfs_growfs /var
LVMを利用するケース【既存パーティション(/home)の縮小】
xfsdumpのインストール
# yum install xfsdump
psmiscパッケージをインストール(fuserコマンド利用のため)
# yum install psmisc
homeのダンプファイル(home.dump)を作成
# cd /work
# xfsdump -j -L home -M drive -f home.dump /home
homeパーティションをアンマウント
# umount /dev/VolGroup/home
アンマウントが失敗した場合は依存プロセスを停止(killコマンドによる停止)
# fuser -va /dev/VolGroup/home
# kill XXXX
アンマウントが失敗した場合は依存プロセスを停止(fuserコマンドによる停止)
# fuser -km /dev/VolGroup/home
論理ボリューム(homeパーティション)の利用停止(非アクティブ化)および削除
# lvchange -an /dev/VolGroup/home
# lvmore /dev/VolGroup/home
論理ボリューム(homeパーティション)を再作成(新規作成)
# lvcreate -L 500M -n home VolGroup
論理ボリュームにファイルシステムを新規作成しマウント
# mkfs.xfs /dev/VolGroup/home
# mount /dev/VolGroup/home /home
homeのダンプファイル(home.dump)のリストあ
# cd /work
# xfsrestore -J -L home -f home.dump /home
OS再起動時に自動的にマウントするように設定
vi /etc/fstab

文字コードのいろいろ

「符号化文字集合 (coded character set) 」と「文字符号化方式(character encoding schemeエンコード方式)」の違い

「符号化文字集合 (coded character set) 」は「どの文字を使いたいかの集合体」です。英数字の他に各国の文字の一覧です。
文字符号化方式(character encoding schemeエンコード方式)」は「文字集合のどの文字がどの数値に割り当てるのかを決めるルール」です。

符号化文字集合 文字符号化方式 備考
Unicode UTF-8 ASCIIと互換性がある
JIS X 0201/0208 EUC-JP UNIX系の日本語文字
JIS X 0201/0208 Shift_JIS ASCIIコードに日本語の文字を追加


参考にしたサイトです。
ferret-plus.com
itpro.nikkeibp.co.jp

zero-config.com
RHEL7 のシステムロケールを変更する - Red Hat Customer Portal

Ubuntuの基本的な使い方

ターミナルソフトの起動

「アプリケーションを表示する」→「端末」を起動する。

OSのバージョンを確認

# cat /etc/os-release

IPアドレスを確認

# ip a

事務処理の自動化について(Linux/Windows)

* bashシェルスクリプトの書き方

shebang

bash(インタプリンタ言語)シェルスクリプトである事を明記する
#!/bin/bash

if、case、forのサンプルコード

github.com

for awkコマンドのサンプルコード

github.com


□Wordマクロ
Wordファイルの先頭に移動
Selection.HomeKey Unit:=wdStory, Extend:=wdMove

現在の行から8行下に移動
Selection.Move Unit:=wdLine, Count:=8

現在の行から1行上に移動
Selection.Move Unit:=wdLine, Count:=-1

行を選択
Selection.StartOf wdLine
Selection.EndOf wdLine, wdExtend

選択範囲を削除
Selection.Delete


Excelマクロ
繰り返し処理

Do While 条件式
⇒条件式が真の間、繰り返し処理を実行

Do Until 条件式
⇒条件式が真になるまで、繰り返し処理を実行

Selection.End(引数).Select
Endモード(+Ctrl)で移動する。
引数はxlUp(↑)、xlDown(↓)、xlToRight(→)、xlToLeft(←)


自動化について参考にさせて頂いているサイト

language-and-engineering.hatenablog.jp

マクロの参考サイト
www.atmarkit.co.jp
tonari-it.com

RHEL7 / CentOS7のネットワーク関連のコマンド

ネットワーク関連のコマンドです

ネットワークデバイスのステータス/設定を確認(GUIから対話式に設定)
# nmtui

IPアドレス、デフォルトGW、DNSサーバ、起動時の有効化などが設定可能。

ネットワークデバイスのステータス/設定を確認(CUIからコマンドにより設定)
# nmcli device status
# nmcli con show ens33
IPアドレスの設定
# nmcli c mod ensXX ipv4.addresses 0.0.0.0/24
デフォルトゲートウェイの設定
# nmcli c mod ensXX ipv4.dateway 0.0.0.0
IPアドレスデフォルトゲートウェイの設定
# nmcli c mod ensXX ipv4.method manual ipv4.addresses "0.0.0.0/24 0.0.0.0"
DNSサーバの設定
# nmcli c mod ensXX ipv4.dns 0.0.0.0
ネットワークの接続を有効化/無効化

※/etc/sysconfig/network-scripts/ifcfg-ensXXの"ONBOOT"のパラメータ(yes/no)が書き換えられます。

# nmcli c mod ensXX connection.autoconnect yes
# nmcli c mod ensXX connection.autoconnect no
インタフェースの接続/切断
# nmcli connection up ensXX
# nmcli connection down ensXX
バイスの確認

※インタフェースが無効化でもデバイスは表示されます。

# nmcli d
# nmcli c
IPアドレスを手動設定/自動設定(DHCP)に設定する
# nmcli c modify ensXX ipv4.method manual
# nmcli c modify ensXX ipv4.method auto
ネットワークの再起動
# systemctl restart network
プロキシサーバの設定
profileを編集
# vi /etc/profile

以下の行を追加
PROXY='プロキシサーバ:8080'
export http_proxy=$PROXY
export HTTP_PROXY=$PROXY
export https_proxy=$PROXY
export HTTPS_PROXY=$PROXY

設定を反映
# source /etc/profile


以下のサイトを参考にしました。
server.etutsplus.com
thinkit.co.jp
CentOS 7 で ネットワーク(IPアドレス、ホスト名、ドメイン名など)の設定を行う | レンタルサーバー・自宅サーバー設定・構築のヒント
qiita.com

事務処理を効率良くするための方法(Mac編)

ショートカットキー

キー 機能
Command + Control + F 画面を最大化/画面を元に戻す
Command + Option + H アクティブ画面以外を最小化
control+d カーソル右の文字を削除
control+k カーソル右の文字を全て削除
control+a カーソルを行頭へ移動
Fn+F11 デスクトップ表示
command+shift+h ホームフォルダを開く
command+shift+u ユーティリティフォルダを開く
command+shift+a アプリケーションフォルダを開く
command+↑ Finderで上の階層に移動する
command+option+(←or→) ブラウザタブの移動
command + option + 2 ファイルを種類でソート
control + option + 2 WordPress記事の段落(見出し2)
command+shift+v Clipy起動(要インストール)

以下のキーは記号で表現されることがある

キー 記号
command
shift
option
control
caps lock
command + tab で最小化された画面も全面に表示する方法

command + tab で画面を切り替える際、最小化された画面は全面表示されませんが、以下の方法で最小化された画面も全面表示することが可能です。

  • [command + tab]→対象の画面を選択した状態で[option]を押す。


Finderのカスタマイズ

Finder起動時のディレクトリを変更する

[Finder]-[環境設定]-[一般]-[新規Finderウインドウで次を表示]

Finderサイドバーの表示項目を変更する

[Finder]-[環境設定]-[サイドバー]

Macでアプリケーションをログオン時に自動起動する方法

[システム環境設定]→[ユーザとグループ]→[ログイン項目タブ]→[以下の項目がログイン時に自動的に開きます:]に項目を追加する。

MacBookで使用しているアプリケーション

アプリケーション 機能
InsomniaX MacBookを閉じてもスリープしない
Clipy クリップボード保存

Windows Server 運用の備忘録

複数台のNTPサーバを設定する

ActiveDirectorドメイン環境に属していない場合はトリガー設定を削除する。
sc triggerinfo w32time delete
NTPサーバを複数台設定する。
w32tm /config /syncfromflags:manual /manualpeerlist:"NTPサーバ1 NTPサーバ2",0x8 /update /reliable:yes
NTPサーバ設定を同期する。
w32tm /resync
設定されているNTPサーバを参照する。
w32tm /query /status


Windows-NTPコマンド設定 CapmNetwork


SMTPサーバを指定してPowerShellスクリプトでメールを配送する


tech.lecume.net


コマンドの便利な使い方

単体で利用できるコマンドプロンプト

コマンド 内容
wmic qfe list 適応済みパッチリスト表示
pushd ファイルサーバパス カレントフォルダを指定パスに移動
certutil -hashfile ファイル名 MD5 ファイルのハッシュ値取得
fc file1 file2 file1とfile2の差異を比較
dir /b フォルダ内のファイル名一覧表示
Eventvwr.msc イベントビューアー起動

コマンドの末尾に[ | clip]を付けると出力先をクリッボードにコピーできます。


システムの復元

あらかじめ作成された復元ポイントまでシステムの状態を戻す。


コントロールパネル→システム→システムの保護→システムの復元

システムの復元ポイントを作成するにはシステム保護設定を有効(自動作成)または作成→システムの保護(手動作成)を行う。






Windows Server でトラブルが起きた場合の対応方法

イベントビューアーを確認する

コマンドプロンプト」や「プログラムを指定して実行」から「Eventvwr.msc」を入力しても起動できます。

各種アプリケーションのログを確認する

例えば次のようなログがあります。

  • SQL Server Management Studio(SSMS)の管理ログ
  • Internet Information Service(IIS)のログ

データコレクタセットでリソースを監視する

パフォーマンスモニターからデータコレクタセットを作成します。
主に以下のリソースを監視対象としますが、個別でカスタマイズしなくても「システムパフォーマンス」テンプレートを活用すれば良いと思います。


データコレクトセットの設定項目とその他に関連する設定

大項目 小項目 備考
データコレクタセットの作成方法 SystemPerformance(テンプレートから作成する) 対象サーバのシステムパフォーマンスを取得する
プロパティ(停止条件) 全体の期間 パフォーマンスモニターを自動的に停止させる必要がある場合に設定
プロパティ(停止条件) 最大サイズ パフォーマンスモニターファイルの容量の最大サイズ
データマネージャ 最大のフォルダー 保存するフォルダーの数、起動中のデータコレクタセットを停止したタイミングで最大のフォルダー数を超過した場合はリソースポリシーの条件に従いフォルダを削除
データマネージャ リソースポリシー フォルダが削除される際「古いものから削除」するか「大きいものから削除」するかを選択
データマネージャ ルートパスの最大サイズ 起動中のデータコレクタセットを停止したタイミングで最大サイズを超過した場合はリソースポリシーの条件に従いフォルダを削除する ※この条件は最大のフォルダー数よりも優先される
データマネージャ データ管理とレポート生成を有効にする html形式でのレポートを生成する
パフォーマンスカウンター ログフォーマット 保存形式を選択する「CSV形式」「バイナリ形式」などが選択可能
パフォーマンスカウンター サンプルの間隔 データを採取する間隔を指定、期間が短過ぎるとパフォーマンスモニターファイルが大容量になるため注意が必要
タスクスケジューラによる自動起動 MicrosoftWindows→PLA→対象データコレクタセット 「トリガー」より対象のデータコレクタセット自動起動するように設定
グループポリシーによる自動停止 Windowsの設定→スクリプト(ログオン/ログオフ) データコレクタセットの停止用スクリプトを設定する
データコレクタセット停止用スクリプト logman stop データコレクタセット バッチファイル(.bat)形式で作成しグループポリシーによる自動停止にてスクリプトを設定

その他の補足事項

データコレクタセットはOS起動時に自動起動しないためタスクスケジューラによる自動起動設定が必要になる
OSシャットダウンに伴いデータコレクタセットも強制的に停止するがレポート生成が行われないためグループポリシーによる自動停止処理が必要になる
※「コンピューターの構成」の「シャットダウン」時の停止の場合、レポートが正常に作成されないため「ユーザの構成」の「ログオフ」時に自動停止する必要がある
「最大のフォルダー」「ルートパスの最大サイズ」などはデータコレクタセットが(起動では無く)停止するタイミングでの基準となるため容量が超過しないように注意が必要
※「最大サイズ」はデータコレクタセット起動時に有効となる値なのでパフォーマンスモニターのサイズが容量を超過する心配は無い
relogコマンドを利用することにより「バイナリ形式」のログを「CSV形式」に変換できる