![Speculative Execution Exploit Performance Impacts - Describing the performance impacts to security patches for CVE-2017-5754 CVE-2017-5753 and CVE-2017-5715 - Red Hat Customer Portal](https://cdn-ak-scissors.b.st-hatena.com/image/square/3108d3d39d44b30ca4891c7cf9161910927d3fdb/height=288;version=1;width=512/https%3A%2F%2Faccess.redhat.com%2Fwebassets%2Favalon%2Fg%2Fshadowman-200.png)
vim以外のエディタでコード書くと私の手は産まれたての子鹿みたいになります。 効率よくコーディングをしてもらうために、新人やvimを学びたい人にvimの研修を実施しています。今回は研修で非常に有効だった内容についてまとめておきます。 ※ なんだか誤解を生んでしまっているようなので追記しておきます。vimの研修は新人研修の一環として行ったわけではなく、vimを使って開発をしたがっていた新人へテスト駆動開発の研修を実施した際に並行して盛り込んだだけです。会社がvim強制とかではないのでご安心ください。言葉足らずで申し訳ありません。 2つの繰り返しキーの存在を認識させる vimは一度実行したコマンドの組み合わせを記憶する.(ドット)とfを使った移動の際のキーストロークを記憶しておく;(セミコロン)があります。これらを駆使することで他のエディタよりも高速な編集作業を行えます。 セミコロンはus配列
タイトルはかなり挑戦的(?)ですがあまり気にしないでください。 ※注意 このエントリで紹介しているオプション、コマンドはCentOSでしか動作確認をしていません。 その他ディストリビューションや、インストール方法によっては挙動が異なる場合があります。 「less」 使ってますか? エンジニアなら普段Linuxに触る機会が多々あるかと思います。 エンジニアのみならずMacだったりUbuntuだったりで私用PCでもターミナルが使えるようになっている方は多いかもしれません。 私は普段の仕事ではサーバの運用管理をしています。 仕事柄触る頻度が高いのはLinuxサーバです。 そして、使うのは大体CLIです。 そもそもLinuxでGUIを触る機会がなかなかありません。 大体リモートからターミナルで接続してCLIでちょいちょいっと処理をする感じですね。 GUIである場合でもLinuxを使っていればターミ
はじめに CentOS6系の標準リポジトリのPHPバージョンは5.3、 CentOS7系の標準リポジトリのPHPバージョンは5.4です。 それ以外のバージョンを使用したい場合は、リポジトリを追加してのインストール作業が必要になります。 今回、PHP5.6, PHP7.0, PHP7.1のインストール手順について記載します。 (※2017-07-23時点の情報です) Yumリポジトリ追加 EPELとRemiリポジトリを追加します。 EPELリポジトリ [CentOS6系] yum install epel-release または rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm [CentOS7系] yum install epel-release または rpm -Uvh http
「コマンドの結果をファイルに出力したいけど、標準出力でも出力を見たい!」、という欲張りな要望に答えてくれる意外と頼もしいコマンド。 ちなみにサンプルが vagrant コマンドとか使ってますが、あくまで例の一つ。 rsync とかダラーッと出力されるもののほうが良かったかもしれない。 簡単な使い方 ファイルを上書きする
最近golangでCLIツールを作っていたのだけど、Linuxのお作法とかいまいち分かっていなかった。そこでそのあたりのことが学べそうな「ふつうのLinuxプログラミング」を読んだ。 ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの王道 作者:青木 峰郎SBクリエイティブAmazon この本はLinuxにおいてC言語でプログラミングする方法を、Linuxでの重要な概念も含めて教えてくれる本。この本を読めばとりあえずC言語を使ってLinux用のプログラムを書き始めることが出来るようになりそうだった。 それでC言語を使わない場合でも役に立つの?ということだけど、非常に役立ちそうで面白かった。なぜなら、単なるプログラミングの方法を教えてくれるだけではなくて、 Linuxの重要な考え方をファイルシステム・プロセス・ストリームという概念にまとめて教えてくれ
κeenです。雰囲気でシェルを使ってる人が多いとのことだったので少しばかり込み入った知識を。 あと一応POSIX準拠かどうかも気にしながらやっていきます。 基礎知識編 シェルの種類 まず、POSIXにシェルが定義されています。 これに最低限の機能で準拠しているものをPOSIXシェルと呼ぶことにします。いわゆる/bin/shです。具体的な実装はbsh、ash、dashあたりでしょうか。 最低限の機能以上に色々拡張されているシェルを拡張POSIXシェルと呼ぶことにします。具体的な実装はbash、zsh、kshなどでしょうか。 ここでは触れませんがPOSIX準拠でないシェルも存在してcshやtcshなどのシェルがあります。あと確か最近話題のfishも違ったような。 さて、1つ問題になるのは普段使いのコマンドラインはおおむね拡張POSIXシェルでしょうが、サーバで使うシェルやデプロイスクリプトで呼
linuxのコマンドラインでデータ加工をする際によく使うAWKですが、個人的につまずいた使い方について、 覚え書きとして残します。誰かの助けになれば… 組み込み関数覚え書き FS 入力フィールドセパレータ(空白とタブ) CNVFMT 数値を文字列に変換するフォーマット OFMT 数字の出力フォーマット(%.6g) OFS 出力フィールドセパレータ(空白) ORS 出力レコードセパレータ(\n) RS 入力レコードセパレータ(\n) SUBSEP 配列添字セパレータ(\034) ARGC コマンド行の引数の数+1 ARGV コマンド行の引数の配列 ENVIRON["..."] 環境変数の値 FILENAME 入力ファイル名 FNR 入力ファイルの通算レコード NF 入力レコードのフィールド数 NR 入力レコード総数 RLENGTH matchで適合した文字列の長さ RSTART matchで
気分転換に、普段からLinuxで作業する上で割と便利なツールだったり小技を共有します。知ってたらごめんね 一応全部MacでもLinuxでも動くはずです。 高速化系 axel , aria2c http://qiita.com/sarumonera/items/2b30999d7d41a4747d74 https://goo.gl/gsFrCT https://wiki.archlinuxjp.org/index.php/Aria2 http://qiita.com/TokyoMickey/items/cb51805a19dcee416151 こいつらは割と有名(?)かなと思います。やってることはcurlやwgetとほとんど変わらず、サーバにHTTPリクエストを送ってレスポンスを取ってくるだけなのですが、ダウンロードを高速化するためにtcpコネクションを何本も貼って、相手サーバーに負担をかけ
glances インストール 使い方 ctop インストール 使い方 gtop インストール 使い方 htop インストール 使い方 vtop インストール 使い方 cpustat インストール 使い方 GitHubを眺めていたらtopの代わりとして使えそうなコマンドが色々あったので試してみる。 glances Glances - An Eye on your system(公式ページ) github.com glancesは色々な情報を表示できるモニタリングツール。 インストール pipでインストールできるので下記コマンドを実行。 $ pip install glances 使い方 glancesで起動できる。図のように色々な情報がまとめて表示可能。 ブラウザで確認できるWebサーバモードや、リモートマシンを監視するクライアント/サーバモードもあるようだ。 ctop ctop(公式ページ
Linux CentOSのバージョン確認方法は簡単だ。「/etc/redhat-release」ファイルの中身をみればすぐに確認ができる。 CentOSのバージョン確認方法 サーバを管理する上で自分が使用しているシステムのバージョンを知ることは、保守管理の面で重要である。なぜならそのバージョンの時点で、抱えるセキュリティホールなどが浮き彫りになるからだ。 CVEなどをはじめセキュリティ情報のサイトでは、どのバージョンがどのセキュリティホールを抱えているかが記載される、その時のバージョンが確認出来ないという状態は致命的といえるだろう。 このページではバージョンを確認する手段を紹介する。 centos バージョンはどこに記載されているのか? 以下のコマンドで「/etc/redhat-release」を参照すればCentOS自身のバージョンを確認出来る。 $ cat /etc/redhat-re
LinuxやUNIXで仕事をしていると、特定のファイル(名前だったり、さっき編集されたファイルだったり)がどこにあるのかを知りたい事が多々ある。 そんな時は、やはりfindコマンドの出番だ。今回は、そんなfindコマンドで覚えておきたい便利な使い方についてまとめてみる事にした。 1.ファイル名で検索する まずは基本。findコマンドでは最も利用されているであろうファイル名での検索。 例えば、以下のように「-name」オプション付きでコマンドを実行することで、「test」というファイルが出力される。 このキーワードは、最下層(ディレクトリであれば一番下のディレクトリ、ファイルであればファイル名)にmatchしているかどうかで出力される。 find /探したいディレクトリ -name 検索キーワード test@test-vm-ubuntu:~/.ssh$ find /home -name te
2018年4月25日をもちまして、 『CodeIQ』のプログラミング腕試しサービス、年収確約スカウトサービスは、 ITエンジニアのための年収確約スカウトサービス『moffers by CodeIQ』https://moffers.jp/ へ一本化いたしました。 これまで多くのITエンジニアの方に『CodeIQ』をご利用いただきまして、 改めて心より深く御礼申し上げます。 また、エンジニアのためのWebマガジン「CodeIQ MAGAZINE」は、 リクナビNEXTジャーナル( https://next.rikunabi.com/journal/ )に一部の記事の移行を予定しております。 今後は『moffers by CodeIQ』にて、 ITエンジニアの皆様のより良い転職をサポートするために、より一層努めてまいりますので、 引き続きご愛顧のほど何卒よろしくお願い申し上げます。 また、Cod
(注:2017/04/10、いただいたフィードバックを元に翻訳を修正いたしました。) はじめに 私はLinuxが大好きです。コンピュータとのやりとりが楽しくなるし学ぶことも多くなります。OSとハードウェアの基盤となる基本原則を学びたい人にとって、Linuxはとてもいい出発点と言えるでしょう。 ご存じのとおりLinuxとは大抵の場合プログラム(コマンド)を通してやりとりします。Linuxと他のUNIX系システムが持っている特徴は、コマンドラインと、パイプのコンセプトです。プログラムの提供する入力と出力を統合すれば、データを操作するのに非常にパワフルなプラットフォームになります。 Linuxのコマンド、プログラム、バイナリ(何と呼んでもいいのですが)の大部分は、/usr/bin、/usr/sbin/、/binそして/usr/local/binに存在しています。これらのディレクトリを見れば、プロ
はじめに 以前書いたエントリー、重大な脆弱性(CVE-2017-5932)で少し話題になったbash4.4の補完機能の便利な点で、bash4.4からでないとタブの補完機能のソート処理が制御できないという問題について、ソースコードレベルで調べた結果をまとめていたのですが、bashの実装そのものを深く掘り下げ過ぎてしまい、内容が膨大になったので、何回かに分けて書こうと思います。 今回はbashが起動されてからインタラクティブモードでキーボードの入力を待ち受けるまでのお話です。普段使っているbashがどのような処理を行っているのか一緒に覗いてみませんか? 検証ソースコード Bash version 4.1.0(1) release GNU bashの生誕 bashのプロセスが起動されるのはOSへのログイン時にユーザーのログインシェルがbashに設定されている場合、あるいはログイン後に明示的にba
Linuxのメモリ管理について勉強中なので、簡単なまとめをメモ。 仮想アドレスと実アドレス多くのマルチタスクOSでは仮想アドレス空間を持っています。仮想アドレス空間の仕組みを利用すれば、物理メモリ上では不連続にマッピングされたページでも、プロセスからは連続した領域として扱うことができます。 ここでいうページとは、メモリを一定の大きさに区切って管理するための単位のことで、4Kバイトのことが多いようです。仮想アドレスと実アドレスへの変換はページ変換テーブルを用いて行われます。 実メモリの管理実メモリはバディシステムと呼ばれる仕組みで管理されています。 バディシステムは空きページを2の冪剰の単位で分割したページフレームのリストで管理します。たとえば、4ページ分の連続メモリを確保したい場合は、まずオーダー2(2の2剰個の連続ページ)のリストから空きを探し、無かった場合は一つ上のオーダーから探します
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く