タグ

UNIXに関するot2sy39のブックマーク (15)

  • さよなら、愛しのFreeBSD|力武 健次 / りきたけ けんじ|note

    2019年1月末でFreeBSDに関連する開発活動を止めることにした。とても愛していたOSだけに身を切られるような思いは否めなかったが、別れが来るなら自分の自由になるうちにと思い、決断した。以下は個人的な想いを綴っている。 BSDの大元は、カリフォルニア大学バークレイ校で作られたオペレーティングシステム、今風に言えば基ソフトだ。Berkeley Software Distributionというのがもともとの名前だ。 1985年に自分がUNIXに触れたころから憧れていたのがこのBSDだった。当時のBSDはまだオープンソースではなかったAT&TのUNIXのライセンス制限の傘下にあり、自由にソースコードが読めなかった。でもAT&TのUNIXであるSystem V(システムファイヴ)よりはずっと自由だった。その後、DECのULTRIXやSunのSunOS 4など、多くの先進的なUNIXマシンがB

    さよなら、愛しのFreeBSD|力武 健次 / りきたけ けんじ|note
    ot2sy39
    ot2sy39 2019/02/06
    お疲れ様でした。FreeBSDは4.xの頃にデスクトップOSとして使っていた。自分は使うばかりだったが。Sun4とか使っていた人のBSDに対する特別な思いは、Linuxがすでに普及してから入った人には実感できないと思う。
  • sh -cで呼び出したコマンドがbashだと孫プロセスにならないことがある | おそらくはそれさえも平凡な日々

    前提として、/bin/sh は、デフォルトでは、RHEL系の場合bashシェル、Debian系の場合dashシェルへのsymlinkになっています。この2つのシェルの挙動は細かいところで結構異なります。そもそもの思想として、dashシェルはPOSIX互換を目指す軽量なシェルであり、bashは拡張された高機能なシェル。なのでbash前提で書かれたシェルスクリプトがdashでは動かない、みたいなことはよくあります。そういう感じで困ることがままありますが今回もそういう話。 例えば % sh -c "sleep 100" のようなコマンドを実行した場合、呼び出し元の子プロセスが sh になり、その更に子プロセスが sleep になると直感的には思うでしょう。つまり以下のような具合。 . \_ sh -c sleep 100 \_ sleep 100 しかし、 sh の実体が bash である場合な

    sh -cで呼び出したコマンドがbashだと孫プロセスにならないことがある | おそらくはそれさえも平凡な日々
    ot2sy39
    ot2sy39 2018/12/19
    やっぱ /bin/sh をこういう攻めたシェルで置き換えちゃうのはいかんのでは?
  • シェル芸力向上のため moreutils を一通り試してみた - Qiita

    $ rpm -qi moreutils Name : moreutils Version : 0.49 Release : 2.el7 Architecture: x86_64 Install Date: Fri 29 May 2015 06:34:50 PM JST Group : Applications/System Size : 155340 License : GPLv2 Signature : RSA/SHA256, Tue 04 Mar 2014 12:35:02 PM JST, Key ID 6a2faea2352c64e5 Source RPM : moreutils-0.49-2.el7.src.rpm Build Date : Wed 26 Feb 2014 07:58:44 PM JST Build Host : buildvm-21.phx2.fedoraproj

    シェル芸力向上のため moreutils を一通り試してみた - Qiita
  • FreeBSDをワンライナーでインストールしてみた

    最近のFreeBSDには「bsdinstall」というべんりツールが付属していて、どれくらい便利かっていうとワンライナーでOSのインストールが完了するくらい便利なのです。 環境 Windows7 64bit VirtualBox インストールメディア:FreeBSD-10.1-RELEASE-amd64-disc1.iso 手順 ①インストールメディアからブートします。②「2. Boot Single User」を選択します。 ③/bin/shのままログインし、おもむろに以下のワンライナーを入力します。 mdmfs -s 100m md1 /tmp && printf 'PARTITIONS=ada0\nDISTRIBUTIONS="base.txz kernel.txz"\n'>/tmp/a && bsdinstall script /tm

    ot2sy39
    ot2sy39 2015/05/14
  • 【FreeBSD】入力ファイルに直接リダイレクトして書き込みができるかどうか実験してみた

    シェル芸家元より、GWの宿題が出題されました。 ゴールデンウイークシェル芸問題 | 上田ブログさて、これの関係で、入力ファイルに直接リダイレクトして書き込みができるかどうか、問題を解く前に調べておこうと思いちょっと実験してみました。 日頃気になってたことでもありますし・・・環境はいつもの通り、Windows7上のVMWare Player上のreeBSD 10.1 amd64 のJail環境です。 準備

    ot2sy39
    ot2sy39 2015/05/02
    本来こういう確認をしようと思わなければいかんのだ。「怪しい詳細を確認する」ことができない性格をほんとどうにかしたい。
  • Linuxのpingコマンドで覚えておきたい使い方16個(+2個) | 俺的備忘録 〜なんかいろいろ〜

    仕事Linuxを利用していれば、必ずやお世話になるであろうpingコマンド。 しかし、大体の人はなんとなく使っていないだろうか?今回は、そんなpingコマンドで覚えておきたい使い方についてを紹介する。 1.基的な使い方 まずは基的な使い方…といっても、大体の人はわかるだろう。 以下のようにコマンドを実行する事で、相手先のホストが疎通可能な状態かを確認する。 ping 相手先のホスト名(IPアドレス) test@ubuntu-server:~$ ping 192.168.0.1 PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data. 64 bytes from 192.168.0.1: icmp_seq=1 ttl=255 time=0.574 ms 64 bytes from 192.168.0.1: icmp_seq=2 ttl=2

    ot2sy39
    ot2sy39 2015/04/15
    -Rはtracerouteと違って往復の経路が違う場合に復路も確認できるので稀に超役立つ。Ctrl+\は知らなかった。
  • なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 / Jesse Storimer - スペクトラム

    #naruhounix を読んだ。 正直「プロセス?あれでしょ、なんか動くやつ。」というレベルだったので非常に勉強になった。 Rubyで書かれているのも、余計なこと(Cの文法とか例外処理とか)がついてこなくて理解しやすい。 書き方はいいからイメージが知りたいんや!というタイプの方におすすめ。 逆にRubyの余計なこと(このバージョンでは修正済みとか)がついてくるのでRubyist寄りであることはいなめない。 プロセスをforkしてもリソースは同じみたいなところはポインタ的な解釈。 あとfork後ちょっとでもメモリの内容が変わったら全コピーだと思ってたけど全然違ってオブジェクト単位?(このへんあやふや)というか当に変わった部分だけコピーされるみたいだ。 例えばRailsアプリとかは立ち上がる際に大量のフレームワークのコードとアプリケーションのコードを読み込んでいるので数秒とかかかる。 しか

    なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 / Jesse Storimer - スペクトラム
    ot2sy39
    ot2sy39 2015/04/08
    本を読んだだけでなく、こうやって手を動かしてみる必要があるんだろうな。ましてやブログエントリだけ読んでわかった気になってはいけない……。
  • コマンドを並列に実行するGNU parallelがとても便利 - りんごがでている

    最近のコンピュータは複数のCPUコアを持っているので並列にコマンドを実行することができます。 たくさんの同じようなファイルに同じ処理を実行することは、私のやっているバイオインフォマティクスではよくあります。 しかし自分で並列に実行するスクリプトを書くことはそれほど簡単ではなく、ログや実行結果の確認など煩雑な処理を書かなければいけません。 この記事では、そうした処理を簡単にするGNU parallelというツールを紹介します。 GNU parallel UNIX系のOSではインストールはとても簡単です。MacでしたらHomebrewを使って、Linuxでは各ディストリビューションのパッケージマネージャからインストールできます。 詳しくはGNU parallelのウェブページを参照して下さい(http://www.gnu.org/software/parallel/)。 Homebrew: b

    コマンドを並列に実行するGNU parallelがとても便利 - りんごがでている
    ot2sy39
    ot2sy39 2015/03/30
    gnu parallel 超便利な(シーンがある)んじゃね?
  • process-book

    この文書はなんですか? この文書は*nix系のシステムにおけるプロセスやシグナルなどについて説明することを目的に書かれました。「プロセスとかよくわかってないからちゃんと知りたいな」みたいなひとたちが想定読者です。 書いているあいだは gist で管理されていたのですが、ボリュームが大きくなったので github で管理するように変えました。 目次 導入 プロセスの生成 プロセスとファイル入出力 ファイルディスクリプタ preforkサーバーを作ってみよう ゾンビプロセスと孤児プロセス シグナルとkill プロセスグループとフォアグランドプロセス epub と pdf epub化したもの、pdf化したものが release ディレクトリに入っています。thanks to mitukiii & moznion! ライセンス この 作品 は クリエイティブ・コモンズ 表示 - 継承 3.0 非移

    ot2sy39
    ot2sy39 2015/02/03
    UNIXのプロセスとシグナルを理解する (追記)お、epub版あるじゃん。Kindleに入れよう。
  • linuxで重大なバグGHOST発見。パッチ当て方まとめ。 - エンジニア的な技術的なブログ

    こんな感じ http://japan.zdnet.com/article/35059585/ ネットワークにかかわるライブラリのバグってことで、 ほとんどのlinuxのディストリビューションで対応が必要です。 centOS, red hat linux, fedra, ubuntuぜんぶです。 その名も GHOST 面倒なのがサーバの再起動が必要なこと。 記事ではcentOSは6,7だけでいいみたいに書いてありますが CentOS 5 も影響が無いわけではないらしいです。 http://d.hatena.ne.jp/Kango/20150128/1422409960 また、CentOSもglibcのアップデートが来ているようです。 この辺を参考にupdateを行った方が良さそうです。 http://www.walbrix.com/jp/blog/2015-01-ghost.html yum

    linuxで重大なバグGHOST発見。パッチ当て方まとめ。 - エンジニア的な技術的なブログ
    ot2sy39
    ot2sy39 2015/01/28
    GHOSTの対処。yum update glibcでエラー発生。このリンクの追記2にまんま該当。先人のおかげで助かった。
  • fork()は失敗するんだぜ、覚えときな

    fork() can fail: this is important あー、fork()のことね。プロセスがもっとプロセス作るためのやつな。いや、他にもプロセス作る方法はあるけどな。ま、面白い話がもうひとつあるから聞かせてやるよ。 forkは失敗するんだぜ。分かってるか? マジで分かってるか? マジだぜ。forkは失敗するもんだ。mallocと同じさ。失敗することもある。そんなに頻繁にってわけじゃないけどさ、でも失敗したら、無視できっこないぜ。ちっとは脳みそ働かせなきゃならん。 forkが0を返したら、そいつは子プロセスで、親なら正数を返すってことは、みんな知ってるよな。その値は子のpidだ。こいつを保存しといて、あとで使うってわけだ。 失敗を確認しない場合どうなるか知ってるか? そうだよ。お前多分、"-1"(forkのエラー通知)をpidとして扱ってるんだろ。 さて、問題の始まりだ。

    ot2sy39
    ot2sy39 2014/08/22
    よく考えると、コマンドラインからkill -1がいきなり通っちゃうのひどいな。-Fオプションをつけないと-1は通らない、みたいな安全装置がほしい。
  • FreeBSDのTCPスタックに脆弱性、カーネルメモリを抜き取られる可能性:Geekなぺーじ

    FreeBSDのTCPスタックに含まれる脆弱性に関する情報が公開されました。 現在サポートされている全てのFreeBSDバージョンに影響があるようです。 The FreeBSD Project Security Advisory: TCP reassembly vulnerability TCPセグメントの並び替えを行うコードに不具合があり、カーネルをクラッシュさせることによるDoS攻撃が可能とあります。 また、非常に難易度が高いとしつつも、今回の脆弱性を突くための工夫を凝らしたTCPセグメントを駆使することで、カーネルが保持するメモリを、接続されたソケット経由で取得できてしまう可能性もあるとのことでした。 FreeBSDのセキュリティアドバイザリでは、カーネルがメモリに保持するものの例として「ログイン認証情報など」とあります。 FreeBSDは家庭用PCや各種サーバで利用するだけではなく

    ot2sy39
    ot2sy39 2014/05/01
    FreeBSDだとわかって使っている人はパッチ当てればいいが、組込みや派生OSでFreeBSDだと認識していない場合はやばそう。
  • OpenBSD、怒りのコミット

    OpenSSLのheatbeatバグの対応のため、OpenBSDはOpenSSLのheatbeatを無効にするコミットをした。ただし・・・ src/lib/libssl/ssl/Makefile - view - 1.29 SegglemannのRFC520 heatbeatを無効化。 あのまともなプロトコルひとつ制定できないIETFの無能集団が、超重要なプロトコルで64Kの穴をこしらえるとか、マジであきれてものも言えねーわ。奴らはマジこの問題を気で検証すべきだろ。なんでこんなことをしでかしたのか。こんな事態を承認した責任ある連中を全員、意思決定プロセスから取り除く必要がある。IETF、てめーは信用なんねぇ。 このコミットは、Makefileの中で、OpenSSLでheatbeatを無効にするマクロを定義するよう、コンパイラーオプションを指定するものだ。ただし、無効にするマクロは、OPE

    ot2sy39
    ot2sy39 2014/04/11
    これは楽しいw
  • unixのuniqコマンドに相当するコマンドを、windows標準環境で実現する - くらげのChangeLog

    http://www.fpcu.jp/dosvcmd/bbs/log/unixdoswindows/3-0062.html cmd.exeのシェルスクリプト……つまり、バッチ(bat)ファイルで実現できるらしい。 注意点として、空行のみのファイルが正常に処理されない(何も出力されない)とか。素晴らしいです。 @echo off rem --------------------------------------uniq.bat set prev= if not exist "%1" goto error for /f "tokens=* delims=" %%L in ( %1 ) do call :sub %%L goto exit :sub if not "%prev%"=="%*" set prev=%*&&echo %* goto :EOF :error echo. echo 表示

    unixのuniqコマンドに相当するコマンドを、windows標準環境で実現する - くらげのChangeLog
    ot2sy39
    ot2sy39 2013/07/24
    たまにこういうのが必要な案件が発生する。正直不毛な努力。unixの基本フィルタ全部とは言わないから、 #awkをWindowsに標準搭載希望 。MS頼むよホント。
  • プロセスとかスレッドとかプロセス間通信とかについて書く場所

    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

    プロセスとかスレッドとかプロセス間通信とかについて書く場所
  • 1