タグ: CentOS

検索結果: 8件

article-thumbnail

サーバー内で複数のファイルに対して文字列置換を行う

【概要】サーバー内に存在する複数のファイルに対して特定の文字列を検索し、かつ置換を行います。ファイル内に存在する文字列の検索やファイル名の検索をしたい場合は下記のドキュメントを参考にしてみて下さい。サーバー内にあるファイル名とファイル内容を検索する方法【詳細】・構文grep -l '置換対象文字列' ./* | xargs sed -i -e 's/置換対象文字列/置換後の文字列/g'・例文現在居るディレクトリのファイル全てに対して「yahoo.co.jp」の文字列を「google.com」に変更します。grep -l 'yahoo.co.jp' ./* | xargs sed -i -e 's/yahoo.co.jp/google.com/g'現在居るディレクトリ内に存在するディレクトリ内部の全てのファイルに対して置換を行います。grep -l 'yahoo.co.jp' ./*/* | xargs sed -i -e 's/yahoo.co.jp/google.com/g'Cf. 文字列検索上記例文の通りに置換を実行した場合、対象パスに存在するファイルは全て置き換えられたことになります。ここでは例文に沿って「yahoo.co.jp」を検索する例文を記載します。置換した文字列が出力されなければ置換成功となります。・構文grep -rni "検索文字列" .・例文grep -rni "yahoo.co.jp" .

カテゴリ: Linux 2020-09-30 03:20:56
article-thumbnail

NGINXのtoo many open filesの対応方法

【概要】NginxやApache等のプロセスはファイルとして扱われます。よって、アクセス数が増える事でデフォルトのファイル操作上限(1024)に達した場合、「Too many open files」のエラーが出力されます。ファイルの操作上限をデフォルトから増やす方法についてまとめます。【詳細】1. 現状のファイル上限数を確認するファイルの上限数確認コマンド。ulimit -n出力結果1024上記はファイル上限数を変更していない場合のデフォルト値です。2. ulimit設定変更vi /etc/security/limits.conf下記を追記します。* soft nofile 65536* hard nofile 655363. nginxの設定変更mkdir /etc/systemd/system/nginx.service.dvi /etc/systemd/system/nginx.service.d/limit.conf/etc/systemd/system/nginx.service.d/limit.confに以下を記述します。[Service]LimitNOFILE655364. サーバーを再起動してファイル上限数を確認・Linuxサーバーのファイル上限数確認ulimit -n出力結果65536・Nginxのファイル操作上限を確認cat /proc/`pgrep nginx | head -1 `/limits | grep 'open files'出力結果Max open files6553665536files

カテゴリ: NGINX 2020-08-17 01:45:26
article-thumbnail

コマンドを繋げて実行する方法まとめ

【概要】コマンドを繋げて実行する方法についてまとめます。1. 最初のコマンドが終了してから次のコマンドを実行する2. コマンドを並列処理する3. 最初のコマンドが正常終了したら次のコマンドを実行する4. 最初のコマンド結果を次のコマンドに渡して実行する5. 最初のコマンドでエラーが起きた際に次のコマンドを実行する【詳細】1. 最初のコマンドが終了してから次のコマンドを実行する正常終了、異常終了に関わらず次のコマンドを実行します。・構文最初のコマンド ; 次のコマンド・使用例./bin/cake hoge1 ; ./bin/cake hoge22. コマンドを並列処理する最初のコマンドと次のコマンドを同時に実行します。・構文最初のコマンド 次のコマンド・使用例touch aaa/abc.txt touch aaa/def.txt3. 最初のコマンドが正常終了したら次のコマンドを実行する最初のコマンドが異常終了した場合は次のコマンドは実行されません。・構文最初のコマンド amp;amp; 次のコマンド・使用例make amp;amp; make install4. 最初のコマンド結果を次のコマンドに渡して実行する最初のコマンドで返された値を次のコマンドに渡します。使用例ではphp -iで出力された情報の中から「php.ini」の文言が入っている行のみ出力されます。・構文最初のコマンド | 次のコマンド・使用例php -i | grep php.ini5. 最初のコマンドでエラーが起きた際に次のコマンドを実行する最初のコマンドが実行できなかった際に次のコマンドが実行されます。・構文最初のコマンド || 次のコマンド・使用例cd /var/www/html || pwd

カテゴリ: Linux 2020-08-09 19:32:11
article-thumbnail

macにSSH鍵作成、設定とSSH接続方法

【概要】macにSSH鍵を作成し、設定と接続する為のドキュメントです。【SSH鍵作成】1. SSH鍵作成macのTerminalで下記のコマンドを実行します。mkdir ~/.sshchmod 700 ~/.sshcd ~/.sshssh-keygen -t rsa「ssh-keygen -t rsa」コマンド実行後に聞かれる質問は全てenterで進めます。Cf1. SSHのconfigを設定する場合touch ~/.ssh/configvi config設定内容例Host hoge_serverHostName 172.16.0.10User rootCf2. 秘密鍵と公開鍵を作成するコマンドのオプションについて下記の2つのコマンドはどちらも同じ内容を実行しています。ssh-keygen -t rsassh-keygen「ssh-keygen」コマンドで選択できる鍵の種類は次の3種類です。また、「-t rsa」オプションがデフォルトになっている為、実行内容は同じです。ちなみにMacのデフォルトOpenSSHではECDSAやED25519鍵は作成できません。Cf3.鍵の種類について「-t」オプションについて・SSHプロトコルバージョン1-RSA-t rsa1・SSHプロトコルバージョン2-RSA(デフォルト)-t rsa・SSHプロトコルバージョン2-DSA-t dsaSSHプロトコルバージョン1を使う人はあまりいないと想定されます。また、デフォルトの状態を多くの方は使用されると思います。よって、特に指定がない場合はオプションは省略しても良いです。【サーバーに公開鍵登録と鍵を使用したSSH接続】1. サーバーにSSH鍵を登録するSSH鍵を登録する為のディレクトリとファイルを作成します。先ず、サーバーにパスワード認証のSSH接続もしくはクラウドの場合、コンソール画面からSSH接続をします。cd ~/mkdir .sshchmod 700 .sshcd .sshtouch .ssh/authorized_keyschmod 600.ssh/authorized_keys2. macに作成した鍵をサーバーに登録するi. macに作成した鍵の内容を取得するcat ~/.ssh/id_rsa_pubmacのTerminalで上記のコマンドを実行後、出力された内容をコピーします。ii. サーバーにmacの公開鍵を登録しますvi.ssh/authorized_keysサーバー内で上記コマンドを実行後、コピーしたmacの公開鍵を入力します。3. サーバーにSSH接続する・SSH Configを使用してSSH接続するmacにSSHのconfig設定をしている場合、下記のコマンドで接続できます。ssh hoge_server「hoge_server」はSSH confingの「Host」部分です。・ユーザー名とIPアドレスでSSH接続する構文ssh ユーザー名@IPアドレス例文ssh [email protected]

カテゴリ: mac 2020-05-21 02:16:55
article-thumbnail

Redisのダンプ・リストア方法

【概要】このドキュメントではLinuxサーバーにおけるRedisサーバーのデータをダンプし、リストアする方法をまとめています。リストアは手順を間違えるとデータが消える可能性があります。別サーバーへのRedisデータ移行等を行う際に参考にしてみて下さい。参考としてダンプファイルの出力先とファイル名の変更についてもまとめています。【ダンプ】0. ダンプファイルの確認下記のファイルが存在すれば既にダンプファイルは存在します。よって、その場合は下記にある1の手順を行う必要はありません。ls -al /var/lib/redis/dump.rdb1. ダンプダンプファイルが存在しなかった場合、下記のコマンドでダンプファイルを作成して下さい。redis-cli bgsave上記のコマンドで「/var/lib/redis/dump.rdb」が作成されます。出力先は「/var/lib/redis/dump.rdb」がデフォルトですが、redis.confの設定を変えれば出力先とファイル名を変更できます。【リストア】1. Redisサーバーを停止するdumpファイルを格納し、Redisを再起動すると格納したデータが消える為、先ずRedisを停止します。systemctl stop redis2. ダンプファイルを移設別サーバーにリストアする場合、scpコマンド等でdumpファイルを移設しておいて下さい。sudo mv dump.rdb /var/lib/redis/※1 「/var/lib/redis/dump.rdb」ファイルの所有グループ、ユーザーがredisの為、sudoで実行している。よって、rootユーザー場合はsudoは不要。※2 ファイル転送の際にdumpファイルの所有者、所有グループが変わってしまった場合、下記のコマンドでredisユーザーかつredisグループに変更して下さい。sudo chown redis. dump.rdb権限変更は下記のコマンドで確認できます。ls -al /var/lib/redistotal 108Kdrwxr-x---2 redis redis22 May 18 21:47 .drwxr-xr-x. 31 rootroot4.0K May 14 12:04 ..-rw-r--r--1 redis redis 102K May 18 21:47 dump.rdb3. Redisサーバー起動systemctl start redisこれでリストアした状態のRedisが起動されます。【参考:ダンプファイルの出力先とファイル名を変更する】/etc/redis.conf に出力先とダンプファイル名を設定しています。デフォルトの設定では、出力先パスは「/var/lib/redis」で、ファイル名は「dump.rdb」になります。・/etc/redis.conf のデフォルトの設定箇所dbfilename dump.rdbdir /var/lib/redis・出力先を変更するvi /etc/redis.conf変更例dir /data/backup/これで「/data/backup/」にdump.rdbファイルが作成されます。・出力ファイル名を変更するvi /etc/redis.conf変更例dbfilename dump20200518.rdbこれで作成されるファイル名が「dump20200518.rdb」に変更されました。・設定反映Redisの設定を反映する為にRedisを再起動します。systemctl restart redis

カテゴリ: Redis 2020-05-18 22:19:50
article-thumbnail

サーバー内にあるファイル名とファイル内容を検索する方法

【概要】このドキュメントでは下記のパターンを検索する方法についてまとめています。1. ファイル名2. ディレクトリ名3. 特定の所有ユーザー4. 特定の所属グループ5. ファイル内に存在する特定の文字列【ファイルに存在する特定ワードの検索】・概要ファイル内に存在する特定のワードを検索する方法です。・構文grep -rni "検索したいワード" 場所下記のコマンド例は「.」なので、コマンド実行時のディレクトリ配下を意味する。・grepコマンドのオプション内容1. -rオプションディレクトリを再帰的にたどって検索します。2. -nオプション検索結果の出力に行番号を付けます。3. -iオプション大文字小文字を区別せずにマッチングをさせます。・コマンド使用例1. 現在いるパスから下の階層全てに「ZSH_THEME」の文字列を含むファイルの行検索grep -rni "ZSH_THEME" .出力結果例./.zshrc:11:ZSH_THEME"fishy"./.zshrc:14:# Setting this variable when ZSH_THEMErandom will cause zsh to load./.zshrc:17:# ZSH_THEME_RANDOM_CANDIDATES( "robbyrussell" "agnoster" )2. /etc/nginxの階層以下の全てに「server_name」を含むファイルの行検索grep -rni "server_name" /etc/nginx3. 所有ユーザーと所属グループとファイル名検索ls -la | grep ec2 上記のコマンドは現在居るディレクトリ内に存在するec2を含むディレクトリ名・ファイル名・所有ユーザー・所属グループを表示します。【ファイル名検索】・概要検索ワードにマッチするファイル名を検索します。・構文find 検索したい場所 -name ファイル名・コマンド使用例ここで紹介している使用例は検索したい場所からその配下に存在するディレクトリ内部まで検索します。1. 特定のファイルを検索する現在のディレクトリ配下にある.DS_Storeファイルを探すfind . -name .DS_Store出力結果例./.DS_Store./hogeDir/.DS_Store 2. 特定の文字列を含むファイル名を検索するfind / -name *.params上記は「/」以下で拡張子が「.params」であるファイルを検索します。「*」とはワイルドカードに当たります。 3. 現在のディレクトリ配下にある.DS_Storeファイルを探すfind . -name .DS_Store 出力結果例./.DS_Store./hogeDir/.DS_Store

カテゴリ: Linux 2020-05-16 04:05:48