タグ

linuxに関するakimasa2000のブックマーク (191)

  • fallocate() と ftruncate() の違いについて - 旧ID:itiriのブログ

    ※2013年2月13日、ちょっと書き直し。 以前、MongoDBをext3で使ったら死んだというページとはてブを見て、fallocateってまだまだ知られてないんだなぁと思ったので、周知のために色々書いてみることにした。 fallocateって何?ファイルにデータを書き込む前に、指定したサイズ分の領域を事前に確保(予約)する時に使う、Linuxのシステムコール(C言語用の関数)です。ext4やXFSなど、対応したファイルシステムでしか使えません。ちなみに、同名かつ(ほぼ)同機能のコマンドが存在します。 posix_fallocateってのもあったんだけど、fallocateと何が違う?fallocateにちょっと機能を追加したモノ(というかラッパー)です。fallocateに対応していないファイルシステムでも使えますが、その場合はファイルに対してゼロフィルを行うため、注意が必要です。Mon

    fallocate() と ftruncate() の違いについて - 旧ID:itiriのブログ
  • CronでOS起動時に処理を実行する@rebootの実装による差異 -- ぺけみさお

    crontabで以下のように@rebootを指定すると、cronの起動時にジョブを実行することができる。 つまりOS起動時に任意の処理を実行する設定が、root権限なしにできる。このため@rebootには、Windowsでいうところのスタートアップのような手軽さがあり、重宝する。 しかし、ここで気になるのは、これはcronの機能なので、OS起動とは無関係にcronが再起動されたらどうなるのか?という点だ。結論から言うと、@rebootの挙動はOSが採用しているcronの実装により異なる。 93年のVixie Cron 3.1のソースコードを見ると、OS起動の延長とcronの再起動を区別する実装にはなっていない。cronの起動時にもれなく@rebootの処理が実行される。 調べた限り、FreeBSD、Debian、CentOSの3つのOSでは、cronを取り込むにあたって、異なるアプローチを

  • もしもディスプレイが壊れたら(ヒマラヤで) | POSTD

    もしラップトップのディスプレイが壊れたら、文句を言いつつもお金を出して修理してもらうのが普通でしょう。修理用のパーツが届くまでの間は、外付けディスプレイでしのぐのでしょう。面倒ではあるけれど、それで作業が止まってしまうわけではありません。でも、いちばん近い町までバスで2日かかるうえに、貴重品を安心して送れるサービスも整っていない場所にいるとしたらどうでしょう?私の置かれた状況がまさにそれでした。インド北部のラダック、ヒマラヤに囲まれたところでそんな目にあったのです。私がここに来たのは、日々の仕事から離れて執筆に専念するためでした。執筆にはコンピュータが欠かせません。でも、日々の生活はそれほどコンピュータに依存していなかったので、ハッカーらしい解決策をゆっくり考えてみました。 私のハックのポイントは、スマホを「モニター」として使ったことです。VNCやXのポートフォワーディングで映像出力を直接

    もしもディスプレイが壊れたら(ヒマラヤで) | POSTD
  • [vfio-users] A couple notes on DPC latency

  • [vfio-users] Why does the audio from VM crackle?

    akimasa2000
    akimasa2000 2016/11/12
    hugepages, cpuisol.nohz_full and rcu_nocbs for the guest cores
  • Man page of GAI.CONF

    Section: Linux Programmer's Manual (5) Updated: 2020-06-09 Index JM Home Page roff page 名前 gai.conf - getaddrinfo(3) 設定ファイル 説明 getaddrinfo(3) の呼び出しでは、複数の答えが返る場合がある。 RFC 3484 によれば、 これらの答えは、 最も成功の可能性が高い答えがリストの先頭になるような順番に並び替えなければならない。 RFC には、 並び替えのアルゴリズムが書かれている。 しかしながら、 静的なルールが常に適切という訳ではない。 この理由から、 RFC では、 並び替え方法をシステム管理者が動的に変更できるようにすることも要求している。 glibc の実装では、 /etc/gai.conf ファイルでこれが実現できるようになっている。 設定ファイル

  • CentOS7でIPv4の優先度をあげる方法

    まあ、CentOS7固有の話ではなくLinux全般で同じ話なんですけど。 前置きです。 現時点でIPv6に対応するメリットって皆無、という方も多いでしょうし、使わない機能は殺すのが原則なのでIPv6そのものを無効にしておられる方も多いでしょう。 (無効にするなら net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 を/etc/sysctl.confに追記してsysctl -p。) むしろ、使わないならリスク管理や計算機資源管理の観点からも積極的に殺すべきです。 ですが、自分のサービスはIPv6に対応する気がさらさらなくても、IPv6しか喋れない相手のサービスを利用するという場合、殺すわけにはいきません。 IPv6が有効になると、何も設定しなければ問答無用でIPv6が優先されます。 通常はそれで問

  • あなたの知らない time(1) の世界 - kuenishi's blog

    自分が書いたプログラムのメモリ使用量を測定したいことがある。プログラムがOOM Killerによってお亡くなりになった場合や、ページフォルトをなくして高速化したい場合などだ。定常的に起動するサーバーのプログラムなら、sarや meminfo など(今なら Datadog とかだろうか)を使ってじーっと見つめるわけだ。もっとモダンにやるなら perf や DTrace を使ってもよいかもしれない。しかしこれらのツールは基的にプロセスIDを渡してサンプリングして外から覗く方法だ。 わたしのユースケースはデーモンプロセスではなく、 main から入って必要な計算をして、それが終わったら main を抜けるバッチジョブ(単にコンソールから実行して終わるまで待つ、いわゆる "Hello world!" 的なやつ)だ。これだと、プログラムが起動して終わるまでそこそこの時間で終わってしまって、外部プロ

    あなたの知らない time(1) の世界 - kuenishi's blog
  • GNU tar 1.35: 5.2 Using tar to Perform Incremental Dumps

  • /proc/[pid]/stat まとめ - 中年engineerの独り言 - crumbjp

    いつも忘れるので、まとめておくことにした stat No フィールド scanf 説明 0 pid %d プロセス ID。 1 comm %s 括弧でくくられた実行形式のファイル名。実行形式がスワップアウトされているかどうかによらず、見ることができる。 2 state %c "RSDZTW" のどれか 1 文字。 R は実行中 (running)、 S は割り込み可能な休眠状態 (sleeping in an interruptible wait)、 D は割り込み不可能なディスクスリープの待機状態 (waiting in uninterruptible disk sleep)、 Z はゾンビ状態 (zombie)、 T はトレースされている (traced) か (シグナルにより) 停止している状態 (stopped)、 W はページング中 (paging) を表している。 3 ppid

    /proc/[pid]/stat まとめ - 中年engineerの独り言 - crumbjp
  • シェルスクリプト多重起動の防止(flock(2) を用い、極力可搬に) - Qiita

    シェルスクリプトにおけるアドバイザリロックの実現方法にはいくつかありますが、ロックファイルの有無では、ファイルの消し損ねがよく起きてしまいます。また、pgrep(1) を用いる方法もよく見られますが、同じパスを含むコマンドが実行中であることは多く(特に、エディタで同スクリプトを編集中である場合など)、これまた確実性に欠きます。 最終的にベストの方法は、flock(2) システムコールを使う方法のようです(レンタルサーバなどでは使えないこともあるようですが、まー、今どきならコンテナ環境とか安いですし…)。flock(1) コマンドが使える環境であれば、待ち・ノンブロックの選択、排他ロックの他に参照の共有ロックもできて便利ですが、当座は多重起動を防止したいだけですので、ノンブロックの排他ロックを用います(参考: 「~/bin - using flock to protect critical

    シェルスクリプト多重起動の防止(flock(2) を用い、極力可搬に) - Qiita
  • プロセスの多重起動をアドバイザリロックで防止する・改 - Qiita

    以前シェルスクリプトの多重起動をアドバイザリロックで防止する案を書きましたが・・・ ShellScript - プロセスの多重起動をアドバイザリロックで防止する - Qiita [キータ] この方法だとロックファイルが残りっぱなしになるので気持ち悪いです。。。 シェルスクリプト自身をロックすればいいかな? と思ったのですが・・・ Bash - flock(1)でシェルスクリプトの排他制御(Linux) - Qiita [キータ] 追記で開かれた状態で実行しようとすると bad interpreter: Text file busy となり、排他制御の目的は達せられてもやっぱり気持ち悪いです。 bash hoge.sh などと呼べば回避できましたが、それはそれでやっぱり気持ち悪いです。./hoge.sh と書きたいです。 そこで、シェルスクリプト自身を読み込みで開いて排他ロックするようにして

    プロセスの多重起動をアドバイザリロックで防止する・改 - Qiita
  • メインページ - ジェイピーアークリナックス

    オペレーティングシステムは、コンピュータのハードウェア管理、ファイル管理、データの入出力と管理、アプリケーションプログラムやユーティリティの実行、ユーザーとの対話などを効率的に行うための制御・処理プログラムの基セットです。

    メインページ - ジェイピーアークリナックス
  • Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)

    「Samba4を「ふつうに」使おう!」@2015/08/08 OSC 2015 Kansai@Kyoto の資料です。 https://www.ospn.jp/osc2015-kyoto/modules/eguide/event.php?eid=52 Samba4というと、新機能のActive Directoryのみが強調されがちですが、前バージョンと同様ファイルサーバとしても 「ふつうに」使うことができます。今回はSambaのインストールは一通りできるという方を対象に、ファイルサーバと しての機能をアップさせていくための小技/テクニックについて伝授します。Read less

    Samba4を「ふつうに」使おう!(2015/08/08 OSC 2015 Kansai@Kyoto)
  • BackupYourSystem/TAR - Community Help Wiki

    Introduction to tar This page is part of the BackupYourSystem article, as such, ensure you've read that prior to continuing. This subpage will acquaint a user with the tar archival program, a CLI solution to the creation of compressed archival backups. It will detail the creation and restoration of archives, including operation over a network. Before continuing users are encouraged to read the Ter

  • Arch Linux の安定化 - ArchWiki

    オペレーティングシステムは、コンピュータのハードウェア管理、ファイル管理、データの入出力と管理、アプリケーションプログラムやユーティリティの実行、ユーザーとの対話などを効率的に行うための制御・処理プログラムの基セットです。

    Arch Linux の安定化 - ArchWiki
  • メインページ - ジェイピーアークリナックス

    オペレーティングシステムは、コンピュータのハードウェア管理、ファイル管理、データの入出力と管理、アプリケーションプログラムやユーティリティの実行、ユーザーとの対話などを効率的に行うための制御・処理プログラムの基セットです。

    メインページ - ジェイピーアークリナックス
  • rsync - ArchWiki

    rsync is an open source utility that provides fast incremental file transfer. Installation Install the rsync package. rsync must be installed on both the source and the destination machine. Front-ends GrsyncGTK front-end. https://www.opbyte.it/grsync/ || grsync JotaSync — Java Swing GUI for rsync with integrated scheduler. https://trixon.se/projects/jotasync/ || jotasyncAUR luckyBackup — Qt fro

  • tc コマンドでネットワーク遅延やパケットロスを疑似的に発生させるメモ - ようへいの日々精進XP

    ども、初老丸です。 tl;dr Linux において tc コマンド(Traffic Control)使ってネットワーク遅延やパケットロスを疑似的に発生させることが出来るとのこと。今まで tc コマンドの存在すら知らなかったペーペーで恐縮だが、参考サイトをまねて遅延やパケットロスを発生させてみたい。 メモ 参考 http://linux-biyori.sakura.ne.jp/setting/st_netem.php http://labs.gree.jp/blog/2014/10/11266/ man tc 以下の環境で試す。 $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=14.04 DISTRIB_CODENAME=trusty DISTRIB_DESCRIPTION="Ubuntu 14.04.2 LTS" ひとまず

    tc コマンドでネットワーク遅延やパケットロスを疑似的に発生させるメモ - ようへいの日々精進XP
  • read コマンドの使い方 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

    拡張 POSIX シェルスクリプト Advent Calendar 2013、13日目の記事です。 今日のネタは組込みコマンド read の解説と使い方を紹介します。 read コマンドとは? read の基仕様・動作は次の通りです。 シェルの組込みコマンドである。 標準入力を読み、一行読み込むか EOF になると終了する。 終了コードは、行を読み込めたときは 0、 読み込めなかったとき (EOF も含む) は 1 となる。 引数にシェル変数名が指定されていたら読み込んだ行を変数に格納する。 読み込んだ行の末尾に改行が付いていたら削除した値となる。 引数のシェル変数名が複数指定されていたら区切り文字 (デフォルトはスペースとタブ。シェル変数 $IFS の値) で分割して変数に格納する。 入力の区切り文字はバックスラッシュ \ で分割をエスケープすることができる。 代表的なオプションは次の