2024年
7月
04日
木
京商エッグ マイクロヘリコプターがとても気になります。
ヘリコプターや飛行機のラジコンが身近になりましたね。
子供のころはスネ夫君くらいしか持っていませんでした。
2024年
1月
06日
土
Amazon Linux 2 を仮想マシンとしたオンプレミスでの実行(公式ドキュメント)
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/amazon-linux-2-virtual-machine.html
Amazon EC2(Linux)のネットワーク設定でハマったときに見るメモ
https://dev.classmethod.jp/articles/ec2-linux-network-conf-tips/
「/etc/resolv.conf」ファイル(名前解決の設定)
https://linuc.org/study/knowledge/507/
2023年
12月
18日
月
参考にした記事へのリンクです。
2022年
12月
21日
水
Win10 + wsl2 + dodkerの環境の作り方のリンクです。
WSL2 Ubuntu に Docker 導入(Docker Desktop for Windows に変えて)
起動方法
$ sudo service docker start
$ sudo systemctl start docker で起動すると、下記のエラーが起きる。
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
2022年
4月
13日
水
40代、男性、基礎疾患無しのワクチン接種の記録と感想です。
接種後、腕の痛みはあったが発熱等の症状は現れず。
徐々に体が怠くなる。
00:30 ひどい怠さがあったが、特に何もせず就寝。
07:30頃 起床。頭痛があった為、解熱、鎮痛剤を飲む。
08:00 37.0度の熱と軽い頭痛。その他、特に大きな症状無し。
12:00 38.3度の発熱と頭痛、酷い寒気。
13:00頃 症状が続いたため、再度、薬を飲む。
14:00 38.6度の発熱と頭痛、ひどい寒気。
昼寝をするも体調良くならず。
暖かくして寝たけど、まったく汗をかかず。
19:00 症状変わらず。再度、薬を飲む。
22:00 38.3度 ちょっと収まる。寒気は変わらず。
01:00 熱は変わらず。頭痛はほぼ収まる。体のだるさは残る。
07:30 36.8度まで下がる。体の違和感はほぼなくなったが、腕の痛みだけが残る。
2回目まではファイザーで、3回目はモデルナで、過去の経験は関係ないのですが、
大きな副反応は出ないで済むと思っていました。
2回目の時は、接種の次の日の朝が怠さのピークだった為、
今回も4/10の朝がピークでその後、だんだん収まると思っていました。
しかし、そこからが本番で、熱がどんどん上がり、38度代が長く続きました。
熱がなかなか下がらず、辛かったです。
最終的には、驚くくらいにすっと熱が下がり、体の怠さもなくなっていました。
3回目の副反応の経験からすると、4回目以降は受けなくて済むなら受けたくないと思いました。
2022年
3月
19日
土
xv6-riscvをWindows10で稼働するWSLで動作させ、Vscode上でデバッグする方法です。
ホストOS:Windows 10 Pro
ゲストOS:Ubuntu 20.04.4 LTS (Focal Fossa)
IDE:Visual Studio Code 1.40.1
プラグイン:Remote - WSL, C/C++, Japanese Language Pack for VS Code
$ sudo apt-get install git build-essential gdb-multiarch qemu-system-misc gcc-riscv64-linux-gnu binutils-riscv64-linux-gnu
ディレクトリを作成し、移動する。
$ mkdir xv6
$ cd xv6
githubからソースコードを取得する。
$ git clone https://github.com/mit-pdos/xv6-riscv
ソースをビルドしてqemuで実行する。
$ cd xv6-riscv
$ make qemu
成功すると下記の通りに表示され、コマンドが入力可能となる。
==================================================
xv6 kernel is booting
hart 2 starting
hart 1 starting
init: starting sh
$
==================================================
ctrl+a x で終了
下記の通りに.vscode/task.jsonを作成する。
==================================================
{
"version": "2.0.0",
"type":"shell",
"echoCommand": true,
"tasks": [
{
"label": "xv6 build",
"command": "make",
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "xv6 clean",
"command": "make clean",
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "xv6 run qemu",
"command": "make qemu-gdb",
"problemMatcher": [
"$tsc"
],
}
]
}
==================================================
下記の通りに、.vscode/launch.json
==================================================
{
"version": "0.2.0",
"configurations": [
{
"name": "debug xv6",
"type": "cppdbg",
"request": "launch",
"program": "/home/taka/develop/xv6/xv6-riscv/kernel/kernel",
"miDebuggerServerAddress": "127.0.0.1:26000",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"miDebuggerPath": "/usr/bin/gdb-multiarch",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"setupCommands": [
{
"description": "pretty printing",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"logging": {
"engineLogging": true,
"programOutput": true,
}
}
]
}
==================================================
.gdbinit.tmpl-riscv を開き、3行目”target remot …”をコメントアウトする。
==================================================
set confirm off
set architecture riscv:rv64
# target remote 127.0.0.1:1234
symbol-file kernel/kernel
set disassemble-next-line auto
set riscv use-compressed-breakpoints yes
==================================================
メニューの「ターミナル」-> 「タスク実行」-> 「xv6 run qemu」を選択する。
下記の表示となり、デバッガからの接続待ちとなる。
==================================================
> Executing task: make qemu-gdb <
*** Now run 'gdb' in another window.
qemu-system-riscv64 -machine virt -bios none -kernel kernel/kernel -m 128M -smp 3 -nographic -drive file=fs.img,if=none,format=raw,id=x0 -device virtio-blk-device,drive=x0,bus=virtio-mmio-bus.0 -S -gdb tcp::26000
==================================================
左メニュー「実行とデバッグ」を押下する。
表示された画面で、「debug xv6」を選択し、「デバッグの開始」(再生ボタン)を押下する。
接続が成功すると、下記の表示となり、デバッガによる操作が可能となる。
==================================================
xv6 kernel is booting
hart 2 starting
hart 1 starting
init: starting sh
$
==================================================
2020年
3月
19日
木
測定対象の環境は下記の通りです。
対象:Raspberry Pi 4 Model B
OS:Linux raspberrypi 4.19.97-v7l+
UnixBench:Version 5.1.3
==========================================================
BYTE UNIX Benchmarks (Version 5.1.3)
System: raspberrypi: GNU/Linux
OS: GNU/Linux -- 4.19.97-v7l+ -- #1294 SMP Thu Jan 30 13:21:14 GMT 2020
Machine: armv7l (unknown)
Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
CPU 0: ARMv7 Processor rev 3 (v7l) (0.0 bogomips)
CPU 1: ARMv7 Processor rev 3 (v7l) (0.0 bogomips)
CPU 2: ARMv7 Processor rev 3 (v7l) (0.0 bogomips)
CPU 3: ARMv7 Processor rev 3 (v7l) (0.0 bogomips)
23:08:32 up 1:42, 2 users, load average: 0.18, 0.05, 0.01; runlevel 2020-03-18
------------------------------------------------------------------------
Benchmark Run: 水 3月 18 2020 23:08:32 - 23:36:29
4 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 10136787.6 lps (10.0 s, 7 samples)
Double-Precision Whetstone 2386.2 MWIPS (9.6 s, 7 samples)
Execl Throughput 880.4 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 112943.5 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 31314.0 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 310654.0 KBps (30.0 s, 2 samples)
Pipe Throughput 158570.6 lps (10.0 s, 7 samples)
Pipe-based Context Switching 43743.9 lps (10.0 s, 7 samples)
Process Creation 1865.7 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 2517.7 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 725.2 lpm (60.1 s, 2 samples)
System Call Overhead 491874.5 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 10136787.6 868.6
Double-Precision Whetstone 55.0 2386.2 433.9
Execl Throughput 43.0 880.4 204.7
File Copy 1024 bufsize 2000 maxblocks 3960.0 112943.5 285.2
File Copy 256 bufsize 500 maxblocks 1655.0 31314.0 189.2
File Copy 4096 bufsize 8000 maxblocks 5800.0 310654.0 535.6
Pipe Throughput 12440.0 158570.6 127.5
Pipe-based Context Switching 4000.0 43743.9 109.4
Process Creation 126.0 1865.7 148.1
Shell Scripts (1 concurrent) 42.4 2517.7 593.8
Shell Scripts (8 concurrent) 6.0 725.2 1208.7
System Call Overhead 15000.0 491874.5 327.9
========
System Benchmarks Index Score 318.3
------------------------------------------------------------------------
Benchmark Run: 水 3月 18 2020 23:36:29 - 00:04:27
4 CPUs in system; running 4 parallel copies of tests
Dhrystone 2 using register variables 40400434.4 lps (10.0 s, 7 samples)
Double-Precision Whetstone 9528.3 MWIPS (9.6 s, 7 samples)
Execl Throughput 2696.1 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 218686.8 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 60307.8 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 618303.0 KBps (30.0 s, 2 samples)
Pipe Throughput 598961.4 lps (10.0 s, 7 samples)
Pipe-based Context Switching 195700.7 lps (10.0 s, 7 samples)
Process Creation 4720.9 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 5775.6 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 791.8 lpm (60.1 s, 2 samples)
System Call Overhead 1862650.3 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 40400434.4 3461.9
Double-Precision Whetstone 55.0 9528.3 1732.4
Execl Throughput 43.0 2696.1 627.0
File Copy 1024 bufsize 2000 maxblocks 3960.0 218686.8 552.2
File Copy 256 bufsize 500 maxblocks 1655.0 60307.8 364.4
File Copy 4096 bufsize 8000 maxblocks 5800.0 618303.0 1066.0
Pipe Throughput 12440.0 598961.4 481.5
Pipe-based Context Switching 4000.0 195700.7 489.3
Process Creation 126.0 4720.9 374.7
Shell Scripts (1 concurrent) 42.4 5775.6 1362.2
Shell Scripts (8 concurrent) 6.0 791.8 1319.7
System Call Overhead 15000.0 1862650.3 1241.8
========
System Benchmarks Index Score 857.9
Raspberry Pi 2 で測定したときは、419.8だったので、
倍以上の性能になっているみたいです。
2019年
12月
05日
木
コンパクトなKernel を Build して qemu で動かすことを目標にします。
下記のサイトに記載の内容を実施してみた結果です。
利用した環境は以下の通りです。
・ホストOS:Windows 10 Pro
・Linux 環境:WSL(Ubuntu 18.04.3 LTS)
・Build する Linux の Kernelのバージョン:linux-5.3.12
・QEMU emulator version 2.11.1(Debian 1:2.11+dfsg-1ubuntu7.20)
Kernel のBuildに必要な環境は整っている前提です。
・qemuをインストール
$ sudo apt-get install qemu
・その他
$ sudo apt-get install libncursesw5-dev
$ sudo apt-get install ncurses-doc
$ sudo apt-get install bison
$ sudo apt-get install dctrl-tools
$ sudo apt-get install flex
$ sudo apt install libelf-dev
$ sudo apt install libssl-dev
$ sudo apt install libcurl4-openssl-dev
$ sudo apt install libssl-dev
$ sudo apt install openssl
その他、必要な環境は下記を参考にする。
https://mongonta.com/f258-howto-build-linux-kernel/
ソースを配置するディレクトリを作成し、ソースをダウンロードする。
$ mkdir linux53
$ cd linux53
$ wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.3.12.tar.xz
$ xzcat linux-5.3.12.tar.xz | tar xfv -
下記のサイトを参考にしました。
「Linux を(わりと)シンプルな構成でビルドして Qemu で起動する」
記事では4系のカーネルですが、今回は5系で実施しました。
Kernelのコンフィグは、ほぼ、リンクの記事の通りです。
正しく動作すると下記のようになりました。
------------------------------------------------------------------------------
省略
random: get_random_bytes called from 0xffffffff8102df5f with crng_init=0
sched_clock: Marking stable (404304716, 86088419)->(493789505, -3396370)
input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input0
Freeing unused kernel image memory: 480K
Write protecting the kernel read-only data: 8192k
Freeing unused kernel image memory: 2036K
Freeing unused kernel image memory: 1828K
Run /init as init process
-----------HELLO------------
Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000000
Kernel Offset: disabled
---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000000 ]---
------------------------------------------------------------------------------
以下の記事の「BusyBoxでユーザーランドを作る」から先を進める。
「ビルドしたLinuxカーネルをブートできる最低限の環境を用意する(with Busybox & qemu)」
BusyBoxのビルドは下記のサイトを参考にしました。
qemuで実行する際に、下記のコマンドとする。
$ qemu-system-x86_64 -kernel ./bzImage -initrd ./rootfs.img -append "console=ttyS0 rdinit=/bin/sh" -nographic
起動すると下記のようになりました。
------------------------------------------------------------------------------
random: get_random_bytes called from 0xffffffff8102df5f with crng_init=0
sched_clock: Marking stable (416703671, 81781460)->(499244844, -759713)
input: AT Translated Set 2 keyboard as /devices/platform/i8042/serio0/input/input0
Freeing unused kernel image memory: 480K
Write protecting the kernel read-only data: 8192k
Freeing unused kernel image memory: 2036K
Freeing unused kernel image memory: 1828K
Run /bin/sh as init process
/bin/sh: can't access tty; job control turned off
/ # input: ImExPS/2 Generic Explorer Mouse as /devices/platform/i8042/serio1/input/input2
clocksource: tsc: mask: 0xffffffffffffffff max_cycles: 0x33e494b9d3a, max_idle_ns: 440795255743 ns
clocksource: Switched to clocksource tsc
/ #
/ # ls
bin dev linuxrc root sbin usrrandom: fast init done
------------------------------------------------------------------------------
2019年
11月
24日
日
VirtualBox上で動かすのは手間がかかるので、WSL上でxv6を動かします。
IDEを使ってソースの参照やデバッグができると便利なので、
Visual Studio Codeでソースを参照、ビルド、デバッグをできるようにします。
ホストOS:Windows 10 Pro
ゲストOS:Ubuntu 18.04.3 LTS (Bionic Beaver)
IDE:Visual Studio Code 1.40.1
プラグイン:Remote - WSL, C/C++, Japanese Language Pack for VS Code
ソースを置くディレクトリ:D:\develop\vscode\xv6
(1)環境準備
$ sudo apt-get update
$ sudo apt-get install build-essential
$ sudo apt-get install gcc-multilib
$ sudo apt-get install qemu
$ sudo apt-get install git
(2)ソースをダウンロード&コンパイル
$ cd /mnt/d/develop/vscode/xv6/
$ git clone git://github.com/mit-pdos/xv6-public.git
$ cd xv6-public/
$ make
$ make qemu-nox
⇒起動することを確認する。
カレントディレクトリをプロジェクトとして開いて起動する。
$ code .
⇒Visual Studio Codeが起動する。
.vscode\tasks.jsonファイルを作り、下記の内容を記述する。
----------------------------------------------------------------
{
"version": "2.0.0",
"type":"shell",
"echoCommand": true,
"tasks": [
{
"label": "xv6 build",
"command": "make",
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "xv6 clean",
"command": "make clean",
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "xv6 run qemu-nox-gdb",
"command": "make qemu-nox-gdb",
"problemMatcher": [
"$tsc"
],
}
]
}
----------------------------------------------------------------
メニューで、「ターミナル」→「ビルドタスクの実行...」を選択する。
「実行するビルドタスクを選択」で、「xv6 clean」を選択する。
「実行するビルドタスクを選択」で、「xv6 build」を選択する。
→ビルドが正常に完了することを確認する。
.vscode\launch.jsonファイルを作り、下記の内容を記述する。
----------------------------------------------------------------
{
"version": "0.2.0",
"configurations": [
{
"name": "xv6 debug",
"type": "cppdbg",
"request": "launch",
"program": "/mnt/d/develop/vscode/xv6/xv6-public/kernel",
"miDebuggerServerAddress": "localhost:26000",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "dir .",
"ignoreFailures": true
}
]
}
]
}
----------------------------------------------------------------
元のファイルをバックアップする。
$ cp .gdbinit.tmpl -p .gdbinit.tmpl_org
テンプレートファイルを開き、リモートデバッグ部分を消す。
$ vi .gdbinit.tmpl
23行目、24行目の下記の記述を消して保存する。
----------------------------------------------------------------
echo + target remote localhost:1234\n
target remote localhost:1234
----------------------------------------------------------------
①xv6を起動
メニューで、「ターミナル」→「タスクの実行」を選択する。
「実行するタスクを選択」で、「xv6 run qemu-nox-gdb」を選択する。
→下記の表示となり、デバッガの接続待ちとなる。
---------------------------------------------------------------
*** Now run 'gdb'.
qemu-system-i386 -nographic -drive file=fs.img,index=1,media=disk,format=raw -drive file=xv6.img,index=0,media=disk,format=raw -smp 2 -m 512 -S -gdb tcp::26000
---------------------------------------------------------------
②デバッガで接続
デバッグで「xv6 debug」を選択し、デバッガを実行する。
→接続が完了すると、ターミナルにxv6のプロンプトが表示される。
exec.c の 22行目にブレークポイントを指定して実行した画面です。
プロセスへのアタッチが制限されている場合は下記のコマンドで一時的に解除する。
$ echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
2019年
6月
18日
火
Remote Developmentを試したときのメモです。
<ローカル環境>
OS:Windows 10 Pro
VSCode:1.35.1
Remote Development:0.15.0
<リモート環境>
OS:Fedora Core 30
※ローカル環境のVirtual Boxの仮想マシン
「Remote Development using SSH」の記事に記載の手順で、
ほぼ、実現できます。
鍵認証をする際に、ファイルのセキュリティ設定を変更しないと、
下記のエラーが発生し、接続に失敗する。
---------------------------------------
permission denied (publickey gssapi-keyex gssapi-with-mic).
---------------------------------------
ファイルの権限変更は下記のサイトが参考になります。
https://qiita.com/RyutaKojima/items/81c47ad085ccb7c69a90
権限は、一回全てを削除してから追加しないと、
エラーが解消されないことがあるみたいでした。
2019年
5月
22日
水
Java プロジェクトをgithubからダウンロードしてeclipseにインポートする方法です。
1.eclipseを起動する。
2.「ファイル」メニューの「インポート」を選択
3.「Git」の「Gitからプロジェクト」を選択
4.「クローンURL」を選択
5.ソースGitリポジトリ―画面でURLやユーザ、パスワード等必要な情報を入れ、「完了」ボタンを押す。
6.ブランチを選ぶ。
7.クローンするディレクトリ等を選ぶ。
8.「新規プロジェクト・ウィザードを使用してインポート(P)」を選択する。
9.ウィザード画面で、「Javaプロジェクト」を選び、「次へ」を押す。
10.プロジェクト名を入力する。
「デフォルト・ロケーションを使用(D)」のチェックを外す。
ロケーションに、ローカルリポジトリのパスを入れる。
「完了」を押下する。
以上で、インポートが完了します。
下記サイトが、図入りで分かり易く解説されています。
http://turanegaku.hateblo.jp/entry/2016/01/05/203535
STSが入った環境で、Spring bootのプロジェクトをインポートした場合は、
プロジェクトを右クリックし、「Spring ツール」の
「Spring プロジェクト・ネーチャーの追加」を実行すると、
STSのツール類が使える状態になります。
2019年
5月
07日
火
OpenAMは、シングルサインオンを実現するソフトウェアです。
自力でビルドすれば使えるみたいです。
ビルドする方法は下記のサイトが参考になりそうです。
・OpenAMをビルドする
・OpenAM Consortiumのgithub
・OpenAM 本家?
https://github.com/OpenRock/OpenAM
2019年
5月
03日
金
気になるサイトのメモです。
・DevOps時代のテストエンジニア採用
http://kokotatata.hatenablog.com/entry/2019/05/01/191056
・仕事を任せられるエンジニアになるために意識してほしいこと
https://tech.tabechoku.com/entry/2019/05/02/182457?amp=1
2019年
5月
02日
木
Ftrace機能を実行するコマンドツール"trace-cmd"のフロントエンドツール。
参考
https://qiita.com/hana_shin/items/359240688a53c849593b
2019年
5月
02日
木
Spring Boot2 で画面を共通化する方法のメモです。
下記サイトの方法で、Spring Boot 1.4では動作しました。
https://www.saka-en.com/java/spring-boot-thymeleaf-layout/
Spring Boot2で同じことを実施したところ、
index.htmlの"html"タグ内に記載した
"layout:decorate="~{layout/layout}""が
解釈されず、正しく動作しませんでした。
pom.xmlに下記の内容を追記すると正しく動きました。
--------------------------------------------------------
<dependency>
<groupId>nz.net.ultraq.thymeleaf</groupId>
<artifactId>thymeleaf-layout-dialect</artifactId>
</dependency>
--------------------------------------------------------
"spring-boot-starter-thymeleaf"では、
"thymeleaf-layout-dialect"が含まれないようです。
試した環境のバージョンは下記の通りです。
・Spring Boot 2.1.4.RELEASE
・thymeleaf-3.0.11.RELEASE
・thymeleaf-layout-dialect-2.3.0
以下、参考になるサイトです。
・依存関係の確認方法
https://ts0818.hatenablog.com/entry/2017/09/14/223604
※依存関係の確認方法を参考にしました。
・Thymeleaf: Custom Layout Dialect
https://www.baeldung.com/thymeleaf-spring-layouts
2019年
2月
17日
日
2018年
10月
12日
金
先日、とある会でグラレコなるものを拝見しました。
グラレコとは、グラフィックレコーディングの略で、
会議でのプレゼンや議論の流れを視覚化し、
参加者へ共有する手法とのことでした。
視覚ベースでまとめられていて、興味深かったです。
参考
グラフィックレコーディングの練習法と活用法
http://www.webd-labo.com/?p=2091
2018年
10月
01日
月
Androidアプリの開発を勉強しようと思います。
Webの情報でも、どうにかなりそうなのですが、
書籍で基礎を抑え、Webの情報で補おうと思います。
以下、参考にした書籍とWebのリンクです。
Androidアプリの基礎や、環境の作り方から始まり、
Web APIを使った情報取得や簡単なゲームに始まり、
センサーを使ったゲームまでステップを踏んで説明されています。
書籍を辿っていくと、サンプルアプリを再現できて、
分かり易いように思います。
2018年
7月
16日
月
Spring boot でマルチデータソースに対応する方法です。
下記のサイトの通りに実装すると、ほぼ、実現できました。
「Spring bootでマルチデータソース対応の実装方法(MybatisとSpring Data JPA)」
下記の点だけが、掲載の通りでは設定値が正しく読み込めず、
connection URL null となり正しく動作しないケースがあるようでした。
dataSource()メソッド内で、設定値を個別に読み込む
ようにすることにより、マルチデータソースを実現できました。
2018年
5月
23日
水
ubuntu-17.10 の vim でcolorschmeを設定する方法です。
デフォルトでインストールされているVimでcolorschemeを設定すると、
下記のエラーが発生します。
-----------------------------------------------------------------------------
Error detected while processing /home/****/.vimrc:
line 1:
E319: Sorry, the command is not available in this version: syntax on
Press ENTER or type command to continue
-----------------------------------------------------------------------------
下記コマンドで、デフォルトで入っているvimを削除し、
完全版をインストールすると、colorschemeを変更できるようになります。
$ sudo apt-get --purge remove vim-common vim-tiny
$ sudo apt-get install vim
以下molokai を設定する場合の例です。
$ mkdir -p ~/.vim/colors
$ cd ~/.vim/colors
$ wget https://raw.githubusercontent.com/tomasr/molokai/master/colors/molokai.vim
$ ~/.vimrc
-----------------------------------------------------------------------------
colorscheme molokai
syntax on
-----------------------------------------------------------------------------
2018年
2月
01日
木
Linuxで、NIC冗長化(bondig)の設定方法です。
環境は、"CentOS release 6.9 (Final)"です。
eth1, eth3を使い、冗長化します。
# vi /etc/modprobe.d/bonding.conf
--------------------------------------------------------------------
alias bond0 bonding
options bond0 mode=1 primary=eth1 miimon=500
--------------------------------------------------------------------
※modeは、"参考"のリンクを参照。
・カーネルモジュールをロード
# modprobe bonding
・ロードされたことを確認する
# lsmod | grep bonding
--------------------------------------------------------------------
bonding 132885 0
--------------------------------------------------------------------
# vi /etc/sysconfig/network-scripts/ifcfg-bond0
--------------------------------------------------------------------
DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
NETWORK=192.168.0.0
NETMASK=255.255.255.0
IPADDR=192.168.0.11
--------------------------------------------------------------------
# vi /etc/sysconfig/network-scripts/ifcfg-eth3
--------------------------------------------------------------------
DEVICE=eth3
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
--------------------------------------------------------------------
# service network restart
ifconfigで確認すると下記の通りになります。
# ifconfig
bond0 Link encap:Ethernet HWaddr 08:00:27:CD:E0:6C
inet addr:192.168.0.11 Bcast:192.168.0.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fecd:e06c/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 Metric:1
RX packets:111646 errors:0 dropped:0 overruns:0 frame:0
TX packets:454440 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:12262305 (11.6 MiB) TX bytes:594355923 (566.8 MiB)
…省略…
eth1 Link encap:Ethernet HWaddr 08:00:27:CD:E0:6C
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:111556 errors:0 dropped:0 overruns:0 frame:0
TX packets:454439 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:12256375 (11.6 MiB) TX bytes:594355833 (566.8 MiB)
…省略…
eth3 Link encap:Ethernet HWaddr 08:00:27:CD:E0:6C
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 Metric:1
RX packets:90 errors:0 dropped:0 overruns:0 frame:0
TX packets:1 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:5930 (5.7 KiB) TX bytes:90 (90.0 b)
・LinuxでのNIC冗長化(bonding)を少し深く考えてみる
http://nosa.cocolog-nifty.com/sanonosa/2013/12/linuxnicbonding.html
2018年
1月
27日
土
Windows10にVirtualBoxを入れ、その上で動くCentOSのVM環境にDockerをインストールします。
各バージョンは下記の通りです。
Windows 10 Pro
VritualBox 5.2.6
CentOS Linux release 7.4.1708 (Core)
docker-ce-17.12.0.ce-1.el7.centos
インストールに使うユーザを"wheel"グループに追加する。
# gpasswd -a {USER} wheel
$ sudo yum remove docker docker-common docker-selinux docker-engine
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
$ sudo yum makecache fast
$ yum list docker-ce --showduplicates | sort -r
----------------------------------------------------------------------
利用可能なパッケージ
読み込んだプラグイン:fastestmirror, langpacks
インストール済みパッケージ
docker-ce.x86_64 17.12.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.0.ce-1.el7.centos @docker-ce-stable
docker-ce.x86_64 17.09.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
Loading mirror speeds from cached hostfile
* updates: ftp.iij.ad.jp
* extras: mirror.fairway.ne.jp
* base: mirror.fairway.ne.jp
----------------------------------------------------------------------
$ sudo yum install docker-ce-17.12.0.ce-1.el7.centos
$ sudo systemctl start docker
$ sudo docker run hello-world
----------------------------------------------------------------------
Hello from Docker!
This message shows that your installation appears to be working correctly.
…省略…
----------------------------------------------------------------------
$ sudo gpasswd -a {USER} docker
$ sudo reboot
$ sudo systemctl start docker
$ docker run hello-world
2018年
1月
22日
月
pacemakerのよく使いそうな操作のメモです。
# service corosync start
# service pacemaker start
# service pacemaker stop
# service corosync stop
# crm_mon -DArf
-D ヘッダを隠す
-A ノードの属性を表示
-r 停止中のリソースを表示
-f 障害回数
# crm_resource -L
・RAのパラメータを調べる
# crm ra info ocf:heartbeat:VIPcheck
# crm node standby {node}
# crm node online {node}
# crm resource cleanup {resource} {node}
# crm resource failcount {resource} delete {node}
# crm node standby ***
※全てのノードを上記コマンドでオフラインにする。
# crm resource cleanup {resource} {node}
# crm configure erase
# crm configure edit
メンテナンスモードを有効にすると、pacemakerを動作させたまま、リソースの
起動・停止・監視が行われないようになります。
・メンテナンスモードを有効にする
# crm configure property maintenance-mode=true
・メンテナンスモードを解除する。
# crm configure property maintenance-mode=false
メンテナンスモードを有効にすると、crm_monの画面で各リソースに"(unmanaged)"と
表示されます。
・エージェントの保存場所
/usr/lib/ocf/resource.d/heartbeat/
・動作ログ
/var/log/cluster/corosync.log
・リソースエージェントの説明
http://linux-ha.org/doc/man-pages/ap-ra-man-pages.html
・Pacemakerの概要
http://linux-ha.osdn.jp/wp/manual/pacemaker_outline
下記の状態となり、Split-Brainが発生した状態となっている。
・Primary
# cat /proc/drbd
version: 8.4.9-1 (api:1/proto:86-101)
GIT-hash: 9976da086367a2476503ef7f6b13d4567327a280 build by mockbuild@Build64R6, 2016-12-13 18:38:1
0: cs:StandAlone ro:Primary/Unknown ds:UpToDate/DUnknown r-----
ns:0 nr:0 dw:4 dr:712 al:1 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:269764
・Secondary
# cat /proc/drbd
version: 8.4.9-1 (api:1/proto:86-101)
GIT-hash: 9976da086367a2476503ef7f6b13d4567327a280 build by mockbuild@Build64R6, 2016-12-13 18:38:1
0: cs:StandAlone ro:Secondary/Unknown ds:UpToDate/DUnknown r-----
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:245212
# drbdadm -- --discard-my-data connect r0
# drbdadm connect r0
復旧すると、下記の表示となる。
# cat /proc/drbd
version: 8.4.9-1 (api:1/proto:86-101)
GIT-hash: 9976da086367a2476503ef7f6b13d4567327a280 build by mockbuild@Build64R6, 2016-12-13 18:38:15
0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
ns:65388 nr:3644 dw:204424 dr:181481 al:63 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
HAクラスタでできること!Pacemakerの構築運用に役立つノウハウを紹介!
http://linux-ha.osdn.jp/wp/wp-content/uploads/OSC2016Kyoto.pdf
2018年
1月
21日
日
qiitaの記事へのリンクです。
下記環境で試したところ、記事に記載された通りに構築できました。
OS:CentOS release 6.9 (Final)
Linux version 2.6.32-696.18.7.el6.x86_64
HA関係:pacemaker-1.1.12-1.el6.x86_64
corosync-2.3.4-1.el6.x86_64
kmod-drbd84-8.4.9-1.el6.elrepo.x86_64
drbd84-utils-8.9.8-1.el6.elrepo.x86_64
Database:Oracle 12c Standard Edition One
手順の通りに構築では、インターコネクトLANが切断された場合に、
それぞれが相手ノードを故障と判断し、両系でサービスを起動してしまいます。
最悪、Oracleのデータ領域の破損という事態が発生する可能性があります。
回避するために、VIPをチェックし、2重起動を防ぐ方法があります。
手順通りに構築した場合、下記のリソース追加とグループ設定をすると、
防止できます。
●リソース追加
--------------------------------------------------------------------
primitive vipcheck ocf:heartbeat:VIPcheck \
params target_ip="{VIP}" count=3 wait=5 \
op start interval=0 timeout=60 on-fail="restart" \
op stop interval=0 timeout=60 on-fail="ignore" \
op monitor interval=10 timeout=60 on-fail="restart" start-delay=0
--------------------------------------------------------------------
※5秒間の間に3回のECHO_REPLYを受け取った時に成功となる。
●グループの編集
--------------------------------------------------------------------
group grpora fs_ora vipcheck VIP1
ms ms-drbd_ora drbd_ora \
meta notify=true
--------------------------------------------------------------------
※VIP1よりも先にvipcheckが実行されるようにする。
2018年
1月
15日
月
MacOS + Kaspersky の組み合わせは相性が悪いみたいですね。
2016年製のMac Book air で、Kasperskyを使っていましたが、
重くて、ストレスでした。
「kav」というプロセスが、CPUのかなりの部分を占有するようです。
プロテクションの範囲の変更により、症状は軽減できるようですが、
試した感じでは限定的なように思います。
eclipse とか、andoroid studio とかとは特に相性が悪いように思います。
そんなわけで、ライセンス期間が残っていてもったいないのですが、
Kaspersky以外のセキュリティ対策ソフトを探そうと思います。
2018年
1月
15日
月
OS:Windows 10 Pro
仮想化ソフト:VirtualBox 5.2.4
割り当て:「ブリッジ アダプター」とする。
ゲストマシンへは、ホストマシンと同一セグメントの異なるIPを割り当てる。
「ブリッジ アダプター」とは、ゲストOSがホストOSと同じネットワークを
利用することになります。
ネットワーク上に異なるマシンが存在するように見えます。
ネットワーク設定|VritualBox
2017年
11月
29日
水
Linuxマシンを用意できないので、Windows 10 Pro にVirtualBoxをインストールし、
ゲストOSにUbuntuをインストールします。
xv6は、このUbuntuの上で動作させます。
ホスト:Windows 10 Pro 64bit
仮想化ソフト:VirtualBox5.1.30
ゲスト:Ubuntu 17.10 64bit
(1)インストールに必要なパッケージの導入
$ sudo apt-get update
$ sudo apt-get install build-essential
$ sudo apt-get install gcc-multilib
$ sudo apt-get install qemu
$ sudo apt-get install git
(2)xv6のソースをダウンロード
$ mkdir xv6
$ cd xv6
$ git clone git://github.com/mit-pdos/xv6-public.git
(3)xv6をビルド
$ cd xv6/xv6-public
$ vi Makefile
54行目付近のQEMUのコメントアウトを外し、下記の通りに変更する。
------------------------------------------------------------
QEMU = qemu-system-x86_64
------------------------------------------------------------
$ make
(4)起動
下記のコマンドで、起動する。
$ make qemu
右の画面のように起動する。
(5)停止
Ctl -a x でエミュレータを停止できるみたいです。
私の環境では、終了できなかったため、Alt tab でアクティブウィンドウを切り替え、終了しました。
・MITのOperating System Engineering
・コースウェアトップページ
https://pdos.csail.mit.edu/6.828/2017/index.html (2017年度)
https://pdos.csail.mit.edu/6.828/2016/index.html (2016年度)
・教科書とソース
https://pdos.csail.mit.edu/6.828/2017/xv6/book-rev10.pdf
https://pdos.csail.mit.edu/6.828/2017/xv6/xv6-rev10.pdf
2017年
11月
24日
金
ホストOS:Windows 10 Pro
ゲストOS:CentOS release 6.9 (Final)
ホストOSで、下記の操作をする。
(1)共有フォルダを作成する。(フォルダ名は、英数字とする。)
例)D:\develop\vmshared\centos69_64_2_shared
(2)VirtualBoxマネージャで設定対象の仮想マシンの設定を開く。
(3)共有フォルダを選択する。
(4)右にある"+"ボタンをクリックする。
(5)「フォルダーのパス」の右端の下向き三角ボタンをクリックし、(1)で作成したフォルダを
選択する。
「自動マウント(A)」、「永続化する(M)」にチェックを付け、「OK」ボタンを押す。
(6)「OK」ボタンをクリックして設定画面を閉じる。
以上の操作で、ゲストOSの"/media/sf_centos69_64_2_shared/"が、ホストOSとの
共有フォルダになります。
もし、見えない場合は、ゲストOSの再起動で、参照可能となります。
root以外のユーザでアクセスできるようにする場合は、対象のユーザをvboxsfグループに
所属させる。
コマンドは下記の通り。
# gpasswd --add taka vboxsf
2017年
10月
29日
日
Raspberry Pi でsshを有効化する方法です。
OS:Linux raspberrypi 4.9.56-v7+
ターミナルで設定ツールを起動する。
$ sudo raspi-config
"5 Interfaceing Options"を選択する。
"P2 SSH”を選択する。
"<はい>"を選択して有効化する。
"<了解>"を選択する。
次の画面で"<Finish>"を選択して、
設定ツールを終了する。
以上で、完了です。
デフォルトユーザ、初期パスワードの
ままだと、簡単にログインされてしまうので、
注意が必要です。
2017年
10月
29日
日
測定対象の環境は下記の通りです。
対象:Raspberry Pi 2 Model B
OS:Linux raspberrypi 4.9.56-v7+
UnixBench:Version 5.1.3
=====================================================================
BYTE UNIX Benchmarks (Version 5.1.3)
System: raspberrypi: GNU/Linux
OS: GNU/Linux -- 4.9.56-v7+ -- #1044 SMP Fri Oct 13 15:23:13 BST 2017
Machine: armv7l (unknown)
Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
CPU 0: ARMv7 Processor rev 5 (v7l) (0.0 bogomips)
CPU 1: ARMv7 Processor rev 5 (v7l) (0.0 bogomips)
CPU 2: ARMv7 Processor rev 5 (v7l) (0.0 bogomips)
CPU 3: ARMv7 Processor rev 5 (v7l) (0.0 bogomips)
00:45:40 up 10 min, 3 users, load average: 0.63, 0.36, 0.22; runlevel Oct
------------------------------------------------------------------------
Benchmark Run: 日 10月 29 2017 00:45:40 - 01:14:22
4 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 3068630.6 lps (10.0 s, 7 samples)
Double-Precision Whetstone 593.9 MWIPS (10.0 s, 7 samples)
Execl Throughput 321.1 lps (29.5 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 69933.3 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 20416.8 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 187251.0 KBps (30.0 s, 2 samples)
Pipe Throughput 161610.0 lps (10.0 s, 7 samples)
Pipe-based Context Switching 31776.8 lps (10.0 s, 7 samples)
Process Creation 1066.4 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 1133.9 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 318.6 lpm (60.1 s, 2 samples)
System Call Overhead 390687.5 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 3068630.6 263.0
Double-Precision Whetstone 55.0 593.9 108.0
Execl Throughput 43.0 321.1 74.7
File Copy 1024 bufsize 2000 maxblocks 3960.0 69933.3 176.6
File Copy 256 bufsize 500 maxblocks 1655.0 20416.8 123.4
File Copy 4096 bufsize 8000 maxblocks 5800.0 187251.0 322.8
Pipe Throughput 12440.0 161610.0 129.9
Pipe-based Context Switching 4000.0 31776.8 79.4
Process Creation 126.0 1066.4 84.6
Shell Scripts (1 concurrent) 42.4 1133.9 267.4
Shell Scripts (8 concurrent) 6.0 318.6 531.0
System Call Overhead 15000.0 390687.5 260.5
========
System Benchmarks Index Score 167.3
------------------------------------------------------------------------
Benchmark Run: 日 10月 29 2017 01:14:22 - 01:43:07
4 CPUs in system; running 4 parallel copies of tests
Dhrystone 2 using register variables 12247252.3 lps (10.0 s, 7 samples)
Double-Precision Whetstone 2368.1 MWIPS (10.0 s, 7 samples)
Execl Throughput 1142.4 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 106308.3 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 29414.6 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 282864.5 KBps (30.0 s, 2 samples)
Pipe Throughput 639825.7 lps (10.0 s, 7 samples)
Pipe-based Context Switching 113670.9 lps (10.0 s, 7 samples)
Process Creation 2575.1 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 2593.1 lpm (60.1 s, 2 samples)
Shell Scripts (8 concurrent) 342.3 lpm (60.4 s, 2 samples)
System Call Overhead 1505857.6 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 12247252.3 1049.5
Double-Precision Whetstone 55.0 2368.1 430.6
Execl Throughput 43.0 1142.4 265.7
File Copy 1024 bufsize 2000 maxblocks 3960.0 106308.3 268.5
File Copy 256 bufsize 500 maxblocks 1655.0 29414.6 177.7
File Copy 4096 bufsize 8000 maxblocks 5800.0 282864.5 487.7
Pipe Throughput 12440.0 639825.7 514.3
Pipe-based Context Switching 4000.0 113670.9 284.2
Process Creation 126.0 2575.1 204.4
Shell Scripts (1 concurrent) 42.4 2593.1 611.6
Shell Scripts (8 concurrent) 6.0 342.3 570.5
System Call Overhead 15000.0 1505857.6 1003.9
========
System Benchmarks Index Score 418.9
2017年
10月
26日
木
インストールするサーバの情報は下記の通りです。
OS:CentOS Linux release 7.4.1708 (Core)
EPELリポジトリを有効化する。
# yum -y install epel-release.noarch
補足)EPELリポジトリとは
CentOS標準のリポジトリでは提供されていないパッケージを
yumコマンドでインストールを可能にするリポジトリらしいです。
xrdpとtigervnc-serverをインストールする。
# yum -y install --enablerepo=epel xrdp tigervnc-server
以下の操作により日本語キーボードを導入する。
# cd /etc/xrdp
# wget http://www.mail-archive.com/xrdp-devel@lists.sourceforge.net/msg00263/km-e0010411.ini
# cp km-e0010411.ini km-0411.ini
# cp km-e0010411.ini km-e0200411.ini
# cp km-e0010411.ini km-e0210411.ini
以下の操作でサービスを起動し、自動起動を有効化する。
# systemctl start xrdp.service
# systemctl enable xrdp.service
以下の操作でRDPで使うポートへの接続を許可する。
# firewall-cmd --zone=public --add-port=3389/tcp
# firewall-cmd --permanent --zone=public --add-port=3389/tcp
「カラープロファイルを作成するには認証が必要です」と
表示された場合の対策です。
下記の設定をすると、管理者パスワードの入力を求められなくなります。
# vi /etc/polkit-1/rules.d/02-colord.rules
---------------------------------------------------------------------------------
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.color-manager.create-device" ||
action.id == "org.freedesktop.color-manager.create-profile" ||
action.id == "org.freedesktop.color-manager.delete-device" ||
action.id == "org.freedesktop.color-manager.delete-profile" ||
action.id == "org.freedesktop.color-manager.modify-device" ||
action.id == "org.freedesktop.color-manager.modify-profile") {
return polkit.Result.YES;
}
});
---------------------------------------------------------------------------------
クライアントからリモートデスクトップサーバへ接続する。
問題がなければ、CentOSのデスクトップ画面が表示されます。
# chkconfig --level 3 xrdp on
# iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 3389 -s 192.168.128.0/24 -j ACCEPT
# iptables -L
# service iptables save
# service iptables restart
# iptables -L
※FireWallの設定方法参考
https://help.sakura.ad.jp/hc/ja/articles/206208121
2017年
10月
25日
水
OS:CentOS release 6.9 (Final)
CPU:Intel Celeron_4x0 (Conroe/Merom Class Core 2)
※kvm上で動くVMです。
(1) インストール
下記コマンドで、ディレクトリ作成とソースを取得する。
$ mkdir unixbench
$ cd unixbench
$ git clone https://github.com/kdlucas/byte-unixbench.git .
(2) 実行
Runをすると、ビルドとベンチマークの実行が進みます。
$ cd UnixBench
$ ./Run
実行が終了すると下記のような結果が表示される。
=============================================================
BYTE UNIX Benchmarks (Version 5.1.3)
System: localhost.localdomain: GNU/Linux
OS: GNU/Linux -- 2.6.32-696.13.2.el6.x86_64 -- #1 SMP Thu Oct 5 21:22:16 UTC 2017
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
CPU 0: Intel Celeron_4x0 (Conroe/Merom Class Core 2) (3724.0 bogomips)
x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
21:24:30 up 4 min, 1 user, load average: 0.19, 0.35, 0.17; runlevel 2017-10-25
------------------------------------------------------------------------
Benchmark Run: 水 10月 25 2017 21:24:30 - 21:52:30
1 CPU in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 18557261.0 lps (10.0 s, 7 samples)
Double-Precision Whetstone 2010.1 MWIPS (9.9 s, 7 samples)
Execl Throughput 438.2 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 379385.2 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 111610.5 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 800073.8 KBps (30.0 s, 2 samples)
Pipe Throughput 774938.5 lps (10.0 s, 7 samples)
Pipe-based Context Switching 62575.2 lps (10.0 s, 7 samples)
Process Creation 1099.1 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 783.3 lpm (60.1 s, 2 samples)
Shell Scripts (8 concurrent) 99.9 lpm (60.4 s, 2 samples)
System Call Overhead 913825.1 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 18557261.0 1590.2
Double-Precision Whetstone 55.0 2010.1 365.5
Execl Throughput 43.0 438.2 101.9
File Copy 1024 bufsize 2000 maxblocks 3960.0 379385.2 958.0
File Copy 256 bufsize 500 maxblocks 1655.0 111610.5 674.4
File Copy 4096 bufsize 8000 maxblocks 5800.0 800073.8 1379.4
Pipe Throughput 12440.0 774938.5 622.9
Pipe-based Context Switching 4000.0 62575.2 156.4
Process Creation 126.0 1099.1 87.2
Shell Scripts (1 concurrent) 42.4 783.3 184.7
Shell Scripts (8 concurrent) 6.0 99.9 166.4
System Call Overhead 15000.0 913825.1 609.2
========
System Benchmarks Index Score 377.6
-----------------------------------------------------------------------------------------
2017年
10月
12日
木
TIREHOODが気になります。
ネットで近くの店舗を選んで、タイヤを購入する。
予約した日に店舗に行き、タイヤを取り付ける。
タイヤ館とかよりも安いように見えます。
Amazonや楽天でタイヤを買って、
取り付けてくれるお店を探すよりも手軽です。
2017年
10月
04日
水
Nexus5X 再起動ループのその後です。
・結論
結論としては、基板の交換で、費用は無償でした。
戻ってきた端末は、本体丸ごとの交換ではなく、
説明通りに基板だけが交換されたようです。
・その後の経緯
2017/09/30(土)LG社の窓口宛に送付しました。
2017/10/01(日)には、配達を試みたみたいですが、
休日のため、運送屋さん預かりとなりました。
2017/10/02(月)AMに、再配達で、LG社が受領しました。
その後、何も連絡がなく、月曜が過ぎました。
2017/10/03(火)お昼頃
LG社から修理済みのNexus5Xが宅配便で戻ってきました。
・感想
送り出してから、返却までが迅速な対応でした。
壊れてしまったこと自体には不満はあります。
しかし、保証期間を超えてからの破損だったにもかかわらず、
無償修理で直せてもらえたことは、良かったです。
故障は特定のロットで起きるものなのか、
経年劣化で発生しやすくなるものなのかが気になります。
修理後の物が、改善されたものなのか、
はたまた、単に正常に動くものに直されただけで、
今後、再び、発生する可能性があるのか。
いつ壊れてもいいように、データのバックアップだけは、
ちゃんと残すようにしようと思います。
あと、故障中、妻のお古の iPhone5S を代替機として
使っていたのですが、iPhone も素敵な端末ですね。
iPhone の良さを体験できたと思います。
2017年
10月
01日
日
2016/04/01くらいから使っているNexus5Xで、
再起動ループが発生し、使用不能になりました。
購入経路は日本のGoogle Playで購入し、
1年半くらいが経過していました。
購入後1年以上経過している場合は、LGが
対応してくれるみたいです。
修理に出すまでの流れです。
・LGへの問合せ
Google Playで購入し、1年を経過した場合、
どこに修理に出していいのかわからなかったので、
LGの下記サイトに問合せを投げました。
http://www.lg.com/jp/support/contact/chat-email
問合せに対して、1日以内に返信が来るとのことでした。
実際には、金曜の夜に送信して、土曜の午前には回答が
あったので、早い返信でした。
・返信の内容
再起動を繰り返す場合、操作で改善が難しく、
点検修理が必要となる。
キャリアで購入した場合はキャリアへ。
Google Playで購入し1年が経過してない場合はGoogle Playへ。
Google Playで購入し1年が経過した場合は、LGが故障対応をする。
点検後、有償修理の場合は見積もりを送付する。
修理キャンセルの場合は、無償で終了となる。
端末の送付は、着払いで送付する。
・点検・修理に出す
使い勝手に不満がなく、定期的にソフトのアップデートが
出され、お気に入りの端末だったので、ひとまず点検に
出すことにしました。
・所感
ネットで検索すると、再起動ループは発生事例が多いように思います。
(正常に動いている人は何もコメントせず、故障が発生した人が
コメントをすることが多いだけかもしれませんが。。。)
気に入っていただけに、1年半で使えなくなったことは残念です。
直すのにどのくらいかかるかも気になります。
スマホがない生活は不便ですが、点検に出してしまったので、
次の端末を買うかどうかは、点検の結果を踏まえて決めようと思います。
2017年
9月
24日
日
OpenJDKとOracleJDKの比較の記事です。
・OpenJDKは使い物になるか?
https://www.slideshare.net/hadoopxnttdata/openjdk-nttdata-oss-day-2015-autumn
・「アプリケーション実行基盤としてのOpenJDKの評価」
http://ossipedia.ipa.go.jp/doc/208/
2017年
9月
14日
木
CentOS release 6.9 (Final) 64bit
# yum -y localinstall https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-6-x86_64/pgdg-centos96-9.6-3.noarch.rpm
※PostgreSQLが提供するyumリポジトリは、下記で確認できる。
https://yum.postgresql.org/repopackages.php
下記コマンドを実行して、利用できるソフトウェアを確認する。
# yum list postgres*
# yum -y install postgresql96-server.x86_64
# su - postgres
$ /usr/pgsql-9.6/bin/initdb -E UTF-8 --no-locale -D /var/lib/pgsql/9.6/data
$ exit
# service postgresql-9.6 start
# service postgresql-9.6 stop
※停止は、必要な場合に実施すること。
下記コマンドで、デフォルトで起動するようにする。
# chkconfig postgresql-9.6 on
# su - postgres
$ psql
postgres=# ALTER USER postgres PASSWORD 'new_password';
postgres=# \q
$ exit
# vi /var/lib/pgsql/9.6/data/postgresql.conf
--------------------------------
listen_addresses = '*'
--------------------------------
59行目を 'localhost' -> '*' に変更し、他ホストからの接続を許可する。
# vi /var/lib/pgsql/9.6/data/pg_hba.conf
<変更前>
--------------------------------
local all all trust
--------------------------------
<変更後>
--------------------------------
local all all md5
--------------------------------
# service postgresql-9.6 restart
# su - postgres
$ psql
パスワード:
psql (9.6.5)
→ログインできることを確認する。
$ createuser -P testuser
・DBの追加
$ psql
postgres=# create database testdb;
CREATE DATABASE
・DB所有者の変更
postgres=# ALTER DATABASE testdb OWNER TO testuser;
postgres=# \q
$ psql -d testdb -U testuser
testdb=> create table test (id int, name text);
CREATE TABLE
testdb=> \d
リレーションの一覧
スキーマ | 名前 | 型 | 所有者
----------+------+----------+----------
public | test | テーブル | testuser
(1 行)
testdb=> insert into test(id, name) values(1, 'テスト');
testdb=> select * from test;
→ testテーブルにデータの挿入と検索ができる。
2017年
9月
13日
水
CentOS release 6.9 (Final)
(1)サーバにログイン
rootでサーバにログインする。
(2)sudoの設定
# visudo
---------------------------------------------------
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
---------------------------------------------------
上記の通り、98行目付近のコメントを外す。
wheelグループに所属するユーザは全てのコマンドを実行できるようになる。
(3)sudo設定したいユーザをwheelグループに所属させる
# usermod -G wheel *****
※*****は、設定対象のユーザ名
以上です。
2017年
9月
13日
水
rootでログインする。
# vi /etc/sysconfig/network
----------------------------------------------------
HOSTNAME=host.example.com
NETWORKING=yes
----------------------------------------------------
# /etc/rc.d/init.d/network restart
以上です。
2017年
2月
10日
金
今、お気に入りのVimの設定です。
・ベースにする設定
https://github.com/w0ng/vim-hybrid
・以下の内容を.vimrcに追記
---
set background=dark
colorscheme hybrid
set autoindent
set smartindent
set tabstop=4
set t_Co=256
---
2017年
2月
05日
日
パッケージの署名確認のためのGPG公開鍵のインポート方法です。
CentOS7の前提です。
<鍵をインポート>
# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
<GPG鍵の確認方法>
# rpm -qai gpg-pubkey*
・RPMコマンドオプション
-q:RPMパッケージ情報の表示
-a:インストールされている全パッケージ
-i:パッケージ情報を表示
2016年
7月
07日
木
CakePHPを使ったシステムを扱うことになったので、
軽く勉強しようと思います。
参考になりそうな記事のリンクです。
「忙しい人のためのCakePHP入門(by どっとインストール)
http://qiita.com/nekoneko-wanwan/items/9d792f46d570a45e4782
2016年
6月
08日
水
x86のネイティブコードの解析に関する記事です。
http://codezine.jp/article/detail/420
"Hello World"のプログラムをもとに、
GDBを使い、解析し、OSやライブラリの
仕組みを追及していく、下記書籍が興味深いです。
作者サイトから、必要となる資材が
ダウンロードできます。
環境の差異が発生せず、ほぼ、書籍の内容を
再現できます。
読み応えがあるので、時間にゆとりがある
学生時代に読みたかったと思う書籍です。
2016年
5月
31日
火
手頃なサイトが紹介されていて、参考になりそうだったので、
リンクを残しておきます。
・nynuts にゅーよーく・なっつ。:子供向けオススメ英語ニュースサイト
http://nynuts.hatenablog.com/entry/2015/01/04/141513
2016年
4月
22日
金
Microsoftの最新の開発環境の評価版です。
下記サイトからダウンロード可能です。
https://developer.microsoft.com/en-us/windows/downloads/virtual-machines
2016年7月9日まで、試せるみたいです。
VMWare, Hyper-V, VirtualBox, Parallelsの仮想マシン
イメージが公開されています。
サイズは約20GBです。
含まれるソフトは、下記の通りです。
・Windows 10 Enterprise Evaluation, Version 1511 (Build 10586)
・Visual Studio 2015 Community Update 2
・Windows developer SDK and tools (Build 10586)
・Windows IoT Core SDK and Raspberry Pi 2 (Build 10586.0.151029-1700)
・Windows IoT Core project templates (Version 1.0)
・Microsoft Azure SDK for .NET (Build 2.9)
・Windows Bridge for iOS (Build 0.1.160324)
・Windows UWP samples (Build 3.0.0)
・Windows Bridge for iOS samples
Windows7環境だと、試せないものもあるので、
とてもありがたいように思います。
Windows10も含めて、良かったら、Windows7から
アップデートしてしまうのもありかと思います。
以下、Windows Dev Centerの記事へのリンクです。
https://developer.microsoft.com/en-us/windows/downloads/virtual-machines
2016年
4月
20日
水
Pythonを使って、Webアプリケーションを作る方法のリンクです。
SimpleHTTPServer、CGIHTTPServerを使う方法が開設されています。
気軽に試せて、便利そうです。
・yifeの日記:PythonでWebアプリをつくる(ApacheもWebフレームワークもなしで)
http://yife.hateblo.jp/entry/2012/01/25/054210
2016年
3月
22日
火
test_path="/tmp/test/file.txt"
・ファイル名
echo ${test_path##*/}
⇒ file.txt
解説)
"*/"で表される文字列から最長一致の接頭部を除去する。
・ファイルパス
echo ${test_path%/*}
⇒/tmp/test
解説)
"/*"で表される最短一致接尾部を除去する。
仕事で得た技術、趣味で勉強したことなど、主に技術的なメモを書いていこうと思います。
一途ではありません。興味を持ったことに、つまみ食いをします。
あと、日常生活で興味深いこと等を書きます。