You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
SELinuxシリーズ 本記事は、SELinuxシリーズの1記事目です。 Linuxプロセスアクセス制御の概要 ←今ココ SELinuxの概要 SELinux Type Enforcement SELinuxの実践 (参考) SELinuxのRBAC、UBAC、MLS、MCS (参考) SELinux Module Policyのソースコード読解、ビルド 参考URL 1〜3記事目は、4記事目を理解するための前提知識をカバーしています。 4記事目が最も重要で、SELinuxの具体的な操作方法やコマンド、トラブルシューティング手順を紹介しています。 5記事目以降は参考情報です。 SELinuxの関連記事は、SELinuxタグから探せます。 一連の記事はFedora環境を前提として書いています。 FedoraやRHELに類するディストリビューションであればほぼ同等の挙動になると思いますが、他のデ
今年から、できるだけシェルスクリプトを書くのをやめようとしている。私が毎日 zsh に打ち込んでいるのも広義のシェルスクリプトだし、自分用の雑なスクリプトを書くことはあるけれど、チームの他の人も将来に使ったり改変したりするようなものは、なるだけ他の言語を使っている。 シェルスクリプトを書くのは難しいし、その難しさは、学ぶに値しないといったら言い過ぎかもしれないけれど、2021年に初心者が取り組むべき問題とは言い難いと思う。 シェルは悪いプログラミング言語である Bash Strict Mode とかを使ってみても、シェルスクリプトには落とし穴が多すぎる。自分で書いたものを自分で使っている分には大丈夫なのだけど、スクリプトがチーム内で使われるようになると、考慮していなかったところ、例えばファイル名に空白文字が含まれるとか、そういうレベルの微妙なところで、ちゃんと書かれていないスクリプトは壊れ
One day a coworker mentioned that he was thinking about APIs for distributed compute clusters and I jokingly responded “clearly the ideal API would be simply calling telefork() and your process wakes up on every machine of the cluster with the return value being the instance ID”. I ended up captivated by this idea: I couldn’t get over how it was clearly silly, yet way easier than any remote job AP
ども、バナナとナタデココにハマっているゴリラです。つまり食物繊維大好きゴリラ。 最近なぜかプロセスをkillすることが多くて、毎度コマンド打つの面倒だったので2日くらいかけてTUIツールを作ってみました。 今日はそのツールの紹介と実装の話をしていきます。 どんな感じ? こんな感じ。 対応OS Mac OS(Catalinaで動いたことは確認できている) Linux 一応Windowsでも動くはずですが、動作確認していないのでダメだったらごめんなさい。 Windowsで動いたとしてもプロセスの詳細情報は見れないですが、今後対応予定なので、お待ち頂ければと思います。 画面構成 画面は全部で以下の3つがあります。 processes(現在動いているプロセス一覧) process info(選択したプロセスの詳細情報) process tree(選択したプロセスのツリー) 画面に加えて、プロセス一
2015年からサイボウズでAndroidデベロッパーとして勤めていたフランス人なのですが2017年の秋にAndroidデベロッパーとして Square社に応募しました。応募する側からして採用プロセスは合理的でやりやすかったので、この採用プロセスが他の企業にも似たような形で広まっていくと良いなと思って Square の採用プロセスを説明するためにこの文章を書きます。 応募インターネットで求人を見かけた事から始まりました。Android開発の世界じゃSquareが提供してるライブラリは誰でも見たことがあると思います。正直なところ、直接応募するのには不安があって、先に SNS 上で Squareの社員に声かけて話を聞いてみようと考えました。相談にのってくれた Squareの社員は親切な人で話が終わるところで「よかったら連絡先を教えてもらえばうちの人事から連絡がいくようにお願いするよ」と言ってくれ
この記事は Mackerel プラグインアドベントカレンダー(全部CRE) の8日目です。 qiita.com soudai.hatenablog.com それでは8日目は check-procs です。 check-procsはプロセスを監視してくれるプラグインです。 github.com インストールと設定手順 至れり尽くせりなので公式ドキュメントに手順が書いてあるのじゃ!! mackerel.io 使い方 至れり尽くせりなので公式ドキュメントに使い方が書いてあるのじゃ!! mackerel.io オプション一覧 公式ドキュメントに無いので追加しました。 # check-procs -h Usage: check-procs [OPTIONS] Application Options: -w, --warning-over=N Trigger a warning if over a n
イントロ dsas.blog.klab.org こちらのエントリを拝見したのだが Out of memory and no killable processes... というログを出してカーネルパニックするケースがあるのだなと初めて知った。 幸いにして、過去に同様のメッセージを出すカーネルパニックには遭遇したことがない。あるいはログが取れてなくて気がつかなかっただけかもね! モチベーション 故意に異常を起こして、このカーネルパニックを見てみたい 🔥💀 Out of memory and no killable processes ... のコード 該当のログを出してカーネルパニックするコードは out_of_memory に書かれている (ソースは CentOS7.4 1708 ) /** * out_of_memory - kill the "best" process when w
Linuxの「シグナル」って何だろう?:“応用力”をつけるためのLinux再入門(16)(1/2 ページ) 前回、ジョブを停止させる際に使用した[CTRL]+[Z]キーや、コマンドの実行を中断したいときの[CTRL]+[C]キーは、どんな意味を持つ操作なのでしょうか。今回は、Linuxの「プロセス」や「ジョブ」の制御に関わりの深い「シグナル」を解説します。 連載目次 Linuxのシグナルとは何か? 「シグナル」はプロセスとプロセスの間で通信を行う際に使用される“信号”のことで、シグナルを受け取ったプロセスは“何らかの動作”を行います。その動作は、例えば「再起動」であったり、「終了」であったりします。 [CTRL]+[C]は「SIGINT」というシグナルを行うキー操作、[CTRL]+[Z]は「SIGTSTP」というシグナルを行うキー操作です。 シグナルの種類 シグナルには多くの種類があり、名
こんにちは。メルカリのテストエンジニアとして、スマホアプリのテスト自動化をぶりぶりしている@daipresentsです。 テスト自動化をすすめるにあたり、効率のよいテストを作るために、既存のテストケースについて調べる機会がありました。その過程で現状のQAプロセスも確認したのですが、以下のようなテストケース管理の課題があることがわかりました。 それぞれのテストエンジニアが、それぞれの方法で、それぞれのテストケースを管理しているため、ナレッジが横につながりにくい。 共有されているリグレッションテスト項目の更新が追いついておらず、情報が古くて使いにくい。 人数が増えてきて、ふりかえりや改善がやりにくい。 1については、現在、職能横断的なチーム構成になっているため、プロジェクトやプロダクトに集中できる環境である反面、それぞれのチームにいるQAエンジニアどうしのつながりが薄れてしまうことが原因に感じ
abrtd の素振りログを残す。調べてみてもあんまりエントリ無いので、ここに書いたことで誰かの何かの足しになろう abrtd を使うことで SIGSEGV を受けたプロセスのコアの収集や、カーネルパニックを起こした際の vmcore の収集を自動化できる 検証環境 CentOS 7.3 1611 Vagrant リファレンス https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/ch-abrt.html インストールと起動 sudo yum install abrt-cli sudo systemctl enable abrtd.service sudo systemctl start abrtd UNIT FILE STATE ab
この記事は Go Advent Calendar 2016 の3日目の記事です。 はじめに 今回は gops という Google 製のツールを紹介したいと思います。 gops は ps コマンドの様に動作しますが、golang で書かれたプロセスに限って以下の機能を提供します。 スタックトレースの表示 メモリ状態の表示 ランタイム状態の表示 メモリのプロファイルを取り pprof を起動 CPUのプロファイルを取り pprof を起動 強制GC 以下一つずつ説明していきます。 golang プロセスの一覧 まず引数を何も指定せずに起動します。 $ gops 10224 go (/opt/go/bin/go) 10244* main (/tmp/go-build638808727/command-line-arguments/_obj/exe/main) 10257 gops (/opt/
前回までの続き。なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 - 達人出版会をまだ読んでいる。遅読。 Unixプロセスとリソースの基礎を再確認した - えいのうにっき プロセスとの情報のやりとりについて再確認した - えいのうにっき プロセスの適切な扱い方を再確認した - えいのうにっき 今回は、Unixプロセスとシグナルの基礎について再確認していく。 Unixシグナル・事始め Unixシグナルの「いろは」 シグナルを再定義する シグナルハンドリングの注意点 Unixシグナル・事始め 前回、子プロセスの終了を待ち受けるのに用いた Process.wait は、実行するとそこで自身(親プロセス)の処理を止めて子プロセスの終了を待った。これは ブロッキング呼び出し と呼ばれる。 では「親は親で何か別の仕事をしたいとき」はどうするかというと、これから見ていくシグナルを上手に使うと実
エキスパートPythonプログラミング 改訂2版 (アスキードワンゴ) 作者: Michal Jaworski,TarekZiade,稲田直哉,芝田将,渋川よしき,清水川貴之,森本哲也出版社/メーカー: ドワンゴ発売日: 2018/02/26メディア: Kindle版この商品を含むブログを見る 先日、 tokibito 先生(id:nullpobug)と勉強していたpipe, select, poll, epollあたりについてメモ。 os.fork os.fork : 子プロセス(child process)をつくれる。 import os a = 0 print(a) os.fork() a += 1 print(a) 子は親の複製。親のデータ、ヒープ、スタックの各空間の複製を取得。 メモリのこれらの部分は共有されないので、実行結果は次のようになる(テキストセグメントは共有される)。
Introduction to Linux namespaces - Part 2: IPC | Yet another enthusiast blog! こういうブログ記事があって、元記事はC言語なんだけど、これと同じことをmrubyでもやってみたサンプル。なお元記事は clone(2) だけど今回はforkしてから unshare(2) している。clone未実装なんで。。 reader, writer = IO.pipe puts " - Hello ?" p = Process.fork do Namespace.unshare(Namespace::CLONE_NEWUTS | Namespace::CLONE_NEWIPC) writer.close reader.read # blocking system "hostname 'In-Namespace'" puts " -
Have you ever stopped a Docker container? There are essentially two commands: `docker stop` and `docker kill` that can be used to stop it. Behind the scenes, `docker stop` stops a running container by sending it SIGTERM signal, let the main process process it, and after a grace period uses SIGKILL to terminate the application. Running applications in Docker, you could use signals to communicate wi
Ubuntuで、キーボードの数字と記号を入れ替え(シフト無しで記号、シフトありで数字になる)ようにしようとしていた。 .profileで予め用意したキーマップをxmodmapコマンドで上書きしようとしたけど、Unityに上書きされるのか、上手く書き換えられなかったので、Systemdを使ってどうにかしようとした時のメモ。 結局途中でキーマップの変更方法は正しい方法が見つかったので、やっていない。 まずはsystemdの仕組みがわかっていなかったので、調べた内容から。 参考のURLを読めば仕組みは詳しく書いてあるので、まずはそれを読む。 特徴 高速なシステム起動と終了 高い並列度でプロセスを扱う 設定ファイルによるシステム管理の共通化 柔軟なプロセス起動 タイマーによる起動 socketへの通信検出によるプロセス起動 所定のパスへのファイル作成をトリガーとしたプロセス起動 cgroupsによ
BTrace について Java プログラムのトレーシングツール Java プログラムの実行状況に応じてプログラムで指定したアクションを実行できる ex.) foo メソッドが呼び出されたらタイムスタンプを出力するなど その他のメリットとしては、jdb で Java のプロセスをデバッグする場合はあらかじめ JVM にデバッグ用のオプションを指定する必要があるが、BTrace ではその必要がない 元々 Project Kenai でホスティングされていましたが GitHub に移行した模様 https://github.com/jbachorik/btrace https://kenai.com/projects/btrace BTrace のビルド Gradle を使う場合はインターネットに接続されている環境でビルドする必要があります ビルドしない ビルド済みのファイルがリリースページで
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く