タグ

linuxに関するoinumeのブックマーク (247)

  • いっぱい接続したいの - (ひ)メモ

    とあるホストに、TCP接続を張っては切るという処理をぐるんぐるん繰り返すベンチマーク的なプログラムを書いて動かしました。 最初のうちは期待した通りの動作をしてるんですが、途中から対向のホストにTCP接続できなくなってエラー出まくり。 $ netstat -tna | grep TIME_WAIT | wc -l 28230これが原因ぽい。 KERNEL_SOURCE/Documentation/networking/ip-sysctl.txt によれば、 ip_local_port_range - 2 INTEGERS Defines the local port range that is used by TCP and UDP to choose the local port. The first number is the first, the second the last loc

    いっぱい接続したいの - (ひ)メモ
  • forkを攻略しよう 〜第1回〜 - Mandy Code

    なんか先週結構Parallel::ForkManagerやらParallel::Preforkやらについてすごく議論というか話をしたので、自分もあまり得意ではないんですがforkについての僕の考え方をまとめておこうと思います。 forkってなんぞ。 Does a fork(2) system call to create a new process running the same program at the same point. It returns the child pid to the parent process, 0 to the child process, or undef if the fork is unsuccessful. File descriptors (and sometimes locks on those descriptors) are shared

    forkを攻略しよう 〜第1回〜 - Mandy Code
  • あるディレクトリ以下の全てのbinディレクトリにPATHを通したい時 - 元RX-7乗りの適当な日々

    Linuxの開発/検証環境とかで色々とプロダクトをインストールした時って、毎度環境変数のPATHを設定するの面倒くさいですよね。 そんな時は、片っ端からbinとかsbinディレクトリにパスを通しちゃいます(^^;) $ export PATH=$PATH:`find /usr/local -type d -name '*bin' | paste -s -d : -` findで引いてきたものをpasteする時に、"-d"オプションで区切り文字に":"を使っておけば良いわけですね。 ちょっとしたTIPSでした。 =͟͟͞͞(๑•̀=͟͟͞͞(๑•̀д•́=͟͟͞͞(๑•̀д•́๑)=͟͟͞͞(๑•̀д•́

    あるディレクトリ以下の全てのbinディレクトリにPATHを通したい時 - 元RX-7乗りの適当な日々
    oinume
    oinume 2012/03/22
    paste
  • koshigoe.jp

  • oinume journal

    Claude Code GitHub Actionsを使っていて、自分は以下のような2種類のタスクを依頼することが多い。 実装計画を立ててもらう 実装をしてもらう Claude Codeであれば実装計画はOpusを使って、実装タスクはSonnetを使うみたいな使い分けが簡単にできるのにClaude Code GitHub Actionsではデフォルトだとそれができなかったのでちょっとやってみた。 具体的には、以下のようなclaude.ymlのWorkflowファイルを追加して、GitHub Issueなどのコメントで @claude このタスクの実装計画を Opus で立てて とコメント内にopus, sonnet, haiku のキーワードを含めることで指定したモデルでClaudeが動くようになる。 やっていることは単純で、メッセージ内にopusなどのキーワードをgrepで引っ掛けてmo

    oinume journal
  • void GraphicWizardsLair( void ); // クラッシュしたHDDをサルベージするときはKNOPPIXかFreeSBIEでdd_rhelpとかdd_rescueするのがオススメ

  • ddrescueでHDを復旧する

    壊れたハードディスクの復旧をやりました。 先日友人のハードディスクが壊れた。いつもだったら、BeartPEを使うか外付けのusbケースに取り付けてデータのレスキューを行うのだけど、今回はどちらもダメ。で、いろいろ探してたら、ddrescueってのがいいみたい、ってのを見つけたのだけど、使い方がさっぱりわからなかった。なので、使い方などを残しておく。 ddrescue ってのは、Linuxなんかで使えるコマンドらしい。ハードディスクを丸ごとコピーできるので、壊れて物理的にも不安定になってるハードディスクから、新品のハードディスクにまるまるコピーができる。新品にコピーしたのをいじれば、物理的に壊れていくのを心配せずにデータのレスキューをいろいろ試せる。 ddrescue はknopixやubuntuにも入っているって書き込みを見つけたけど、私の持ってるやつには入ってなかったので、SystemR

  • ローカルディスクの容量が無いけどtarアーカイブを作りたい時に - 256bitの殺人メニュー

    このディスクの/usr/local以下バックアップしたいんだけど、もうローカルディスクの容量が無い。 てか、ローカルディスクの容量が無いから移したいんだよ!って言う卵が先か鶏が先か理論の時の話。 tarアーカイブを直接標準出力してnetcatでリモートホストで保存する方法。 こういうのも書いといたほうが誰かの役に立つであろうとメモ書き! netcatとは ファイルの内容を標準出力させたり、パイプ経由してファイル書きだしたりするのに使うcatコマンドがありますが、それをTCP,UDP経由で行えるようにするコマンドがnetcat(nc)です。 netcat 待ち受け側(リモートホスト) $ nc -l 12345 > /tmp/send.tgzで12345ポートで待ち受け。 ここに送信されてきたデータを/tmp/send.tgzへリダイレクトする。 netcat 送信側(ローカルホスト) $

    ローカルディスクの容量が無いけどtarアーカイブを作りたい時に - 256bitの殺人メニュー
  • DBサーバの場合のLinuxチューニング - shibainu55日記

    今回はLinux上でPostgreSQLMySQLなどのDBMSを使う場合のLinuxカーネルチューニングについて。共有メモリ(shmallやshmmax)については設計時にもれなく設定の確認などをしている場合がほとんどだと思うが、それ以外のTipsとして、今回はLinuxのメモリオーバーコミットに関する記事。DBMS向けと書いたが、Linux上で動作させるソフトウェアであればDBMS以外でも考慮に入れて設計すべきポイントである。 Linuxのメモリ管理 Linuxのメモリ管理サブシステムには「メモリオーバーコミット」と呼ばれる機構があり、マシンに物理的に搭載されているメモリ以上の領域を確保できてしまう。この動作については、メモリ確保の際(Cの場合)実際に使われるmallocを使ったサンプルアプリなどで実際に挙動を確認することができる。参考までに、あるサイトの方は以下のようなサンプル(a

    DBサーバの場合のLinuxチューニング - shibainu55日記
  • テキストファイルを処理するときのUnixコマンドまとめ - nokunoの日記

    個人的にテキストファイルを処理することが多いのですが,簡単な処理ならUnixのコマンドをパイプとリダイレクトで組み合わせてできることが多くあります.今回はそんななかでもちょっとマニアックなTIPSをまとめてみました. sortコマンドでタブ区切りのファイルを指定する最近知って驚愕したのがこれ.sortコマンドでタブ区切りのファイルを指定したいときは,Ctrl+v Tabでタブ文字を入力していたのですが,$ sort -t $'\t' -k 2,2 のようにしてタブ区切りで2番目のキーでソートすることができます. 1000行おきにデータをサンプリングする1000行おきにファイルからデータをサンプリングしたいときとかは,perlでワンライナーを書くのが速いようです.$ perl -ne '$i++; print unless ($i % 1000)' 某所のコードゴルフによるとこれだけ短くでき

  • ヽ( ・∀・)ノくまくまー(2010-03-18)

    SSDなUbuntu 9.10のインストールメモ Ubuntu を 9.10 に上げる。折角なので、SSDにチャレンジしてみた。 SSDは「書き込み回数が多いと寿命は2年」らしいので、rootパーティションで利用して、データ領域にはIDE(SATA)を利用することにした。インストール自体は30分弱で完了。てか、9.10のインストーラの完成度は異常。デフォルトで進んでたら ext4 になったけど、まぁよしとしよう。 優しいSSDの育て方 Ubuntu LinuxSSDの寿命を延ばすための設定 http://tech.lampetty.net/tech/index.php/archives/299 SSD保護対策 http://blog.goo.ne.jp/j_adversaria/e/99422fb6cbee9da80d45ec386bc30b41 の情報をまとめると、 swap領域を

  • ttyについて ttyやptsってなんぞ? - それマグで!

    PCにシリアルコンソールでログインできるように設定した。シリアルコンソールを使えばNICの設定などでもあわてずに利用できる。便利。シリアルコンソールでつかうmgetty mingettyのttyってなんだろう ttyとは、 どうやら、標準出力の接続先デバイス事のらしい。一般的にはpts、RS232C経由などはttyS0が標準出力の接続先になっていて、中継しているプログラムがmgetty。 図で表すと PC----ssh------/dev/pts/1--sshd----bash #ssh が接続されている PC----rs232c---/dev/ttyS0--mgetty--bash #rs232c が接続されている とttyなど仮想端末経由になっている。コレ今はよく解ったけど、ずっとよく解らなかった。 私が理解できるようになるまで、次のプロセスがありました。 2ヶ月前 先輩に訊いてみた

    ttyについて ttyやptsってなんぞ? - それマグで!
  • どさにっき

    2008年4月21日(月) ■ 無題 _ 今朝の電車でおっさんが読んでたスポーツ新聞からちょっと見えてた見出し。頭のおかしい人が新幹線で全裸になってタイーホ。春だなぁ。 _ 出社してからニュースサイトを巡回して、それが ファーストサーバの社長だったと知る。あぁ。 _ ち、ちがうよっ、春だから頭のおかしい人が湧いてきたんじゃないよっ。だってレンタルサーバ会社の社長だよ? 頭がおかしいなんてことはないよ。最近のデータセンターは電力問題とか熱問題とかいろいろ大変だからね、きっと陽気がよくなってあったかくなったから熱暴走を起こして、その冷却のために大事なところを放熱してただけなんだよっ。 _ てか、ファーストサーバっていつのまにか yahoo の系列になってたのか。昔はクボタ(もちろん農業機械のクボタのことだ)の子会社だったよね、たしか。 2008年4月28日(月) ■ 無題 _ メール屋を廃業し

  • @IT:/tmpのファイルがいつの間にか消えてしまう

    /tmpにコピーしておいたファイルは、毎日午前4時2分に行われる自動処理(午前4時になると激しいディスクアクセスが始まる参照)の1つによって消去される。具体的には、その処理を行っているのは/etc/cron.daily/tmpwatchだ。 Red Hat LinuxとVine Linuxの場合、/etc/cron.daily/tmpwatchは以下のようになっている。 /usr/sbin/tmpwatch 240 /tmp ←240時間アクセスされていない/tmpのファイルを削除 /usr/sbin/tmpwatch 720 /var/tmp ←720時間アクセスされていない/var/tmpのファイルを削除 for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do if [ -d "$d" ]; then /usr

  • https://docs.google.com/viewer?a=v&q=cache:surUGbLq1DQJ:image.gihyo.co.jp/assets/files/event/2008/24svr/report/2-24svr-TechMTG-ito.pdf+&hl=en&pid=bl&srcid=ADGEESisdoEAt03OJEl2IUxkiZl6VJL8oZ0LGfovGDqGct4tIFqk7na2Iq3eQqAL8S74m6XVX_Hixg4A65Iu6bdJIRts7pjxOkPs

  • Linux Memory Overcommit - memologue

    かなり昔ですが、或日さんのSolaris8におけるmemory over commitの話題に触発され、Linuxの場合について調べた事があります。正しさは保証しませんが当時のメモを貼っておきます。 memory overcommit? メモリ資源の非常に限られた環境でLinuxを使用しているとよく遭遇する現象なのだが、kernel 2.4までのLinuxでは、"mallocが成功を返したにもかかわらず、その確保した筈のメモリ領域にアクセスすると、SIGKILLによってkernelから強制終了させられてしまう" という現象が 発生することがある。これは、「全プロセスがnew/mallocしたメモリの総量」に対して物理メモリ量が少なすぎる瞬間に於いては常に発生し得る。 何に困っているかといえば、C++でオブジェクトをnewした時に、メモリの枯渇をstd::bad_alloc例外送出という形で

    Linux Memory Overcommit - memologue
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • CLOSE_WAITの状態が続くとどうなるか - こせきの技術日記

    相手のアプリケーションがcloseして、こちらのアプリケーションがcloseせずにいる場合(ハーフクローズの状態、上の図参照)、一定時間後に相手側のFIN_WAIT2と、こちらのCLOSE_WAITが消えた。この現象は、2つのタイマーが関係しているらしい。 http://www.linux.or.jp/JM/html/LDP_man-pages/man7/tcp.7.html FIN_WAIT2は、 tcp_fin_timeout でタイムアウトする。デフォルトは60秒。 CLOSE_WAITは tcp_keepalive_time 秒後に(デフォルトは2時間)、接続が有効かどうかを確認する(keep-aliveプローブを送信)。 相手側がFIN_WAIT2で待っている場合は、ACKが返ってきて接続が維持される。 相手側が tcp_fin_timeout によってクローズ済みの場合、リセッ

    CLOSE_WAITの状態が続くとどうなるか - こせきの技術日記
  • [linux] mount --bind/--rbindについて

    mount --bind/--rbind で が呼ばれてマウントされるまでを追う 内部のシステムコールはsys_mount MS_BIND/MS_RECフラグ path_lookup() パスの解決 nameidata型 ... パスのルックアップ処理で使われるデータ型 http://hira.main.jp/wiki/index.php?nameidata%2Flinux2.6 struct super_block ... ファイルシステムの実体 struct vfsmount ... マウント済みファイルシステムデスクリプタ sys_mount do_mount do_loopback clone_mnt() vfsmountを新しくアロケート、親ファイルシステムのvfsmountのプロパティをコピーする CL_PRIVATE,CL_SHARED,CL_SLAVE等のオプションを引数に

    [linux] mount --bind/--rbindについて
    oinume
    oinume 2011/10/19
  • [Linux] 外付けUSBハードディスク全体をext3でフォーマットする方法 - SumiTomohiko's blog

    手順 デバイスファイルをdmesgで確認する。 fdiskする。 mkfs.ext3する。 デバイスファイルをdmesgで確認する。 $ dmesg : [ 161.590623] usb 4-6: new high speed USB device using ehci_hcd and address 5 [ 161.723932] usb 4-6: configuration #1 chosen from 1 choice [ 161.724642] hub 4-6:1.0: USB hub found [ 161.731130] hub 4-6:1.0: 4 ports detected [ 162.034285] usb 4-6.2: new high speed USB device using ehci_hcd and address 6 [ 162.176004] usb 4

    [Linux] 外付けUSBハードディスク全体をext3でフォーマットする方法 - SumiTomohiko's blog