Linux

make testのエラーについて(memcachedのmake install前)

memcachedをインストールする前に、make testを行うとエラーがでた。 perlのモジュールがないかららしい。 $ sudo yum install -y perl-CPAN $ sudo cpan cpan> install Test::More cpan> quit $ make test http://forums.devshed.com/perl-programming-6/in…

サーバのシステムコールの順番

Pythonでソケットの勉強をしていたときの順番について socket → bind → listen → accept → recv/send → shutdown → close www.infra.jp

Bashの[ -e /home/... ]による確認

[ -e filepath ] Returns true if file exists. [ -x filepath ] Returns true if file exists and executable. [ -S filepath ] Returns true if file exists and its a socket file. [ expr1 -a expr2 ] Returns true if both the expression is true. [ e…

Gitでブランチ切って作業して、マージする。

git flowのルールにそって 作業しない場合に $ git branch * master # ブランチカット $ git checkout -b feature-create-api feature-create-api $ git add . $ git commit -am "commit message!" $ git push -u origin feature-create-api $ git checkout …

daemonでDjangoを動かす方法など

daemontools http://cr.yp.to/daemontools.html # インストール sudo yum -y install rpm-build wget http://mirrors.qmailtoaster.com/daemontools-toaster-0.76-1.3.6.src.rpm rpmbuild --rebuild daemontools-toaster-0.76-1.3.6.src.rpm sudo rpm -ivh ~…

PostgreSQLのCentOS7での立ち上げ方やコマンドなどの便利なサイト+自動インストール

DjangoではPostgreが推奨のDBMSらしいよ。 www.digitalocean.com qiita.com #!/bin/sh # -*- MAINTAINER -*- Lasha Gogua Lh4cKg@gmail.com # -*- RUN -*- $ bash install.sh # system update and install epel package yum update -y && yum upgrade -y wget…

PortForwordという言葉の意味

知らなかった。。。ポートフォーワードという内容はsshでポートを指定すると、 localhost:[port名]で確認できる。 開発サーバなどで、SSHに使う22番ポートは解放しているけど、HTTPに使う80番ポートは外部に解放していないという状況があります。 $ ssh -L 8…

ApacheのアクセスログからURLを作成する方法。

xargsの使い方を学ぶ cut -d " " -f 7 access_log |xargs -I{} echo "http://[ドメイン名]{}" | grep -v "http://[ドメイン名]{}" | head -10000 > accesslog.txt qiita.com

tarのコマンドについて

tarの -vはverboseの略で、展開したファイル一覧を表示したりする。 qiita.com qiita.com

yumとrpmと違い

MeCabがインストールするときにrpmを使った。 よくわかんない。 $ tar jxvf juman-7.01.tar.bz2 $ cd juman-7.01/ $ ./configure --prefix=/usr/local $ make # make install nzigen.com hayashikun.hatenablog.com blog.inouetakuya.info qiita.com qiita.c…

AWS(Red Hat)にpython3.6をインストールしてpipやvirtualenvを作成する方法。

2020/02 追記 ↓が楽 add-apt-repository ppa:deadsnakes/ppa apt-get update apt-get install python3.6 python3.6-venv -y askubuntu.com python3.6をインストール。 ##いるものをインストール。 $ sudo yum install yum-utils make wget $ sudo yum instal…

AWSにアカウント追加するときに苦労したこと

AWSに自分のアカウントを追加するときにやったこと。 www.task-notes.com qiita.com

AWSのサーバにSFTP通信を行う。

AWSのインスタンスのセキュリティグループからどのIPアドレスを弾いているか確認している。 AWSにSFTPで接続するサーバを管理するために見たが、SFTPコマンドって受送信できるんだっけということで確認した。 ちなみに、公開鍵の登録も必要。 webkaru.net セ…

インフラエンジニアがよく使うコマンド

インフラエンジニアがよく使うコマンドをまとめたページ。 貼っておいて後読もう。 qiita.com ps axuww # プロセス確認 free -h # メモリ使用率の確認 df -h # ディスク使用率の確認 df -i # i-node確認 top -d1 # 実行中のプロセス確認 sar # CPU使用率の確…

grepとかawkとかsortとかuniqueとか(niceも)

アクセスログのファイルに「/content」含まれないばあいにのIPアドレスだけ出力して、 ソートした後に集約して件数出して、その件数でソート(降順)して上位10件を出す。 にたいして、処理が重いので優先順位を下げる。 知らないコマンドとgrepの知らないオ…

7zのファイルについて解凍

圧縮ファイルで「… .7z」というものがあった。 macのデフォルトのコマンドでは対応していないので、p7zipをinstallする必要がある。 # ディレクトリの圧縮 $ 7z u -r [ディレクトリ名].7z [ディレクトリ名] # 解凍 $ 7z x [ファイル名].7z yuyunko.hatenablo…

SFTPサーバに接続

sftpで実行するためには以下のようにする。 $ sftp -P port user@domain ## historyの時間確認 $ export HISTTIMEFORMAT='%F %T ' $ history | less ## lsコマンドで時間確認 $ ls -alt

踏み台サーバなどを用いて、多段階接続をするとき(ssh -W)

Proxycommandをssh configに登録して、 ssh -Wから対応することができる。 dev.classmethod.jp

svnのあれこれをvimの折りたたみ解除

svnをgitでいうpushする時、svnはcommitで完了する。 $ svn add [ファイル名] $ svn commit -m "[コミット文言]" svnでgit pull的な挙動は、 $ svn stat # fileみてMや!などの表記がある。 # ファイルを変更前に戻す。 $ svn revert [ファイル名] # git pull…

Python3とsystemd-tmpfiles.dの便利なサイト

Python3ではsendとthrowについてわからなかったので参考にしたサイト。 iteratorについてはこんな使い方があるのかと感動した。 あと、systemd-tmpfiles.dにて /tmp/ or /var/の定期的削除に関して、 systemd-tmpfiles-clean.serviceで削除をしている。その…

処理中のプロセスをバックグラウンドで回す

「Ctr + z」で一時停止をし、jobsで確認し、bg %~で対応する。 $ zcat db.sql.gz | mysql -u root db ^Z [1]+ 停止 zcat db.sql.gz | mysql -u root db $ jobs [1]+ 停止 zcat db.sql.gz | mysql -u root db $ bg %1 [1]+ zcat db.sql.gz | mysql -u root db…

PackerとAnsibleはめちゃ便利

dev.classmethod.jp

MySQL5.6から5.7に変更する際に起こったエラーについて

vagrantsで今までMySQL5.6を使ってたが、速度が3倍になるということで5.7に変更。 はじめ以下の手順で確かめていた。うまくインストールできない。 # エラーの出る手順 [root # ] yum remove mariadb-libs [root # ] rm -rf /var/lib/mysql/ [root # ] yum l…

SFTPのみ接続可。sshでのシェルは排除。

設定は以下のようにする。 # groupadd sftp_users # usermod -G sftp_users mokyu # vi /etc/ssh/sshd_config 147行目コメント化にしてその下に追記します # override default of no subsystems #Subsystem sftp /usr/libexec/openssh/sftp-server Subsystem…

vimの文字列置換

:%s/置換前文字列/置換後文字列/gc すると一つずつチェックしてくれる。 www.ksknet.net

Apacheのアクセスログはこんな感じでコマンドから調べられる。

切り取ってしまえば、調べが簡単 $ cut -d " " -f 1-8 access_log | grep "google" | grep -ve "10.0.0.1" -vEe "10\.0\.0\.(4[8-9]|5[0-9]|6[0-3])" | wc -l ossfan.net orangain.hatenablog.com ksmzn.hatenablog.com +α帯域制限をかけながらscpなどは行っ…

Webのアクセスピーク時の負荷を測るにはSiegeってものがあるらしい。

Webの最後の負荷テストの時に色々ツールがあると便利だ思った。 他のテストもツールを組み合わせるといい感じに成形できそう。 qiita.com 以下は今のレスポンスタイムを確かめる方法。 $ curl -kL http://google.com -o /dev/null -w "%{time_total}\n" 2> /…

ファイル内の文字列探索

現在のディレクトリ以下のファイルの文字列を探索する方法。 $ find . -type f -name "*.html" | xargs grep ' 探索したい文字列' -n find コマンド | コマンドの使い方(Linux) | hydroculのメモ

入力した行の全消し(ターミナル)

Ctr+uとCtr+kで全消しができる。 あと、iterm2ではshift + Ctr + Hでクリップボードが発動。 bacchi.me 日本語の場合、文字が崩れる場合があるので以下の iTerm2 > Preferences > Profile > Text の中にある、Unicode > Treat・・・characters as double wid…

バックグラウンドで動かす方法(runserver)

python runserverを開発環境のバックで回していたい時。 $ nohup python apps/manage.py runserver 0.0.0.0:8000 > /dev/null 2>&1 < /dev/null & $ jobs $ ps aux | grep runserver $ %1 $ kill %1 これでいける。disownもあるけど、こっちの方がログアウト…