タグ

tipsに関するMetaphoneのブックマーク (53)

  • AWSアクセスキーをGitリポジトリに混入させないために git-secrets を導入した | DevelopersIO

    先日開催されたAWS Summit Tokyo 2017、わたしもいくつかセッションを聴講してきたのですが、「DevSecOps on AWS - Policy in Code」というセッション1にてgit-secretsというツールが紹介されていました。 awslabs/git-secrets: Prevents you from committing secrets and credentials into git repositories これ以外にも、いくつかのセッションで言及されていたと思います。 git-secretsのことは以前から聞いてはいたのですが、自分自身があまりコードを書く環境にいなかったので、良くないとは思いつつも今まであまり気にしていませんでした。 ただ、AWSアクセスキーの漏洩が原因と思われる話を聞く機会はなかなか減りませんし、考えてみれば自分でも、AWSクレデ

    AWSアクセスキーをGitリポジトリに混入させないために git-secrets を導入した | DevelopersIO
    Metaphone
    Metaphone 2017/06/26
    git でアレして泣かない用
  • LambdaでAWSの料金を毎日Slackに通知する(Python3) - Qiita

    はじめに 個人アカウントは基的に無料枠で運用しているので、少しでも請求がある場合はいち早く気づきたいです。 先日、とあるハンズオンイベントで使ったリソースを消し忘れて、最終的に$30ぐらい請求が来てしまいました。。。 CloudWatchで請求アラートは設定していますが、閾値超えが想定の場合、当然見逃すことになり、最終的な請求額に驚くハメになります。 これを防ぐためにLambdaで毎日SlackAWS料金を通知することにします。 先日LambdaPython3に対応したので、せっかくだし勉強がてらPython3で実装したい。 ネット上にはNode.jsでの実装例が多いようで、今回はこちらを参考にPython3で実装してみます。 必要なもの Slack incoming-webhooks URL 取得についてはこちらを参考に 適当なchannel lambda-uploader req

    LambdaでAWSの料金を毎日Slackに通知する(Python3) - Qiita
    Metaphone
    Metaphone 2017/06/26
    閾値超えの時だけ通知よりは毎日サラッと目に入る方が良さそうではある
  • rm -rf でやらかした時すかさず実行する復元コマンド(Linux編) | aucfan Engineers' blog

    初めまして、新卒入社の桑折(@2k0ri)と申します。 入社から今日まで約3ヶ月間、研修およびOJTを受けさせて頂いておりました。 その初OJTのステージング環境で、デプロイ先ディレクトリのシンボリックリンクを消すつもりが デプロイディレクトリを中身ごとrm -rfする という重度のやらかしをしでかしました。 30秒うちひしがれた後、ググって extundeleteというコマンドを見つけてからの 自分が行ったリカバリーの手順を残します。 なお、このコマンドはext3/ext4フォーマット専用になります。 1. サーバーへのアクセスを出来る限り抑えるように周知 最近のLinuxのデファクトFSであるext4フォーマットは、rmされたデータの跡地に 待ったなしで容赦なく新しいデータが書き込まれていきます。 そのため、何よりもまず失われたデータが上書きされないように、 該当サーバーでやらかしたこ

    rm -rf でやらかした時すかさず実行する復元コマンド(Linux編) | aucfan Engineers' blog
    Metaphone
    Metaphone 2016/04/11
    べ、別にさささ参考にすることはんなななな無いと思おもおもおもおもうけど!
  • IAM の Switch Role を捗らせる - tkuchikiの日記

    AWS のクロスアカウントアクセスを利用すると、 IAM ユーザを AWS アカウントごとに作成しなくても良くなり管理が容易になるのですが、 Switch Role する アカウントが多いと、履歴が 5 件しかないのでアカウントとロールを再入力しなくてはならないことが増えてきます。 ロールを切り替えるユーザーアクセス権限の付与 を見ると、 https://signin.aws.amazon.com/switchrole?account=YourAccountIDorAliasHere&roleName=pathIfAny/YourRoleNameHere とあります。 Alias は以下を例にすると Your_AWS_Account_ID です(参考: AWS アカウント ID とその別名)。 https://Your_AWS_Account_ID.signin.aws.amazon.co

    IAM の Switch Role を捗らせる - tkuchikiの日記
    Metaphone
    Metaphone 2016/02/22
    IAM の Switch Role の件。 URL の query string に全部ぶっ込んでしまうのか
  • μ's Go→Go! LoveLive!2015 〜Dream Sensation!〜 チケット争奪戦レポ - 見切り発車中

    書けていないライブレポ沢山あるけれど、このライブはどうしても書きたい。 チケットを取ろうとしたきっかけ 昨年のライブ*1のライブビューイング2日目を地元の映画館で見ていた。当時のラブライブ曲はアニメ1期曲とナンバリングシングルしか知らない状態*2で、SKEのように動く振りを見たいからだった*3。ライブ内容よりも後ろのライブビューイングの客が元気だった*4のが印象に残っているが、最後の発表でTV版2期放送開始と来年のSSAスタジアムモードライブ決定を告知していた。最初SSAスタジアムモードと告知された時は、アニサマと同じ規模でやるんだ…という程度だったが、数日後にランティス系では2度と見られないのではないか*5と思い、片日だけでも現地チケットを確保することを検討した。 チケット確保の戦績 BD1次先行/2次先行/HP先行 1アカ1シリアルで全外し。シリアルをもっと積めば苦労しなかったんだろう

    μ's Go→Go! LoveLive!2015 〜Dream Sensation!〜 チケット争奪戦レポ - 見切り発車中
    Metaphone
    Metaphone 2015/02/10
    戦記だ
  • tree コマンドが無い環境で tree コマンドを実現 - Qiita

    tree コマンドは便利 Linux における tree コマンドは便利ですね。しかし標準コマンドではないため初めて操作するサーバや手軽に tree をインストール出来ない環境だとディレクトリ構造を奇麗にツリー上に表示することが出来ません。 その場合は find や sed を使って tree コマンドを代替しましょう。 find と sed で代替 pwd;find . | sort | sed '1d;s/^\.//;s/\/\([^/]*\)$/|--\1/;s/\/[^/|]*/| /g'

    tree コマンドが無い環境で tree コマンドを実現 - Qiita
    Metaphone
    Metaphone 2014/10/07
    find と sed の合わせ技で tree もどき
  • 立つハッカー、シェルを濁さず - Qiita

    おことわり このTipsは不作法だとして異論が出るかもしれないが、私自身がよくやるのでここで公開してみる。それは一体何かというと…… コマンドヒストリーが残るのイヤだ! と思うことってよくないだろうか? 開発環境で、後に再利用することは到底ありえないくらい長ーいワンライナーを書いたり、あるいは rm -rf * みたいなキケンなコマンドを実行したりして、ログアウト後にそういうのを残したくない、と思うこと。 そんなアナタにオススメのTipsだと思う。 次のコマンドを実行すればOK

    立つハッカー、シェルを濁さず - Qiita
  • Amazon Linuxのcloud-init Tips集 | DevelopersIO

    はじめに 皆さん、User-Dataを使っていますか?複数のEC2に同様の設定を適用してLaunchしたい時には便利な機能です。 このUser-Dataにはシェルスクリプトを直接書くか、あるいはcloud-init形式で記載することが出来ます。これは1行目が"#!"で始まっていればシェルスクリプト、"#cloud-config"で始まっていればcloud-init形式として処理されます。なおAmazon Linuxに導入されているcloud-initは元々のcloud-initをカスタマイズしたものであり、独自拡張がされていたり、一部のディレクティブが使えなかったりするので注意が必要です。 今回、このcloud-initを使った初期設定を色々と調べたので、まとめてみました。 Tips 設定及びログの確認 repo_update, repo_upgrade yum_repos package

    Amazon Linuxのcloud-init Tips集 | DevelopersIO
    Metaphone
    Metaphone 2014/08/21
    cloud-init まとめ
  • https://qiita.com/geta6/items/9472f6f192976670c93f

    Metaphone
    Metaphone 2014/06/29
    nohup でプログラムをデーモンとして動かせる
  • chmodやchownのreferenceオプションを知った時は目から鱗だった話

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

    chmodやchownのreferenceオプションを知った時は目から鱗だった話
    Metaphone
    Metaphone 2014/06/23
    お得情報じゃん
  • cron上でのコマンド実行を再現する - Qiita

    シェル上だと動くのにcron上だと動かない。 よく聞くお話ですよね。 大体はcron上と普段のシェル上で環境変数が違うために起こる問題です。 そういう時に使えるtipsを共有します。 個人のマシン上で適当に動かすようなcronだと みたいにしてログインシェルを間に噛まして環境変数を上書きして実行することでごまかしたりもできます。 これまた別の依存する箇所を増やすので 個人のマシンかrcファイルがちゃんと管理されているような状況以外ではオススメできません。 なのでcron上で実行される状況とほぼ同じ状況でスクリプトを実行してみましょう。 cron上では環境変数はほぼ空なので環境変数を空にしてみましょう。

    cron上でのコマンド実行を再現する - Qiita
    Metaphone
    Metaphone 2014/06/04
    cron に泣かされないために
  • デーモンの起動・終了にはserviceコマンドを利用しよう

    斎藤です。こんにちは。 今日は、デーモンの起動・終了に際してはserviceコマンドを使った方がいいよ、というお話です。 ※CentOS 6.4 (x86_64) でテストしています。尚、特記がある所を除きます。 デーモンの起動・終了には大きく2手 Linux、特にRedHat, CentOS, Fedora, Ubuntu[1]などでは、デーモンの起動・終了の制御の際に、大きく分けて次の2つの方法を用いる事ができます。 "/etc/init.d/"配下のスクリプト(以下、スクリプト)を直接実行する "service"コマンドを実行する 一見、同じ事をやっているように思えるのですが、実は違う部分があります。それは、起動スクリプトが扱う環境変数が違うのです。次の節で、検証してみます。 扱う環境変数が違う スクリプトを直接実行する場合は、実行時の際の環境変数をそのまま利用します。一方、serv

    Metaphone
    Metaphone 2013/06/25
    /etc/init.d/ 配下を直接叩くより service を使った方が環境変数的にトラブル要因を招きにくい
  • root 権限の必要なディレクトリに対してrsync する - ´・ω・)<ときどき書くよ

    CentOS のApache でDocumentRoot とされている/var/www/html をサーバ間で同期するために % rsync -avz -e ssh --delete /var/www/html foo@example.com:/var/www/htmlrsync を実行しても、foo に/var/www/html への書き込み権限がないため成功しない。 # PermitRootLogin yes な方は勝手にどうぞ。 NFS が使えれば手っ取り早いのだが、一つの解決策として example.com に以下のスクリプトを置き(/home/foo/rsync.sh とする) #!/bin/sh /usr/bin/sudo /usr/bin/rsync $* visudo で foo ALL=(ALL) NOPASSWD: /usr/bin/rsync と設定しておく。 あと

    root 権限の必要なディレクトリに対してrsync する - ´・ω・)<ときどき書くよ
    Metaphone
    Metaphone 2013/04/12
    PermitRootLogin せずに root 権限で rsync
  • TEXTdrop|翻訳・オンラインカジノ 日本円のプログラミング

    Text Drop 翻訳、プログラミング、写真、カメラなどについて書いてます。スタイルガイド/コーディング規約やチートシートなど、ちょっと便利なものを翻訳しています。 TEXTdropでは、C++プログラマーも利用できるパワフルな機能を搭載。C++のコードを書く際に行う手順や避けておきたい工程などを詳しく説明しています。コードスタイルラインの日語版では、日語訳やJ P Yへの換金もサポート。話題性があるオンラインカジノ 日円変換や入金の際のバグにも対応しています。統一性のあるコードを書くためのポイントや規約の種類を参考にする事ができます。

    Metaphone
    Metaphone 2012/10/04
    regex チートシート
  • MySQLのbinlogをmysqlbinlogとperlワンライナーでカジュアルに解析する - blog.nomadscafe.jp

    MySQLを運用していて特定の時間帯だけ更新クエリが増えているのを見つけたときにバイナリログを探ったりすることはまぁまぁあると思います。最近はmysqlbinlogperlのワンライナーをつかって調べています mysqlbinlogをつかって特定の時間帯のログを調べるのは $ mysqlbinlog --start-datetime="2012-07-31 09:41:00" --stop-datetime="2012-07-31 09:45:00" mysql-bin.941 こんな感じですね。ちなみにMySQL 4.0.x のmysqlbinlogにはstart-datetime、stop-datetimeのオプションがないので新しいバージョンが入っているサーバに転送するなりして実行しています。 この出力は #120731 09:41:48 server id 9316 end_lo

    Metaphone
    Metaphone 2012/08/02
    バイナリログを気軽にぺろぺろするために
  • rsyncで再開可能なファイル転送 - karasuyamatenguの日記

    結論: rsnc --partial --appendで再開可能なファイル転送ができる 転送中に障害が発生 takao$ rsync -av --progress --partial --append bigfile 192.168.1.181:/var/tmp/ bigfile 562823168 52% 43.22MB/s 0:00:11 ^C rsync error: unexplained error (code 130) at rsync.c(541) [sender=3.0.7] 約六割が転送済み takao$ ls -l bigfile /var/tmp/bigfile -r-xrwsr-x 1 www-data www-data 1073709056 2011-11-24 23:48 bigfile -rw------- 1 tengu tengu 605552640 20

    rsyncで再開可能なファイル転送 - karasuyamatenguの日記
    Metaphone
    Metaphone 2012/06/21
    rsync が途中で切れても泣かないために
  • cron で > /dev/null して椅子を投げられないための3つの方法 - 酒日記 はてな支店

    (タイトルは釣りです) いい加減、>/dev/null 2>&1と書くのをやめたらどうか - DQNEO起業日記 この記事のタイトルが twitter で流れてきたのを見て、「そうだ!出力を /dev/null に捨てるなんてとんでもないよね!」と思ってよく読んだら /dev/null に間違いなく捨てる方法だったのでつい crontabに > /dev/null 書いたら椅子投げる 2012-06-13 00:01:17 via YoruFukurou とつぶやいてしまったのですが、では出力を捨てないためにはどうすればいいのか。現時点での個人的ベストプラクティスを書き留めておきます。 デフォルト : メールで送る (MAILTO) せっかく cron daemon がログを捨てないためにわざわざメールで送ってくれるのに、それを > /dev/null で踏みにじるとはひどい。 とはいえ、

    Metaphone
    Metaphone 2012/06/13
    crontab からデヴヌらないために
  • いい加減、>/dev/null 2>&1と書くのをやめたらどうか (追記あり) · DQNEO日記

    はじめに これから書く内容は、シェルスクリプトをばりばり書いている現場(サーバエンジニアインフラエンジニア)向けのものではありません。 年に数回crontabをいじるような現場(サーバに詳しくないアプリケーションプログラマが多数を占めるような現場とか、Webデザイナや非プログラマがcrontabをおそるおそるいじったりするような現場)を想定しています。 >/dev/null 2>&1 の問題点 この記法の問題点は、「覚えにくい、間違えやすい、間違ってても気づかない」ということです。 初心者を迷わせる要素がこんなにあります。 >/dev/nullは先か後か 1と2はどちらが先か &はどこに書くのか よって下記のように多種多様なミスが起こり得ます。 2>&1 >/dev/null >/dev/null 1>&2 >/dev/null 2>1& >/dev/null &2>1 これをぱっと見て

    いい加減、>/dev/null 2>&1と書くのをやめたらどうか (追記あり) · DQNEO日記
    Metaphone
    Metaphone 2012/06/13
    crontab からデヴヌるために
  • Linuxのメモリ上のキャッシュを解放する - 元RX-7乗りの適当な日々

    いつも思いだすのに時間がかかるというか、ググるのでメモ。 例えば、ベンチマークとかをとっていて、残ったキャッシュを奇麗さっぱりに消したい時とかに使う。 Linuxのメモリで保持しているキャッシュをクリアするには、以下を実行する。 # sync # echo 3 > /proc/sys/vm/drop_caches 値の意味としては、、、 1: ページキャッシュを解放 2: dentry、inode を解放 3: ページキャッシュ、dentry、inode を解放 以下を参考に。 /proc/sys/vm/drop_caches (Linux 2.6.16 以降) このファイルに書き込みを行うことで、クリーンなキャッシュ、dentry、 inode をメモリ上から外し、そのメモリを解放する。 ページキャッシュを解放するには、 echo 1 > /proc/sys/vm/drop_caches

    Linuxのメモリ上のキャッシュを解放する - 元RX-7乗りの適当な日々
    Metaphone
    Metaphone 2012/06/01
    sync を実行してからページキャッシュ、 dentry, inode 解放
  • インフラエンジニアがSegmentation fault をなんとか治してみる - メモとかそんな感じなやつ

    普段Webサーバを運用していて、めんどくさいトラブルのひとつに「Segmentation fault」があります。 あれー?なんか500エラーがでるなーなんて思ってログを見るとSegmentation faultになってるときは死にたくなります。 そもそもSegmentation faultはメモリ上にあるデータに対して不正が行われたときに起こるもので、 インフラエンジニアにとってはなかなか手がだせないところでもあります。 それでもなんとかして治さないといけないわけなので せめてどのプログラムが悪さしてるかどうかぐらいは調べ上げてみます。 apacheでのログ apache + mod_perl での環境です。 こんな感じでエラーがでます。 #tail error_log [notice] child pid 26028 exit signal Segmentation fault (11

    インフラエンジニアがSegmentation fault をなんとか治してみる - メモとかそんな感じなやつ
    Metaphone
    Metaphone 2012/05/31
    Segmentation fault から逃げないために