タグ

linuxに関するnntsuguのブックマーク (57)

  • systemd serviceから呼ぶシェルではsudoではなくsetprivを使う - 赤帽エンジニアブログ

    Red Hatの森若です。 自分でsystemdのservice unitを作るときに、起動用のいくつかのコマンドを記述したシェルスクリプトを呼ぶ事は(理想的ではないですが)あるかと思います。 今回はこの場合に、sudoを利用するとまずい理由を説明して、かわりにsetprivを使うほうがよいという話です。 例題用のservice 実行してみる 別のcgroupだと何がまずいのか? 対策はsetprivコマンド 例題用のservice sudoによるまずい動作を確認するためのできるだけ単純な例として、hoge.service を用意します。 /opt/hoge/hoge.sh #!/bin/bash sudo -u moriwaka sleep 5000 /etc/systemd/system/hoge.service [Unit] Description=hoge [Service] Ty

    systemd serviceから呼ぶシェルではsudoではなくsetprivを使う - 赤帽エンジニアブログ
  • Bodhi: The Enlightened Linux Distribution

    Bodhi Linux, a lightweight distribution featuring the fast & fully customizable Moksha Desktop. The 64-bit is built on top of Ubuntu (22.04). The 32-bit Non-PAE architecture has a Ubuntu 18.04 base. Bodhi Linux 7.0.0 is the Enlightened Linux Distribution. Here you’ll find all you need to discover more about Bodhi Linux, including helpful resources such as: The Wiki: For Tutorials; Installation & C

    Bodhi: The Enlightened Linux Distribution
  • 派手な見た目の「Bodhi Linux」、カスタマイズを楽しもう

    税込1万円以下で入手できる中古PCでも、軽量Linuxを入れれば快適なマシンとして復活できる。主要な軽量Linuxから特徴のある5種類を選定し、レスポンスや操作性などを徹底検証する。 検証4 見た目を自在に変えられる Bodhi Linux 「Bodhi(ボーディ) Linux」は、視覚効果の高いウィンドウマネジャー「Moksha」を採用し、軽量ながら派手な見た目のLinuxディストリビューションです。「Bodhi」は、サンスクリット語の「菩提(ぼだい)」から名付けられています。ミニマリズムを提唱しており、最小限のソフトウエアのみで構成されています。このため、インストールイメージはわずか873Mバイトほどです。必要なソフトをユーザーが選択してインストールすることで、無駄なソフトを排除し、HDDの使用量を減らすことができます。Ubuntuをベースに開発されているため、Ubuntuの豊富なパッ

    派手な見た目の「Bodhi Linux」、カスタマイズを楽しもう
  • sync sync sync ? - 理系学生日記

    よく、非常に重要なディスク変更を伴う作業などで $ sync $ sync $ sync ってやれみたいな話を聞きますが、これって $ sync # 一息入れる っていうのと何か違ったりするのかなみたいな疑問を未だに持っています。 sync の意味 そもそも sync(8) は、ディスクへの確実な書き込みを実行するためのコマンドです。 例えば write(2) は、一般にディスク書き込みは伴わず、あくまでカーネル内のバッファ変更のみが実施された状態で制御を戻します。従って、ここでシステムが異常終了した場合、あるいはディスク故障が発生した場合は、ユーザアプリとして書き込んだはずのデータが失われることになります。 sync(8)は、このカーネルのバッファ変更(dirty buffer)のみがなされた状態から、強制的にディスクに書き出すように促すためのコマンドです*1 *2。別に 3 回 syn

    sync sync sync ? - 理系学生日記
    nntsugu
    nntsugu 2021/06/13
    sync3回話
  • なぜsyncを3回打つのか - 第7開発セクションのほ~むぺ~じ(ほめぱげ) - BOOTH

    技術書典にてコピー紙で頒布した「講釈sync」を改稿。英訳を友人に手伝ってもらって、ついに製化。タイトルも変更して「なぜsyncを3回打つのか」としてC94夏コミで初頒布。sync3回の由来は〇〇〇ドライブにあった! ちなみに弊サークルの大ヒット商品で、増刷かけて3刷です。A5サイズ、16ページ。

    なぜsyncを3回打つのか - 第7開発セクションのほ~むぺ~じ(ほめぱげ) - BOOTH
    nntsugu
    nntsugu 2021/06/13
    sync3回話
  • Linuxコマンドでバイナリファイルを修正する

    はじめに たまに、バイナリファイルをシェルスクリプトでいじりたいときがある。 他にもっといい方法があるかもしれないが、参考として記載する。 修正の流れ(イメージ) 以下のような流れで修正をしている。 hexdumpでdump dump結果を修正 xxdコマンドで戻す 例題 以下のようなバイナリファイルを、 $ hexdump -C sample.bin 00000000 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f |................| 00000010 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f |................| 00000020 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f | !"#$%&'()*+

    Linuxコマンドでバイナリファイルを修正する
  • Linux perfで快適に計測するためのtips - Qiita

    これがあるのとないのとでは分かりやすさが全然違うので、perfを使う時は常に入れておくようにすると便利です。 2. --call-graph は fp 以外で使う 上記の問題を解決すると perf record + perf report では何が呼ばれているかおおむね分かることが多いのですが、call graphを出すために perf record -g をすると [unknown] というのが出てきてしまうことがあります。(以降の計測結果はRack::Utils::HeaderHashを使ったRuby VMのベンチをRubyのmasterで走らせたものです) Samples: 38K of event 'cycles:ppp', Event count (approx.): 271180000 Children Self Command Shared Object Symbol - 1

    Linux perfで快適に計測するためのtips - Qiita
  • Ping-t - CCNA/CCNP/LinuC/LPIC/Linux Essentials/HTML5/OSS-DB/オラクルマスター/ITパスポート/ITILファンデーション総合学習サイト

    AWS、CCNA/CCNP、LinuC、LPIC、Linux Essentials、HTML5、OSS-DBITパスポート、オラクルマスター、ITILの試験合格を目指す人を応援する学習サイト(登録ユーザ25万人)です。 ユーザ登録をすると、無料でCCNA WEB問題集(600問以上)やLPIC Lv1問題集(500問以上/認定教材)、Oracle Master Bronze SQL基礎(約400問)、ITパスポート過去問(600問)、学習日記、助け合いフォーラムなどを利用できるようになります。

    Ping-t - CCNA/CCNP/LinuC/LPIC/Linux Essentials/HTML5/OSS-DB/オラクルマスター/ITパスポート/ITILファンデーション総合学習サイト
  • 執筆活動リスト - めもめも

    プロフィールにひっそりとメモしていたのですが、文字数制限で入らなくなったので、ここに引っ越しました。。。。 JAX/Flaxで学ぶディープラーニングの仕組み〜新しいライブラリーと畳み込みニューラルネットワークを徹底理解 (マイナビ出版「内容紹介」より) 話題のGoogle製ライブラリーを使った初の書籍! エンタープライズのためのGoogle Cloud〜クラウドを活用したシステムの構築と運用 (翔泳社 [基情報] より) Google Cloudのエンジニアによる格解説書! クラウドコンピューティングが普及する中で、エンタープライズシステムもまた、オンプレミスからクラウドへの円滑かつ効果的な移行が求められています。書は、エンタープライズシステムを構築・運用するエンジニアのために、Google Cloudの具体的なユースケースや設計ポイントをGoogle Cloudのエンジニア陣が徹底

    執筆活動リスト - めもめも
    nntsugu
    nntsugu 2018/12/16
    Systemd入門とかいろいろ
  • Etsukata blog: FreakOut DSP 入札サーバの CPU 使用率を 30% 削減する Performance Tuning

    はじめに 勤務先の FreakOut 社では RTB で広告枠を買い付ける DSP の開発・運用を行っています。RTB とは、インターネット広告のインプレッションが生じる毎に、広告枠の競争入札を行う仕組みです。 DSP とは、 RTB において、競争入札をする側のシステムになります。広告枠/広告を見ている人 に対し、最適な広告を、最適なタイミングで届ける機能を広告主に提供する仕組みです。 FreakOut DSP は最適な広告探索・入札価格調整のため、非常に多くのデータを参照し、沢山の演算処理を行います。広告を見ている人が過去にアクセスした Web ページの情報や検索ワード、さらに 広告がクリックされる予測確率(過去のログから機械学習で算出) などを参照し、入札価格を決定するのです。そのため、DSP で入札を担当するサーバは CPU がボトルネックになっており、台数も数百台に嵩んでいます。

    nntsugu
    nntsugu 2018/10/23
    Ad系のチューニング話記事には結構助けられている。
  • linux-sched-history.pdf - Speaker Deck

    多言語化対応における TypeScript の型定義を通して開発のしやすさについて考えた / TSKaigi TypeScript Multilingualization

    linux-sched-history.pdf - Speaker Deck
  • Shared Object(.so)の勉強 - ぱせらんメモ

    いつの間にかはてなダイアリー市民になっていた。 立ち上げが去年の10月だったので1年以上かかったことになる。おせぇ。月に多くて5エントリぐらいだしな。 30日に1回は書いてないと剥奪されてしまうらしいので頑張って書いてみるぜ。 普段はPHPでWebシステムの開発をしているというのに、突然.soな共有ライブラリを扱った仕事が舞い込んできたのでお勉強。 C/C++自体はDOSやWindowsでよくやっていたのだがLinux上での開発は初めてだ。 WinMain()から始まってメッセージループがあってWindows API使いまくり、みたいな開発は得意だがLinuxはさっぱりわからん。 同じ言語でも土俵が違うだけで結構辛い戦いが予想される。ていうか、OSの違い以前にGUIとCUI(今回はCUIどころかアプリでもない)ってだけでも全然違うのに、「C言語できるんでしょ?」みたいなのはやめてほしい。

    Shared Object(.so)の勉強 - ぱせらんメモ
    nntsugu
    nntsugu 2018/09/22
    Shared objectの作り方
  • いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方 - Qiita

    さくらインターネット Advent Calendar最終日は、硬派にLinuxのメモリに関する基礎知識についてみてみたいと思います。 最近はサーバーを意識せずプログラミングできるようになり、メモリの空き容量について意識することも少なくなりましたが、いざ低レイヤーに触れなければいけないシチュエーションになった際に、OSを目の前に呆然とする人が多いようです。 基的にLinux のパフォーマンスについて、メモリをたくさんつめばいいとか、スワップさせないほうが良い とか、このあたりは良く知られたことだと思います。 ただ、なんとなく ps コマンドや free コマンド などの結果を見るだけでなく、もう少しメモリのことについて掘り下げてみてみたいと思います。 メモリとキャッシュ Linux におけるメモリの状態を大きく分けると「使用中のメモリ」「キャッシュ」「空きメモリ」「スワップ」の 4 つに分

    いまさら聞けないLinuxとメモリの基礎&vmstatの詳しい使い方 - Qiita
  • /proc/diskstatsの説明 - だめでもいいからやってみる

    詳しくはここ。(ぶん投げ) https://www.kernel.org/doc/Documentation/iostats.txt 基的には全部積算値なので、時間単位の増加量を求めたい場合は 定期的に監視した上で (今回の値 - 前回の値) / (今回の取得時間 - 前回の取得時間) = 値 per 単位時間とする。

    /proc/diskstatsの説明 - だめでもいいからやってみる
  • CentOS7でJDTを試してみた

    カテゴリー DX (2) 一般 (57) 研究会 (5) 働き方 (4) 技術 (348) Edge AI (2) Edge Computing (12) Erlang (1) FIWARE (2) Fog Computing (9) Infiniband (31) Internet of Things (32) Key Value Store (17) Linux (3) Linux KVM (10) Machine Learning (1) RealTime Web (14) Webサービス (42) インフラ (7) コンテナ (3) ストレージ (92) データセンター (7) データベース (47) データ流通 (6) テレプレゼンス (2) ネットワーク (214) 仮想化 (110) 災害コミュニケーション (26) 空間情報 (30) 量子コンピューティング (3) 教育

    CentOS7でJDTを試してみた
    nntsugu
    nntsugu 2018/09/05
    WordPressをホストしたCentOSをJST→JDTに変更した場合、各種ログのタイムスタンプがどうなるかのお話。サーバ上のタイムゾーンはUTCで運用、可視化する場合に変換してあげるのが良さそうですね。
  • Linux TC (帯域制御、帯域保証) 設定ガイドライン | GREE Engineering

    Abstract このドキュメントはLinuxにおいて帯域制限のためにtcを用いる際のガイドラインです。 tcは様々な用途に活用できるものですが、プロダクションにおいて特定のserver daemonのトラフィックを制限するというシナリオで活用することを目的としています。 tcのより詳しい詳細については別にドキュメントを書きましたのでそちらを参照してください。 よくわかるLinux帯域制限 Root qdiscの選定 帯域制限を行いたい場合のqdiscは主に以下のようになるでしょう。 TBF PRIO + 内部qdiscとしてTBF HTB それぞれ用途に合わせて適切なものがあるのですが、機能としてはHTBが前者2つの上位互換となるので、迷った場合にはHTBを使えば問題ありません。ということで以後HTBの設定について解説します。 class構造,トラフィックのclassify, filte

    Linux TC (帯域制御、帯域保証) 設定ガイドライン | GREE Engineering
  • LinuxのCPU使用率の%stealについて - Qiita

    はじめに Linux で採取できるCPU使用量(率)の情報として、%user や %sys 等に加えて %steal という量がある。これが追加されたのは、仮想化が広く使われはじめた10年くらい前だろうか。筆者は Xen を調べていて気づいたのだが、もっと前にs390のために追加されたのかもしれない。当時、ESXの場合も含めて調べていたのだが、最近、KVMの場合にどういう実装になっているのか、ふと気になって軽く調べてみたのでメモ。 CPU使用率の計算 まず最初に、sar や vmstat や mpstat 等、さまざまなツールでCPU使用率を取得することができるわけだが、どのような情報を元に、どのような計算を行って算出しているのか? まず、kernel内ではboot以後の各種実行モードのCPU時間を分類して積算値として保持している。user モード、特権モード、割り込み処理に使った時間..

    LinuxのCPU使用率の%stealについて - Qiita
  • 実行中のアプリケーションを外から観察するコマンド。 - こせきの技術日記

    strace システムコールをトレース。カーネルと何を話しているか。 strace -p PID でプロセスにアタッチ。実行中のプロセスをトレース。 straceを使ったデバッグ - SourceForge.JP Magazine : オープンソースの話題満載 Linuxカーネルの作り出す世界 − @IT自分戦略研究所 - ふつうのLinuxプログラミング 青木峰郎 システムコールとライブラリ関数 − @IT自分戦略研究所 システムコール・ライブラリルーチン - UNIX の部屋 ltrace 共有ライブラリの呼び出しをトレース。*.soと何を話しているか。 ltrace -p PID でプロセスにアタッチ。実行中のプロセスをトレース。 ltrace で共有ライブラリの関数呼び出しをトレースする - bkブログ 404 - エラー: 404 - Linux JF ƒ‰ƒCƒuƒ‰ƒŠ‚ÌŠ

  • シャットダウンプロセス

    起動プロセスをより深く知るためには、シャットダウンプロセスの理解が必要不可欠です。Linux を終了する場合、単に電源を切ることは許されません。単に電源を切ると、深刻な問題をシステムに与えます。 正しいシャットダウンは shutdown プログラムによって行われます。shutdown プログラムの主な役割は シャットダウンをユーザに通知することと、init プログラムにランレベルの変更を依頼することです。 以下のコマンドを実行した場合について説明します。 オプション -h は、シャットダウン後にシステムを停止することを指示します。now は、直ちにシャットダウン処理を行うことを指示します。 まず、shutdown プログラムは、ログインしているユーザにシャットダウンを通知します。そして、init プログラムにランレベルを 0 へ変更するように依頼します。ランレベル 0 は電源遮断状態を表し

    nntsugu
    nntsugu 2018/03/06
    起動停止
  • ノンブロッキングI/Oと非同期I/Oの違いを理解する

    English

    ノンブロッキングI/Oと非同期I/Oの違いを理解する