タグ

UNIXとtipsに関するsotokichiのブックマーク (29)

  • macOSのTouchIDを使用して、sudoを認証する

    Digitaino ITより。TouchIDを使った認証には様々な応用がある(LocalAuthenticationフレームワーク)。 TouchIDを搭載したMacは、指紋を使ってsudoコマンドを承認するように簡単に設定できます。 お気に入りのテキスト・エディタで、以下のファイルを開いて下さい。 /etc/pam.d/sudo 次の行 auth sufficient pam_tid.so を、pam_smartcard.soの行の下に以下のように追加し、ファイルを保存します(picoの場合はCtrl+O)。 # sudo: auth account password session auth sufficient pam_smartcard.so auth sufficient pam_tid.so auth required pam_opendirectory.so account

    macOSのTouchIDを使用して、sudoを認証する
  • OSXで既存プロセスの標準出力をキャプチャする - Qiita

    capture() { sudo dtrace -p "$1" -qn ' syscall::write*:entry /pid == $target && arg0 == 1/ { printf("%s", copyinstr(arg1, arg2)); } ' } capture-all() { sudo dtrace -p "$1" -qn ' syscall::write*:entry /pid == $target && (arg0 == 1 || arg0 == 2)/ { printf("%s", copyinstr(arg1, arg2)); } ' } example@localhost:~$ php -r 'while (true) { echo "Hello\n"; sleep(1); }' >/dev/null & [1] 97755 example@localho

    OSXで既存プロセスの標準出力をキャプチャする - Qiita
  • MacをOS X 10.11 El Capitanにアップデートし”/usr/local”ディレクトリを消してしまった場合、Homebrewをどの様にインストールすればよいのか?

    日リリースされたOS X 10.11 El Capitanですが、El CapitanにはAppleの新しいシステム保護機能 “Rootless”が実装されています。Rootlessは例えrootユーザーであっても/usr, /System, /bin, /sbinにアクセスを許可しないため、「もし、何らかの理由でパッケージマネージャHomebrewで利用する/usr/localが消えた場合、El CapitanでHomebrewを利用するにはどうしたらいいのか?」という話題がHacker Newsで話題になっています。 このケースは既に何人かの開発者の方[1, 2]によって指摘されており、HomebrewのGitHubにはDominyk Tillerさんが”El Capitan & Homebrew”と題したトラブルシューティングが公開されているので、これを元にいくつかのケースをまとめ

    MacをOS X 10.11 El Capitanにアップデートし”/usr/local”ディレクトリを消してしまった場合、Homebrewをどの様にインストールすればよいのか?
  • LinuxでもMacでも lsに色を付ける - ほるっふー

    lsをした時に表示された一覧それぞれが、 テキストファイルなのか 実行ファイルなのか ディレクトリなのか リンクなのか ひと目で分かると便利ですよね。 その時重宝するのが色を付けてくれるオプションです。 オプションを毎度手打ちするのは面倒なので .bashrcや.bash_profileでlsに常にカラーリングオプションが付くようにaliasに設定をしてしまえばよいのですが、困ったことにMacLinuxでこのオプションは異なります。 間違ったオプションが設定されると色を付けてくれないどころか、表示さえしてくれません。 Mac(端末)とLinux(サーバー)で.bash~を共有している私のような人は場合分けをしなければなりません。 四の五の言わずにやり方を載せますね ## file/dir command if [ $(uname) = "Darwin" ]; then alias ls=

    LinuxでもMacでも lsに色を付ける - ほるっふー
  • 「tail -f」を使うのは情弱、情強は「less +F」を使う | ソフトアンテナ

    ログファイルの監視に「tail -f」コマンドを使っている方は多いかもしれません。ファイルの末尾を表示する「tail」コマンドに、ファイル末尾に追加されたデータを追跡表示する「-f」オプションを指定することで、手軽にログの監視ができる便利なコマンドです。 しかし最近、「tail -f」より便利なコマンドとして「less +F」の使用を推奨するブログ記事「Stop using tail -f (mostly)」が公開され話題となりました。 「less」はテキストファイルの内容を表示する、ページャーと呼ばれるソフトウェアですが、これに「+F」オプションを指定することで、「tail -f」より便利なファイル監視コマンドとして使えるらしいのです。具体的に「less +F」が「tail -f」より便利な点として以下の2点が挙げられています。 監視モードと通常モードをlessを起動したまま行き来できる

    「tail -f」を使うのは情弱、情強は「less +F」を使う | ソフトアンテナ
  • いまさら聞けない? ターミナルの環境整備(3) - 新・OS X ハッキング!(134)

    いまさら聞けないシリーズの第3弾は、「エイリアス」について。Finderでいうところのエイリアスにあらず、シェルの「alias」だ。defaultsコマンドの実行例も含めて紹介するので、実用性は高いのではなかろうか。どうしてもコマンドを覚えられない、覚える気もない、というユーザにこそお読みいただきたい。 オリジナルのコマンドを作ろう MacとUNIX(シェル)の両方に存在するが意味の異なる用語のひとつに「エイリアス」がある。Macの場合、ファイル/フォルダの別名であり、体とは別の領域に作成するショートカットとしての役割を持つFinderの機能を指す。一方、シェルにおけるエイリアスはコマンドの別名であり、長くなりがちで覚えにくいコマンドラインを簡潔に表現したいときに使う。 そのエイリアスは、シェルの初期設定ファイル(bashの場合「~/.bash_profile」)で定義することにより真価

    いまさら聞けない? ターミナルの環境整備(3) - 新・OS X ハッキング!(134)
  • いまさら聞けない? ターミナルの環境整備(2) - 新・OS X ハッキング!(133)

    前回は、bashの環境変数「PS1」を定義するとプロンプトが変化することを紹介した。シェルが起動するときに参照するファイル -- 複数あるが「~/.bash_profile」としておく -- で環境変数を定義すると、ターミナルとともにシェルが起動されるので(シェルの、感覚的にはターミナルの)設定として永続される、その特性を利用すればターミナルは"痒いところに手が届く"存在となりうる。今回は、基&必須ワザを紹介するので、ターミナルとシェルの理解促進に役立てていただきたい。 環境変数を表示する 環境変数の定義へ進む前に、環境変数の内容を表示する方法について知っておきたい。ある環境変数に値を定義するとして、その環境変数が定義済かどうか、定義済であればどのような値かを確認しておくべきだからだ。 現在有効な環境変数を一覧するには、「printenv」コマンドを実行する。引数やオプションは必要なし、

    いまさら聞けない? ターミナルの環境整備(2) - 新・OS X ハッキング!(133)
  • いまさら聞けない? ターミナルの環境整備(1) - 新・OS X ハッキング!(132)

    2015年第1回となる今回は「ターミナルの環境整備」について。初期設定のまま、"素"のままでは来の機能を発揮できず、ユーザのTerminal嫌いを助長しかねないため、敢えて古典的なテーマを取りあげることにする。年初でもあり、取り組むには格好のタイミングではないだろうか。 そもそも「シェル」の役割とは ひとくちに「ターミナル」というが、実際のところ2つのプログラムにより構成される。ひとつは「Terminal.app」で、OS XのGUIを利用したターミナルエミュレータ(CUI端末として動作するソフトウェア)だ。これが狭義のターミナルだが、その上ではもうひとつ「シェル」と呼ばれるプログラムが実行される。ターミナルエミュレータ上でシェルが実行されることで、単なる文字列に過ぎないコマンドラインが適切に解釈され、コマンドとしての機能を果たすというわけだ。 その意味でTerminal.appとシェル

    いまさら聞けない? ターミナルの環境整備(1) - 新・OS X ハッキング!(132)
  • Mac OS Xのbashに1行でShellShock(CVE-2014-6271 & CVE-2014-7169)脆弱性のパッチを当てる方法。

    Mac OS XのbashにShellShock(CVE-2014-6271, CVE-2014-7169)パッチを当てる方法です。詳細は以下から。 NBCに「Appleも”bashと呼ばれるバグ”についてMacユーザーに警告」として放送されてしまったらしいbashの脆弱性 ShellShockですが、CVE-2014-6271に続いてCVE-2014-7169のパッチも配布されたので簡単な適用方法をまとめておきます。 APPLE WARNS MAC USERS ABUT A BUG CALLED BASH – Twitter もっとも簡単(?)なパッチの当て方 ShellShockが公開されてから何台かのMacをセットアップしパッチ当てましたが、「ShellScriptを作って、Permissionを変更して〜…」とやるよりもAsk Differentの精鋭が提示してくれているこの方法の

    Mac OS Xのbashに1行でShellShock(CVE-2014-6271 & CVE-2014-7169)脆弱性のパッチを当てる方法。
  • chmodやchownのreferenceオプションを知った時は目から鱗だった話

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 元々ホスティング会社で働いていたので、その特性上ownerやpermissionを色々と弄る事が多く、数年前の社会人時代にchmodやchownをもっと楽に使えないかなぁと調べた時に目から鱗だったのがchmodやchownのreferenceオプションでした。 今回は単にreferenceオプション楽ですよね、という記事なのでご存知の方は退屈な記事だと思いますが、まわりに聞いてみた所意外と知られていなかったりしたので、ブログエントリにしておこうと思います。 referenceオプションを使うと、任意のファイルを指定することで、変更対象のownerやpermissionを指定したファイルと同じ設定にすることができます。 例えば、/bin/pin

    chmodやchownのreferenceオプションを知った時は目から鱗だった話
  • WindowsのあのフォルダはUNIX/Linuxで言えばあそこだ - Qiita

    日頃Windows使っててたまにUNIX系のレシピ読むと「適当なディレクトリ」という記述を見た瞬間に詰みます。料理できない人が「醤油適量」で死ぬくらいの致死率です。 というわけで日頃Windows使ってる人なりにディレクトリの対応表をまとめました。FHSの正確な定義よりはざっくりこんな使われ方だから近いよねで分類しています。 また、UNIX/LinuxのパッケージマネージャにWindowsで相当するのはソフトのインストーラではなく、機能・役割の有効化だと解釈しています。 姉妹編つくりました ファイルのユーザ権限制御・Windows vs UNIX比較 Windows 働き UNIX

    WindowsのあのフォルダはUNIX/Linuxで言えばあそこだ - Qiita
  • マルチユーザーでHomebrewを使う

    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

    マルチユーザーでHomebrewを使う
  • Linuxで2つのファイルの共通行を出力する - 元RX-7乗りの適当な日々

    機会があったので、調べてみました。 2ファイルの差分はdiffコマンドで取るけど、その逆の共通している部分はどうやって取得するのか。エレガントなやり方はやっぱりgrepコマンドを使うのかしら? 前提 $ diff -c5 {a,b}.txt *** a.txt 2013-08-28 18:54:49.293055071 +0900 --- b.txt 2013-08-28 18:53:58.517693404 +0900 *************** *** 1,6 **** 1 - 2 3 5 5 6 --- 1,6 ---- 1 3 + 4 5 5 6こういう2つのファイルがあったとして・・・ grepで $ grep -x -f {a,b}.txt 1 3 5 5 6grepコマンドの"-x"オプションを使うと、こんな感じで、2ファイルの共通部分が出力される。 -x, --line

    Linuxで2つのファイルの共通行を出力する - 元RX-7乗りの適当な日々
  • Shebangという謎な事実上業界標準について

    Shebangとは、UNIXのシェルスクリプトの業界標準で、シェルスクリプトの一行目のコメントの、#!を意味する。sheが短母音か長母音か分からなかったので、英語ネイティブにたずねたところ、人によって意見が違う。短母音の方が多数派のようなので、一応シバンが近いものになるだろう。日語版のWikipediaでも、シバンとしている。この機能には他にも多数の名前があるが、もっとも有名なのが、Shebangだそうだ。 その業界標準的な文法は、以下の通り(ただし、後述するように、この文字列の扱いについては違いがある) #! 文字列 [改行] 普通、実行権限のついたファイルは、標準のシェルで実行されるが、このShebangがある場合は、#!から改行までの間の文字列を、後述するバラバラな方法で解釈して、execで実行し、その際の引数には元のシェルスクリプトファイルへのパスが指定される。 問題は、このsh

  • UNIX風OSで同じプログラムの複数起動を防ぐ方法

    若い頃、OSに不自由なWindowsを選んでしまったがばっかりに、今GNU/Linuxに移って、UNIXの流儀を飲み込むのに苦労している。 さて、UNIX風OSで、同じプログラムの複数起動を防ぐ方法は、一体どうやって実装すればいいのか。 クローズドソースのWindowsならば、ある決められた名前付きのカーネルオブジェクトを作成すればよい。カーネルオブジェクトはいくつも種類があるが、なんだっていい。カーネルオブジェクトの作成はアトミックに行われる。すでに同じ名前のカーネルオブジェクトが存在する場合、その情報も伝えられる。これにより、すでにカーネルオブジェクトが作成されたかどうかがわかり、重複起動も判断できる。プロプライエタリなWindowsのカーネルオブジェクトはリファレンスカウントされており、参照するプロセスが存在しなくなった時点で破棄される。そのため、プロセスがクラッシュしたり外から強制

  • スパイも安心? なファイル削除コマンド「srm」 - 新・OS X ハッキング!(96)

    最近、A&V方面の仕事で4Kテレビに接する機会が多いのですが、見るたびに欲しくなりますよ、当に切実に。映像もさることながら、写真の描写力が圧倒的で。Macも、MacBoo Proにとどまらず、iMacとかThunderbolt Displayが高精細化されるとうれしいんですけどね。6月になにか発表されるかも? と期待しています。 さて、今回は「srm」について。OS X 10.4(Tiger)のとき登場したこのコマンドは、名前から推測できるように安全が保証された(セキュアな)rmコマンドとしての機能を果たす。しかし、その存在は広く知られていないため、用例を交えつつここに紹介しようという寸法だ。 What's "srm"? 「srm」は、かんたんにいえばファイルを"確実に"削除するためのコマンド。名前からすると、scpsftpと同様にSSH(OpenSSH)との関連を想像してしまうが、動

    スパイも安心? なファイル削除コマンド「srm」 - 新・OS X ハッキング!(96)
  • 意外と知られていない diff に関する機能 - 永遠に未完成

    Vim Advent Calendar 2012 の 147 日目の記事です。 137 日目の tyru さんの記事で、Vim の diff 機能について紹介がありました。この記事ではもう少し細かい diff の機能について紹介したいと思います。 :diffthis 比較したい対象がファイルではない場合、例えば、外部からデータを無名バッファにコピーしてきた場合に、それらのバッファの diff を表示したいことがあります。この場合は、:diffsplit は使えません。 こういう場合は :diffthis を使います。diff を適用したいバッファでそれぞれ :diffthis をすると、実行したバッファ同士の差分を見ることができます。 これを利用した設定に、help で紹介されている :DiffOrig があります。(:help :DiffOrig) これは現在編集中のファイルと、最後に保

    意外と知られていない diff に関する機能 - 永遠に未完成
  • Ubuntuの端末にはスターウォーズを上映する隠し機能がある!?

    Ubuntuの端末にはスターウォーズを上映する隠し機能がある!? 1. メニューの [アプリケーション]→[アクセサリ]→[端末] で端末エミュレータを起動 2. 「telnet towel.blinkenlights.nl」と入力して Enter を押す 3. 何も触らず画面を眺める ネタ元: Il film di Star Wars da Terminale! Ecco come(イタリア語) ≪追記≫ 上で「Ubuntuの隠し機能」と書きましたけど嘘です。実際はLinux/Mac/Windows、なんでもOKだったりする。

    Ubuntuの端末にはスターウォーズを上映する隠し機能がある!?
    sotokichi
    sotokichi 2013/04/20
    Mac OS Xのtelnetで確認w。
  • 私みたいなおっちょこちょいを自滅から救って来たちょいとした工夫x3+1 : 404 Blog Not Found

    2013年04月13日01:30 カテゴリTipsiTech 私みたいなおっちょこちょいを自滅から救って来たちょいとした工夫x3+1 bashクックブック ぎゃああぁぁぁ 僕がMacのホームディレクトリを削除するに至った経緯と、復元するまでの道のり | CreativeStyle 具体的に何をしたのか。それは、以下のコマンドの実行です。 $ rm -rf ~/ でもこれ、すごいやりがち。 やりがちなのになんでそれよりおっちょこちょいなはずな私がもう30年近くものあいだ難を逃れているかを披露しておくことにする。 以下、それぞれtcsh版とbash版を。zsh版はどなたかよろしく。 alias 上記の例は、実はこれだけで防ぐことが出来ていた。 tcsh alias rm 'rm -i' bash alias rm='rm -i' 要するに、rmと打ったらrm -iを意味するようにしておくわけだ

    私みたいなおっちょこちょいを自滅から救って来たちょいとした工夫x3+1 : 404 Blog Not Found
  • chflagsコマンドの使い方: UNIX/Linuxの部屋

    BSD 系 UNIX にはパーミッションとは別にファイルフラグという仕組みがあり、変更禁止、追加禁止などの設定をすることができる。なお、ファイルフラグは chmod のパーミッションとは全く別のものである。 arch アーカイブフラグ dump ダンプフラグ sappnd システムの追加専用フラグ schg システムの変更禁止フラグ uappnd ユーザの追加専用フラグ uchg ユーザの変更禁止フラグ

    chflagsコマンドの使い方: UNIX/Linuxの部屋