タグ

Unixに関するyasuharu519のブックマーク (16)

  • Stop using tail -f (mostly)

    Stop using tail -f (mostly) 12 Mar 2015 I still see a lot of people using tail -f to monitor files that are changing, mostly log files. If you are one of them, let me show you a better alternative: less +F The less documentation explains well what this +F is all about: Scroll forward, and keep trying to read when the end of file is reached. Normally this command would be used when already at the e

    yasuharu519
    yasuharu519 2015/06/07
    tail -f より tail +F
  • マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー

    また Linux カーネルの話です。 Linux では fork によるマルチプロセスと、pthread によるマルチスレッドでの並行処理を比較した場合、後者の方がコストが低く高速と言われます。「スレッドはメモリ空間を共有するので、マルチプロセスとは異なりコンテキストスイッチ時にメモリ空間の切り替えを省略できる。切り替えに伴うオーバーヘッドが少ない。」というのが FAQ の答えかと思います。 が「オーバーヘッドが少ない」と一言にいわれても具体的にどういうことなのかがイメージできません。そこで Linux のスレッド周りの実装を見て見ようじゃないか、というのが今回のテーマです。 3分でわかる(?) マルチプロセスとマルチスレッド まずはうんちく。マルチプロセスとマルチスレッドの違いの図。以前に社内で勉強会をしたときに作った資料にちょうど良いのがあったので掲載します。Pthreadsプログラミ

    マルチスレッドのコンテキスト切り替えに伴うコスト - naoyaのはてなダイアリー
    yasuharu519
    yasuharu519 2015/06/07
    マルチスレッドのコンテキスト切り替えについて
  • 2015年Webサーバアーキテクチャ序論 - ゆううきブログ

    2023年03月31日追記:この記事を基に、@sadnessOjisanさんより、コードレベルにより踏み込んだ、かつ、グリーンスレッドベースの新しいWebサーバアーキテクチャも含めて整理された記事 Webサーバーアーキテクチャ進化論2023 | blog.ojisan.io が公開されました。 主に新卒のWebエンジニア向けに、古典的なWebサーバアーキテクチャを学ぶ道のりと代表的な実装モデルの概要を紹介します。 この辺りの話題がWeb界隈で流行っていたのは数年以上前というイメージですが、Webサービスは相変わらずWebサーバの上で動いているので、流行り廃り関係なく学ぶべき内容だと思っています。 また、HTTP/2がいよいよRFC化し、既にh2oやtrusterdなどのHTTP/2のサーバ実装があり、今後Webサーバアーキテクチャを再訪することが増えるような気がしています。 ところが、We

    2015年Webサーバアーキテクチャ序論 - ゆううきブログ
    yasuharu519
    yasuharu519 2015/06/01
    いい記事だなー
  • UNIXにみる世代間の断絶

    (まだまだ調査中) UNIXにみる世代間の断絶をまとめようという試 みです。どちらが良い悪いという比較をするつもりはありません。 両者の良い点を学んでいこう (新旧自在の hybrid type を目指そ う) 、というのがこの文書の目的です。

  • (Linux)コマンドを連結して行う「;」「&」「&&」「||」の違い | old_3流プログラマのメモ書き

    シェルスクリプトにおいて、複数のコマンドを連結して処理するときに、「;」「&」「&&」「||」が使えるですんが、それぞれがどのような動きするかまとめてみました。 ;(セミコロン) 前のコマンドが終わり次第、次のコマンドが実行される。(3つ以上のコマンドを連結してOKみたい) #command1 を実行し、実行後 command2 を実行する。 command1 ; command2 &(アンパサンド) ;(セミコロン)は前のコマンドの完了を待っていたが、&は待たない。 #command1 を実行しながら、command2 を実行する。 command1 & command2 && 前のコマンドがうまく終了した(終了ステータスが0)なら、次のコマンドを実行。そうでないなら次のコマンドは実行しない。 #command1 が 0 を返した場合、command2 を実行 command1 && c

    (Linux)コマンドを連結して行う「;」「&」「&&」「||」の違い | old_3流プログラマのメモ書き
  • configureスクリプトとは何なのか

    Home Subscribe configureスクリプトとは何なのか 19 February 2015 おはこんばんちは!! 尾藤 a.k.a. BTO です。 みなさん Unix のパッケージをインストールする時、configureスクリプト実行しますよね。 なんかいっぱいいろんな事してるみたいで便利そうですよね。 でも実際は何をしてるんでしょうね。 configureスクリプトの出力見てますか? エラーが起きたときしか見てない事ないですか? 先日、よく使ってるんだけどよく知らないと思われる configure スクリプトの正体について、オトバンクで勉強会をやりました。 魔法の呪文 ./configure && make && make install よく打っているコマンドだと思いますが、これだけで解決します。 素晴らしいですね!! GNU Autotools configure

    configureスクリプトとは何なのか
  • パイプとフィルタ ~ソフトウェア工学における有用なアーキテクチャ~ | POSTD

    パイプライン は、最近のソフトウェアエンジニアリングにおいて、非常に便利な(そして驚くほど活用されていない)アーキテクチャパターンです。ソフトウェアでデータの流れを制御するためにパイプとフィルタを用いる考え方は、最初のUNIXシェルが作られた1970年代からあります。もしターミナルエミュレータでパイプ” | ”を使ったことがあるなら、”パイプとフィルタ”を活用できていることになります。以下の例を見てみましょう。 cat /usr/share/dict/words | # Read in the system's dictionary. grep purple | # Find words containing 'purple' awk '{print length($1), $1}' | # Count the letters in each word sort -n | # Sort l

    パイプとフィルタ ~ソフトウェア工学における有用なアーキテクチャ~ | POSTD
  • daemonize — A tool to run a command as a daemon

    Introduction daemonize runs a command as a Unix daemon. As defined in W. Richard Stevens’ 1990 book, UNIX Network Programming (Addison-Wesley, 1990), a daemon is “a process that executes ‘in the background’ (i.e., without an associated terminal or login shell) either waiting for some event to occur, or waiting to perform some specified task on a periodic basis.” Upon startup, a typical daemon prog

    yasuharu519
    yasuharu519 2014/09/19
    deamonizeとは
  • Linuxコマンドでテキストデータを自在に操る - じっくりコトコト煮込んだみかん

    Linuxでテキストデータを扱うときに、コマンドをパイプで繋げるだけでいろいろな処理ができて面白いのですが、綺麗に整理されていない気がするのでまとめてみます。ここでは、cat, paste, join, grep, head, tail, cut, awk, sed, tr, sort, uniq, wc を取り上げます。 ファイルを縦に結合 ファイルを縦に結合します。 コマンド 説明 cat file1 file2 ... file1, file2, ... を縦に結合 cat file | ... としてファイルの中身をパイプに流すのにもよく使います。 ファイルを横に結合 ファイルを横に結合します。あまり使わない?*1 コマンド 説明 paste file1 file2 .. file1, file2, ... を横に結合 join file1 file2 file1 と file2

    Linuxコマンドでテキストデータを自在に操る - じっくりコトコト煮込んだみかん
    yasuharu519
    yasuharu519 2014/03/17
    わかりやすい
  • プロセス・パイプ・リダイレクション・ファイルディスクリプタの実体を見に行く - ザリガニが見ていた...。

    プロセス置き換えとか、名前付きパイプとか、とても便利な機能なのだけど、その仕組みはどうなっているのだろう?断片的な知識ばかりでは、その核心にはなかなか辿り着けない。サンプルコードの真似はできるけど、それ以上の発想はできない...。もっと根的なところからちゃんと理解しておかないと、いつまでたってもコマンドの使い方の質が理解できないと感じた。プロセスとは何か?パイプとは何か?リダイレクションとは何か?ファイルディスクリプタとは何か?可能な限りその質を探ってみようと思う。 UNIXのプロセス UNIXでは、複数のユーザーがログインした状態で、同時に複数の処理を依頼される状況が多々ある。 ところが、どんなに高性能なCPUであっても、ある瞬間に処理できるのはたった1つの処理だけである。 そんな時OSは、それぞれの処理に必要なメモリ領域を割り当てて、CPUをタイミングよく切り替えながら同時並行的

    プロセス・パイプ・リダイレクション・ファイルディスクリプタの実体を見に行く - ザリガニが見ていた...。
  • シェルスクリプトから"foreman start"したときにCtrl-Cで終了できない現象の解説 - はこべにっき ♨

    シェルスクリプトから"foreman start"したときにCtrl-Cで終了できないという現象に遭遇しました。なぜこのようなことが起こったのかについて調べてみたので解説します。一見不可解におもえるプロセスの振舞いをUNIXプロセスの仕組みをひもとき説明してみたというおもむきの記事です。 概要 foremanはシェルスクリプトから、"foreman start"のように起動したときにCtrl-C終了できません。シェルスクリプトでなくてもssh経由で ssh -t host foreman start のようにした場合でも同様の問題が発生します。これは、foremanがsetpgrpシステムコールを呼び出してプロセスグループのリーダになるという動作をしていたのが原因でした。 現象 以下のように "foreman start"をシェルスクリプトから実行すると、Ctrl-Cによりforemanを

    シェルスクリプトから"foreman start"したときにCtrl-Cで終了できない現象の解説 - はこべにっき ♨
  • TechLION について - TechLION

    TechLIONは、IT文化の振興と、UNIX/Linux文化の楽しさを広く伝え、エンジニア同士の連帯を図ることを目的とするトークイベントです。日々多くの技術が生まれ、消えていきますが、これらの技術を密林の動物たちになぞらえ、百獣の王となる技術を酒を酌み交わしながら発掘・探求しようというイベントです。 開催概要 名称:TechLION 主催:チームTechLION 協賛:USP研究所、技術評論社、ほか 後援:日UNIXユーザ会、ほか 公式タグ:techlion 問い合わせ先:チームTechLION (E-mail:staff[at]techlion.jp) 次回予告 名称:TechLION vol.39  Web 2.0からの20年~Webのカレントバージョンを考えてみる 日時:2024年6月5日(水) 19:00開演、21:00終了予定 場所:さくらインターネット東京支社 料金:100

    TechLION について - TechLION
  • SUIDとは

    SUIDは危険であるという話を聞いたことがありますが、そもそもSUIDが何なのか分かりません。具体的にSUIDとはどういったものなのでしょうか? SUIDとは、実行ファイルに設定される特殊な属性を意味します。UNIX系OSには特殊なファイル(ディレクトリ)属性として、SUID、SGID、Stickyの3つが存在します。それぞれについて、具体的な役割を説明していきましょう。 SUID SUID(Set User ID)は実行ファイルに設定される属性です。通常の実行ファイルは実行者の権限で動作しますが、SUIDが設定されていると実行ファイルの所有者の権限で動作します。 SUIDが使用される例としてはpasswdコマンドが挙げられます。パスワードを変更するということは、実際には/etc/shadowファイルを編集することになりますが、一般ユーザーには/etc/shadowファイルを変更する権限は

  • 技術/UNIX/なぜnohupをバックグランドジョブとして起動するのが定番なのか?(擬似端末, Pseudo Terminal, SIGHUP他) - Glamenv-Septzen.net

    ホーム 検索 - ログイン | |  ヘルプ 技術/UNIX/なぜnohupをバックグランドジョブとして起動するのが定番なのか?(擬似端末, Pseudo Terminal, SIGHUP他) [ Prev ] [ Next ] [ 技術 ] 何をいまさら当たり前の事を・・・と思われるだろう。 $ nohup long_run_batch.sh & SSHからログアウト後も実行を続けたいバッチジョブを、"&"を付けてバックグラウンドジョブとしてnohupから起動するのは定番中の定番である。 しかし、「nohupを使わなくても実行を続けることが出来る」やり方があったり、さらには「nohupを付けてもログアウト時に終了してしまう」パターンがあるとしたらどうだろう? そして、ある日あなたの後輩や同僚がこれらについてあなたに質問してきたら、あなたはどう答えるだろうか? 「Web上で検索したら見つか

  • UNIXの部屋 検索:chmod

    UNIX/Linux の chmod コマンドは、ファイルやディレクトリのパーミッションや属性を変更するためのコマンドである。パーミッションにより、あるファイルを、どのユーザが読むことができ、どのユーザが書き込めるか、などのアクセス権限を管理している。

    UNIXの部屋 検索:chmod
  • 覚えておきたいMacのターミナルコマンド集 – creamu

    ちょっとMacのターミナルコマンドがまとめてみたくなったのでまとめてみます! whatis コマンドの用途を教えてくれる。 $ whatis cp cp(1) – copy files sleep 指定秒後にコマンドを自動実行。 $ sleep 60; open ./test.mp3 60秒後にtest.mp3を再生。 date 現在日時と曜日を表示。 $ date 2008年 9月13日 土曜日 18時08分40秒 JST cal 指定した年月のカレンダーを表示。 $ cal 9 2008 2008年9月のカレンダーを表示。 df / ディスクの使用量(Capacity)を表示。 whois ドメインの所有者を調べられる。 例) whois apple.com ifconfig ローカルのIPアドレスなど、ネットワーク情報が調べられる。 dig ドメインのIPアドレスなど、詳細情報がわか

    yasuharu519
    yasuharu519 2010/09/05
    覚えておきたいコマンド
  • 1