タグ

tipsとunixに関するf-miyajiのブックマーク (18)

  • SUIDとは

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

  • Unix Toolbox

    This document is a collection of Unix/Linux/BSD commands and tasks which are useful for IT work or for advanced users. This is a practical guide with concise explanations, however the reader is supposed to know what s/he is doing. Unix Toolbox revision 14.5 The latest version of this document can be found at http://cb.vu/unixtoolbox.xhtml. Replace .xhtml on the link with .pdf for the PDF version a

  • PC覚え書き | プログラムのデーモン化

    VvZX(qvZX)Afork()VXeR[gpBVXeR[oAovZXmAvZXRs[B ovZXevZXARs[VvZXqvZXBevZXAqvZXfork()lpB evZXAfork()qvZXvZXIDpAqvZX0pBplAevZXqvZXッBlBAqvZXPvOヲB int main(void){ pid_t child // fork()li[ if( !(child=fork()) ){ // child=0qvZX printf("inchildprocess\n"); exit(0); } // evZXqvZXID\ヲ prinft("inparentprocess:childprocessID=%d\n,child); return 0; }

  • "シェルスクリプトをはじめて書くときに知っておきたいこと"へのコメントまとめ - UNIX的なアレ

    自分も知らなかったこと等もあり、大変参考になるコメントをありがとうございました。 コメント数がかなり多数になってきたのでこのエントリーでまとめてみたいと思います。(まとめというほど大したものではありませんが。。) [ (test) コマンドについて 以下のようなコメントをいただきました。 正確には覚えていないですが、[ ] はbashではつかるけど、当の素のshでは使えなかったと思います。なので、[ ]を使うぐらいなら、/bin/bashと書いては。 id:silverwireさんが、いろいろなOSで調べてくれました。AIXやHP-UXの環境は自分の環境になかったので大変勉強になりました。 id:silverwireさん ちょっと興味が湧いたので、以下の二つを調べてみました。 1. Bourne Shellで[ を使用できないことってあるのか? 2. testという名前のシェルスクリプト

    "シェルスクリプトをはじめて書くときに知っておきたいこと"へのコメントまとめ - UNIX的なアレ
  • unix - permissionあれこれ : 404 Blog Not Found

    2007年03月03日06:30 カテゴリTips unix - permissionあれこれ う〜ん。これ、理解があやふやだと危ないのでまとめとっか。 ウノウラボ Unoh Labs: ウェブ開発の共同作業でパーミッションを有効活用する 複数人でウェブコンテンツを作成運用管理する場合,特に番サーバーのファイルのパーミッションで悩んでいる人をよく見かけます.あまりパーミッションを積極的に有効活用できない人は挙句に誰でも読み書きできる(いわゆる0666や0777)ザルにすることが多いでしょう.いや待ってください.もうちょっと丁寧に設定してみませんか? というお話です. 早見表 by JavaScript Readable Writable Executable SUID/SGID User r w x s Group r w x s Others r w x t Octal: ls -l

    unix - permissionあれこれ : 404 Blog Not Found
  • シェルのリダイレクトの補遺 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    昨日書いた「シェルのリダイレクトを『こわいものなし』というくらい完全に理解しよう」に、随分とブックマークやトラックバックをいただきました。それらのフィードバックを拝見して、僕の説明にいたらない所があったと思いますので、ここで補足します。 コマンド実行単位≒simple command パイプ記号「|」や逐次実行の記号「;」を含んだ長いコマンドラインも、1つのコマンドとその引数、それとリダイレクト指定からなる“成分”に分解できます。こういった成分をなんと呼ぶか僕は知らないので、仮に「コマンド実行単位」とでも呼びましょう。 シェルの構文(grammar)的概念としてsimple commandというものがあります。ここで言ったコマンド実行単位は、ほぼsimple commandだと言っていいでしょう。「ほぼ」と付けたのは次の理由からです; 「コマンド実行単位」は、1つのプロセスを起動することを

    シェルのリダイレクトの補遺 - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)

    Java BlockingQueueで遊ぶ:パイプラインごっこ」でパイプラインの話をしたので、来の、つまりUnixのパイプやリダイレクトを少し調べてみました。 たまに話題となる some-command >file 2>&1 と some-command 2>&1 >fileの挙動の違いについて、「シェルはコマンドラインリダイレクトの指定を右から左に解釈実行する」なんて説明が見つかりました。んなバカな! パージングは左から右にするものですよ。パーズツリーを逆順にたどることはできるけど、そんなことする必然性はなんにもないよ。 次の記事を読むと、「右から左」なんて事情じゃないことが分かるでしょう。 UNIXの部屋 検索: リダイレクト シェルのリダイレクトにまつわる失敗 さてここでは、複雑なリダイレクト処理も完全に理解できる処方箋を示しましょう。例えば、次のコマンドラインが何をするか分かる

    シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • Linux のヒント: cron と at を使ったジョブ・スケジューリング

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    Linux のヒント: cron と at を使ったジョブ・スケジューリング
  • vimで効率的にコードを書くための小技 - bonar note

    vimは使いこなしている人は超人のように使いこなしているのですが、「たまにconfファイルいじる時だけ使うよ。まあ、普段はemacsだけどね」という人は、vi時代の機能のみ使っているのをたまに見かけます。 そこで、通ぶって恐縮なのですが、僕が普段vimを使っていてとっても便利で効率が上がると思う操作を紹介したいと思います。また、僕自身が Mac OS X な環境なので、「外部コマンドとの連携」などでWindowsだと再現できないものがあるかもしれません。ごめんなさい。 用語の使い方や理解が間違っている部分があるかもしれませんがその場合はご指摘いただければと思います。あと、「これ抜かしちゃ駄目でしょ!」みたいなのがあればアドバイスお願いします〜。 それでは、 [あとで読む] vimの基操作 (知っていると思うので省略) 超概略 挿入モードと編集モード キー操作 内容 i 挿入モード突入(文

    vimで効率的にコードを書くための小技 - bonar note
  • コアテクの路地: 作業ログの取り方

    このブログをご覧のみなさんは、おそらく何らかの形で開発作業、あるいは設定作業の経験をお持ちだと思います。みなさんは、日々の作業の記録をどのように取られているでしょうか?もし、作業ログを取る習慣がない、あるいは忙しすぎて作業ログをとることに気が回っていないのであれば、作業ログを確実に取る習慣をつけることをお奨めします。この習慣は、きっとあなたの作業の信頼性を上げ、作業効率向上に貢献するはずです。 ●作業ログがなぜ必要か まず最初に、なぜ正確な作業ログをとる必要があるのでしょうか? その答えは簡単です。再現性を確保するためです。自分が不具合報告を受ける立場で考えてみてください。もし、部下やユーザから「動きません」や「バグです」という報告を受けた場合、すぐに問題があると判断するでしょうか? ほとんどの人は、まず報告されている状況を正確に理解したうえで判断したいと考えるのではないでしょうか? ●作

  • iandeth. - 続 screen の使い方

    iandeth. Perl, Flash ActionScript, MySQL, Movable Type, システム開発 - そんなテーマのサイトdeth. 目次 ステータス行に各ウィンドウで打ったコマンドを表示 - bash編 Unicode (UTF-8) を使う 突然キー入力を受け付けてくれなくなった際の対処方法 Reattachを透過的にこなしてくれるラクチン起動方法 まとめ 1. ステータス行に各ウィンドウで打ったコマンドを表示 - bash編 基は ~/.screenrc に 'hardstatus alwayslastline "%w"' と書いておけば、 画面最下部にウィンドウ名一覧が表示されるようになるけれど、これだと各ウィンドウ名が一律 'bash' って名称になるので、いまいち不便。新規ウィンドウを開くたびに 'C-a A' で命名するのも面倒。理想は「今実行し

  • shell のちょっとしたテクニック - odz buffer

    後輩が cat README | tr ' ' '\n' | sort | uniq -c | sort -nr | head てなテクニックを見て、びっくりしたみたいな話をしていたのだが、こういうパイプラインを利用するテクニックを学んでいないのは色々損な気がする。 ていうか、サーバで丸一日以上かかるような処理を実行するのもしょっちゅうなのに、GNU screen も nohup も知らないってのはいろいろ支障があるような気もするのだが、だれも教えないものかなぁ。 ということで、bash or zsh のちょっとしたテクニックとか*1。リダイレクトとかパイプラインは略。 連続実行 単純に連続実行。 % foo; barfoo が正常終了したときだけ bar を実行 % foo && barfoo が正常終了しなかったときだけ bar を実行 % foo || bar&&、||は来は論理演

    shell のちょっとしたテクニック - odz buffer
  • xargsコマンドを使って指定したコマンドを並列実行させる - 技術メモ帳

    あまり知られていないが、GNUのxargsコマンドには、 プロセスの最大数を設定できるオプションというのが用意されている。 コレを使って、プロセスを並列実行させてみよう。 xargs --max-procs=MAX-PROCS -P MAX-PROCS command MAX-PROCSに数字を指定すると、 最大で、その数だけ command プロセスを生成する。 デフォルトは、1プロセスだけになっている。 いくつか例を交えて説明する。 サンプルとして、以下のようにURLが行ごとに記述されたファイルを元に curlをxargsで並列実行して、HTMLデータを取得してみよう。 $ cat ./url_list.txt http://www.google.co.jp/ http://www.yahoo.co.jp/ http://b.hatena.ne.jp/ まず、普通にxargsを使ってc

  • tail -f よりlessでF - libnitsuji.so

    なんかのデバッグとかでApacheのログをtail -fで流しておくというのはよくやるけど、それよりlessでFしたほうが便利だと思った。 lessしてるときにFと打つとtail -fみたいな動きになってCtrl+Cで元に戻せる。 だからリクエストしてから元に戻せばそのログをゆっくり見ることができるし、またFと打てばログが流れるし。 それだけだけど。 http://www.linux.or.jp/JM/html/GNU_textutils/man1/tail.1.html http://www.linux.or.jp/JM/html/GNU_less/man1/less.1.html

    tail -f よりlessでF - libnitsuji.so
  • Running System V

    Solaris,Linux,System Manuals各サービスの設定 各種デーモンの設定方法について。各々の詳細設定は下記カテゴリーを参照して下さい。 ・Sendmailの設定方法 ・qmailの設定方法 for Solaris ・Postfixの設定方法 for Solaris ・Apacheの設定方法 ・BINDの設定方法 for Solaris ・NIS&NFSの設定方法 for Solaris ・OpenLDAPの設定方法 ・X Window リモート環境 UNIXシステム管理 ログの管理やユーザー権限の管理など、運用中のシステム管理方法を解説します。 ・Solaris10 SMF ・Solaris10のサービス管理(SMF)を解説します。

  • Geekなぺーじ:10のUNIX小技

    IBMのサイトで「Learn 10 good UNIX usage habits」という記事が発表されていました。 面白かったので要約してみました。 変な部分があるかも知れないので詳細は原文をご覧下さい。 原文とは一部異なります。 ページスペースなどの関係でコマンド引数などを短く省略しています。 原文のサンプルコマンドが間違っていたりするので、修正している部分もあります。 原文を修正しているのは、tar.gzをzオプションを使わないでxfvしようとしているところと、xargsにlsではなくls -lを渡している部分です。 あと、説明文を短くしてしまっています。 1. ディレクトリの作成 良く使うコマンドの一つであるmkdirですが、面倒臭い使い方をしていませんか? 悪い例 ~/ $ mkdir a ~/ $ cd a ~/a $ mkdir b ~/a $ cd b ~/a/b/ $ m

  • MacのUnix環境を整える。DarwinPorts / ターミナル設定 / emacs など:Goodpic

    This shop will be powered by Are you the store owner? Log in here

  • 1