ためすう

マシンのスペックを調べる方法

2018-09-23

目的

マシンのスペックを調べる方法になります。

Mac では動くけど、 CentOS では動かないプログラムがあったので調査のためマシンのスペックをそれぞれ調べます。

方法

Mac のスペックを調べる

下記コマンドで調べることができます

$ system_profiler SPHardwareDataType

※ 一部 x で情報を伏せています。

Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro11,3
      Processor Name: Intel Core i7
      Processor Speed: 2.5 GHz
      Number of Processors: 1
      Total Number of Cores: 4
      L2 Cache (per Core): 256 KB
      L3 Cache: 6 MB
      Memory: 16 GB
      Boot ROM Version: MBP112.0146.B00
      SMC Version (system): 2.19f12
      Serial Number (system): XXXXX
      Hardware UUID: XXXXX

Cent OS のスペックを調べる

Virtual Box で試してみました。

$ cat /etc/redhat-release
CentOS release 6.5 (Final)
$ cat /proc/version
Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013
$ cat /proc/cpuinfo
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 70
model name	: Intel(R) Core(TM) i7-4870HQ CPU @ 2.50GHz
stepping	: 1
cpu MHz		: 2494.451
cache size	: 6144 KB
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx rdtscp lm constant_tsc up rep_good xtopology nonstop_tsc pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx rdrand lahf_lm abm avx2
bogomips	: 4988.90
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:
$ cat /proc/meminfo
MemTotal:         469452 kB
MemFree:           17892 kB
Buffers:            2980 kB
Cached:            31916 kB
SwapCached:         6052 kB
Active:           179468 kB
Inactive:         196776 kB
Active(anon):     168616 kB
Inactive(anon):   183976 kB
Active(file):      10852 kB
Inactive(file):    12800 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:        950264 kB
SwapFree:         821776 kB
Dirty:                 4 kB
Writeback:             0 kB
AnonPages:        336028 kB
Mapped:            20112 kB
Shmem:             11244 kB
Slab:              58108 kB
SReclaimable:       8248 kB
SUnreclaim:        49860 kB
KernelStack:         832 kB
PageTables:         9096 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     1184988 kB
Committed_AS:    1068704 kB
VmallocTotal:   34359738367 kB
VmallocUsed:        4052 kB
VmallocChunk:   34359723152 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:        8128 kB
DirectMap2M:      483328 kB

参考

tmux で vim のカラースキーマが反映されない件

2018-09-23

目的

tmux を導入してから vim のカラースキーマが反映されない状態になってしまっていました。

見にくいので、カラースキーマが反映されるようにします。

方法

~/.tmux.conf を作成

set -g default-terminal "screen-256color"

注意する点としては、tmux を起動している場合は

tmux を立ち上げ直してください。

参考

jekyllで目次を設定する (jekyll-toc-generator)

2018-09-23

目的

jekyll の各記事に目次を追加します。

方法

今回、jekyll-toc-generator を利用します。

github からリポジトリをダウンロードします。

_plugins フォルダのセット



#### css ファイルのセット、html から読み込み

```css/toc.css``` ファイルを、任意の場所に指定します。

次に配置した css ファイルを読み込むようにします。


#### _config.yml の設定

目次の項目となる見出しの要素を指定します。

今回、h3 タグを指定しました。

jekyll-toc-generator

tocTopTag: h3


#### テンプレートで指定

下記のように設定します。

{% raw >}}

{{ content | toc_generate }}

{% endraw >}} ```

最後に

GitHub Pages の場合、この方法では目次が追加できませんでした。

別記事で、違う方法を試してみます。

参考

jekyll で目次を設定する (jekyll-toc)

2018-09-23

目的

GitHub Pages で、jekyll の各記事に目次を追加します。

今回は下記リポジトリを利用します。

方法

  1. 最新の toc.html ファイルをダウンロードします

  2. _includes に 1. でダウンロードしたtoc.htmlファイルを配置します

  3. テンプレートファイルに記述

下記のように指定します。content は目次を生成したい html になります。

{% raw >}}

{% include toc.html html=content >}}

{% endraw >}}

Use it in your template layout where you have {% raw >}}{{ content }}{% endraw >}} which is the HTML rendered from the markdown source with this liquid tag:

MySQL のインデックス追加、変更、削除

2018-09-23

目的

mysql のテーブルでインデックスを追加・変更・削除します。

よく調べ直しているので、メモしておきます。

方法

使用テーブル

CREATE TABLE test_2018 (
    id int,
    id2 int
);

ユニークキー

追加

ALTER TABLE test_2018
ADD UNIQUE uk_id2 (id2)
;

削除

ALTER TABLE test_2018
DROP INDEX uk_id2
;

インデックス

追加

ALTER TABLE test_2018
ADD INDEX idx_id2 (id2)
;

削除

ALTER TABLE test_2018
DROP INDEX idx_id2
;

参考

MySQL のテーブルのカラム追加、変更、削除

2018-09-22

目的

mysql のテーブルでカラムを追加・変更・削除します。

よく調べ直しているので、メモしておきます。

方法

使用テーブル

CREATE TABLE test_2018 (
    id int
);

追加

ALTER TABLE test_2018
ADD id2 int AFTER id
;

変更

change を使用する場合

ALTER TABLE test_2018
CHANGE id2 id2_changed int
;

modify を使用する場合

ALTER TABLE test_2018
MODIFY id2_changed text
;

削除

ALTER TABLE test_2018
DROP id2_changed
;

参考

unix のln について調べた

2018-09-22

目的

unix で ln をいまいち理解できていないので、調べてみました。

リンクについて

まず、リンクには2種類あります。

  • ハードリンク
  • シンボリックリンク

ハードリンクとは

(以下 man コマンドより引用)

     By default, ln makes hard links.  A hard link to a file is indistinguishable from the original direc-
     tory entry; any changes to a file are effectively independent of the name used to reference the file.
     Hard links may not normally refer to directories and may not span file systems.

シンボリックリンクとは

(以下 man コマンドより引用)

     A symbolic link contains the name of the file to which it is linked.  The referenced file is used when
     an open(2) operation is performed on the link.  A stat(2) on a symbolic link will return the linked-to
     file; an lstat(2) must be done to obtain information about the link.  The readlink(2) call may be used
     to read the contents of a symbolic link.  Symbolic links may span file systems and may refer to direc-
     tories.

使ってみる

ハードリンク

$ ln test1.txt test1_to_hard.txt
$ ls -l
-rw-r--r--  2 xxxxx  staff     4 10  4 20:14 test1.txt
-rw-r--r--  2 xxxxx  staff     4 10  4 20:14 test1_to_hard.txt

シンボリックリンク

$ ln -s test2.txt test2_to_symbolic.txt
$ ls -l
-rw-r--r--  1 xxxxx  staff     5 10  4 20:14 test2.txt
lrwxr-xr-x  1 xxxxx  staff     9 10  4 22:55 test2_to_symbolic.txt -> test2.txt

リンクを消す方法は下記です

$ unlink test1_to_hard.txt
$ unlink test2_to_symbolic.txt

unix のコマンド履歴を見て、実行する方法

2018-09-22

目的

unix のコマンドの履歴を一覧で見て、それを実行します。

方法

$ history
502  ls
503  git diff

history の結果が上記のとき

$ !502

とすると、 ls を実行することができます。

おまけ

シェルが bash のとき、履歴の保存数は下記に設定されています。

$ echo $HISTSIZE

JavaScript の object

2018-09-09

目的

JavaScript の object についての説明です

やってみる

オブジェクトは、名前のついたプロパティの集まり、つまりキーと値の組のリスト(他の言語でいう連想配列とほぼ同じ)にすぎません。

var book = {
    title: 'book_title',
    getTitle: function () {
        return this.title;
    }
};
console.log(book.title);
console.log(book.getTitle());

// 結果
book_title
book_title

unix で os の時間を設定する

2018-08-19

目的

os の時間設定ををします。

Cent OS で時刻設定する

$ sudo cp /etc/localtime /etc/localtime.org
$ sudo ln -fs /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

$ sudo vi /etc/sysconfig/clock
[変更前]
UTC=false

[変更後]
ZONE="Asia/Tokyo"
UTC=false
ARC=false

補足

UTC について

引用 > UTCとは、全世界で時刻を記録する際に使われる公式な時刻。天体観測を元に定めるGMT(グリニッジ標準時)とほぼ同じ

ARC について

引用 > true 又は yes — ARC コンソールの42年の時間オフセットが有効になっています。このセッティングは、ARC- 又は AlphaBIOS ベースの Alpha システム のみの為のものです。この値は、通常の UNIX エポックが使用中という意味です。

参考URL