computerの日記

Cisco,SHELL,C,Qt,C++,Linux,ネットワーク,Windows Scriptなどの発言です

pagure で pull request してみる

Fedorafedora-kickstartとうところで、作業した記録。

修正して、upstream に pull_request を送る方法

1年前にFedoraに貢献していたんですが、そのやり方を忘れていたので備忘録となります。

前提として、upstream/master は、fork されているものとします。

pagure で、自分の fork されたページを表示させておきます。

upstream が設定されているものとします。

$ git remote -v

されていなかったら設定します。

$ git remote add upstream https://pagure.io/fedora-kickstarts.git

upstream の修正を取り込む

$ git fetch upstream
$ git checkout -b fix-lxde-ja upstream/master

この上で、修正しました。今回は、l10n/fedora-livecd-lxde-ja_JP.ks を修正したものとします。

$ git add l10n/fedora-livecd-lxde-ja_JP.ks
$ git commit
$ git push -u origin fix-lxde-ja

web に行って、NEW PR ボタンをクリックする。
create をクリックする。
Merge されるのを待ちましょう。

(参考)
https://docs.pagure.org/pagure/usage/forks.html
https://docs.pagure.org/docs-fp-o/pull_requests.html

 

sar-analyzer の開発状況(20180504)

お疲れさまです。

sar-analyzer ですが、コードの最適化を行いました。

ビットパターンに、それぞれの項目を当てはめました。

今までは、それぞれの項目に int で宣言した変数を割り当てていたので、無駄を排除できたかなと考えています。

sar-analyzer の開発状況(20180422)

Z オプションにより、関係ある項目の最高と最低値がとれるようになっていましたが、CPU の値も、取れるようにしました。

また、ボチボチ直していきます。

github.com

Fedora27 で、VMware Workstation Player(無償版)を動かす

VMware のアイコンをクリックしても、モジュールのインストールでエラーとなって、VMwre Workstation Player(無償版)が起動できないでいました。

以下のページを参考にしました。

 

tar ファイルを解凍、エラーログを元に、コードを修正しました。

# cd /usr/lib/vmware/modules/source/

# cp -p vmmontar vmmon.old.tar

# tar xvf vmmon.tar

# cd linux

driver.c と、hostif.c の所定の箇所を、問題が出ないように修正すればよいと思います。

固め直します。

communities.vmware.com

# tar cvf vmmon.tar vmmon-only

# vmware-modconfig --console --install-all

しかしながら、私のカーネルが 4.15 のせいなのか、コンパイルに失敗します。

 以下のパッチを当てて、上記コマンドを実行したら、コンパイルが通りました。

github.com

 

VMware のアイコンをクリックします。

起動しました。

 追記:Vmware が、14.1 にバージョンアップされました。14.1 には、上記のパッチが当たっているようで、不具合が解消されています。

sar-analyzer の開発状況(20180408)

sar-analyzer ですが、コンテキストスイッチ関連について、最高と最低の値を出せるようにしました。今までは、平均の最高と最低だけでしたが、進歩です。

コンテキストスイッチの最高と最低値を出すには、-Z  オプションを渡してください。

LVM ファイルシステムタイプのハードディスクをマウントする方法

今、/dev/sdd2 に LVM ファイルシステムタイプがあるとします。
/dev/sdd1 には、/boot が存在しており、こちらはマウントできます。
/dev/sdd2 を普通にマウントしようとしても、以下のようになり、マウントに失敗します。

 # mount /dev/sdd2 /mnt/sdd2

mount: /mnt/sdd2: 未知のファイルシステムタイプ 'LVM2_member' です.

 /dev/sdd を調べます。

 # fdisk -l /dev/sdd

ディスク /dev/sdd: 1.8 TiB, xxxxxx バイト, xxxxxx セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 4096 バイト / xxxxxx バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xxxxxxx

バイス 起動 開始位置 最後から セクタ サイズ Id タイプ
/dev/sdd1 * 2048 xxxxxx xxxxxx 500M 83 Linux
/dev/sdd2 xxxxxx xxxxxx xxxxxx 1.8T 8e Linux LVM

 では、この /dev/sdd2 をマウントしていきます。
まず、利用可能な volumne group を調査します。
以下のコマンドを実行します。

 # pvs

PV VG Fmt Attr PSize PFree
/dev/sda2 fedora lvm2 a-- <1.82t 0
/dev/sdd2 fedora lvm2 a-- <1.82t 4.00m

 実際に起動している OS の VolumeGroup 名前と、ハードディスクの Volume Group の名前が、”fedora" と同一名となっているので、ハードディスクの Volume Group の名前を別の名前にでもリネームしてみます。

UUID を調べます。

# vgdisplay

--- Volume group ---
VG Name fedora
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size <1.82 TiB
PE Size 4.00 MiB
Total PE 476675
Alloc PE / Size 476675 / <1.82 TiB
Free PE / Size 0 / 0
VG UUID xxxxxxxxxxxxxxxxxx

--- Volume group ---
VG Name fedora
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 0
Max PV 0
Cur PV 1
Act PV 1
VG Size <1.82 TiB
PE Size 4.00 MiB
Total PE 476806
Alloc PE / Size 476805 / <1.82 TiB
Free PE / Size 1 / 4.00 MiB
VG UUID xxxxxxxxxxxxxxxxxx ★<----これを使う

vgrename コマンドを使用して、ハードディスクの方の Volume Group 名をリネームします。

# vgrename xxxxxxxxxxxxxxxx fedora_old

Processing VG fedora because of matching UUID
xxxxxxxxxxxxxxxx
Volume group "xxxxxxxxxxxxxxxx" successfully
renamed to "fedora_old"

では、volume groupe をもう一度見てみます。

# pvs

PV VG Fmt Attr PSize PFree
/dev/sda2 fedora lvm2 a-- <1.82t 0
/dev/sdd2 fedora_old lvm2 a-- <1.82t 4.00m

 これで、fedora という名前の重複はなくなりました。
ハードディスクのほうは、fedora_old となりました。

では、マウントしていきます。

 # vgscan --mknodes

Reading volume groups from cache.
Found volume group "fedora" using metadata type lvm2
Found volume group "fedora_old" using metadata type lvm2

 ここで、lvscan をかけても、ハードディスクのほうは、inactive となっています。

 # lvscan

ACTIVE '/dev/fedora/swap' [<7.84 GiB] inherit
ACTIVE '/dev/fedora/home' [1.76 TiB] inherit
ACTIVE '/dev/fedora/root' [50.00 GiB] inherit
inactive '/dev/fedora_old/swap' [7.81 GiB] inherit
inactive '/dev/fedora_old/home' [1.76 TiB] inherit
inactive '/dev/fedora_old/root' [50.00 GiB] inherit

 ここで、mount コマンドを実行しても、マウントできません。

 # mount /dev/fedora_old/home /mnt/sdd2

mount: /mnt/sdd2: スペシャルデバイス /dev/fedora_old/home が存在しません.

 inactive となっているものを、有効化します。

 # vgchange -ay

3 logical volume(s) in volume group "fedora" now active
3 logical volume(s) in volume group "fedora_old" now active

 もう一度確認します。

 # lvscan

ACTIVE '/dev/fedora/swap' [<7.84 GiB] inherit
ACTIVE '/dev/fedora/home' [1.76 TiB] inherit
ACTIVE '/dev/fedora/root' [50.00 GiB] inherit
ACTIVE '/dev/fedora_old/swap' [7.81 GiB] inherit
ACTIVE '/dev/fedora_old/home' [1.76 TiB] inherit
ACTIVE '/dev/fedora_old/root' [50.00 GiB] inherit

 では、もう一度マウントしてみます。

 # mount /dev/fedora_old/home /mnt/sdd2

マウントできたようです。