かべぎわブログ

ブログです

Linux

bashで変数に変数を代入する

こんなかんじ。 $ environment='dev' $ dev_account_id='AAA' $ eval account_id=\"\$${environment}_account_id\" $ echo ${account_id} AAA

sedで複数ファイル一気に置換する

これ find *.txt | xargs sed -i -e "s/before/after/g"

Ubuntuにunzipインストールする

unzip wawawa.zip しようとしたらCommand Not foundっておこられた。 以下でインストールできる。 sudo apt-get install zip

Ubuntuでsudoなしでdockerコマンドをうてるように

dockerグループにユーザを追加 sudo gpasswd -a $USER docker dockerサービスをrestart sudo service docker restart

Ubuntu18にMinikubeをインストールする

概要 Ubuntu18にMinikubeをインストールしてみます。 インストール手順 手順です。 システムを最新バージョンに更新する sudo apt-get update -y sudo apt-get upgrade -y インストールに必要なパッケージのインストール sudo apt-get install curl wget apt…

VagrantでUbuntu18を起動してRLoginでssh接続する

概要 VagrantでUbuntu18を起動してRLoginでssh接続してみます。 Vagrantの準備 ローカルの適当なディレクトリで以下コマンドを実行します。 $ vagrant init bento/ubuntu-18.04 $ vagrant up RLoginの準備 こんなかんじにします。 SSH認証鍵のところは以下を…

CentOS7にServerless Frameworkをインストールする

概要 CentOS7にServerless Frameworkをインストールしてみます。 前提 Node.jsが必要です。 以下の手順を参考にインストールしましょう。 www.kabegiwablog.com 手順 1. Serverless Frameworkをインストールする これだけ sudo npm install -g serverless 2.…

CentOS7にNode.js13 をインストールする

概要 CentOS7にNode.js13.xをインストールしてみます。 インストール手順 1. NodeSourceをyumリポジトリに追加します curl -sL https://rpm.nodesource.com/setup_13.x | sudo bash - 2. Node.jsをyumでインストールします これでyum install してあげればOK…

sudoでもリダイレクトがしたい

概要 sudoでリダイレクトがしたくなった。 たとえば以下のようにやるとPermission Deniedってなってしまう。 sudo echo 'wawawa' > /etc/wawawa.txt bash: permission denied: /etc/wawawa.txt 対処法 bash -cをつかってあげる。 以下のようなかんじ。 sudo …

DockerでCentOS8のAWSCLI環境を作成する

概要 DockerでCentOS8のイメージをつかってAWSCLIの動作環境を作ってみたいと思います。 Dockerfile こんなかんじ。 FROM centos:8 RUN dnf install -y wget python3 RUN wget https://bootstrap.pypa.io/get-pip.py RUN python3 get-pip.py RUN pip install…

ワンライナーで特定のタグのついたインスタンスを起動/停止するAWSCLI

概要 AWSCLIのワンライナーで特定のタグのついたEC2インスタンスを起動/停止してみます。 インスタンスを起動する Nameタグがwawawaとなっているインスタンスを起動するワンライナー $ aws ec2 start-instances --instance-ids `aws ec2 describe-instances …

シェルスクリプトでコマンドの実行を待ち合わせる

概要 シェルスクリプトで実行中のコマンド(プロセス)の完了を待ってから、処理をしてみたいと思います。 waitコマンドを利用してあげることでそれを実現することができます。 スクリプト だいたいこんなかんじ。 うごかしてみる 実際にうごかしてみるとこん…

CentOSにdigをインストールする

概要 CentOSにdigをインストールしてみます。 インストール方法 このコマンドをうてばよい。 $ sudo yum install bind-utils ハッキング・ラボのつくりかた 仮想環境におけるハッカー体験学習作者: IPUSIRON出版社/メーカー: 翔泳社発売日: 2018/12/07メディ…

CentOS7にPython3のpipをインストールしてデフォルトバージョンも変更する

概要 Python3.6がインストールされているCentOS7の環境にPython3用のpipをインストールしてみたいと思います。 手順 こんなかんじの手順でできます。 pipをインストールする 以下コマンドを入力します。 $ sudo yum install -y python36-pip デフォルトを設…

CentOS7にPython3をインストールしてデフォルトバージョンも変更する

概要 CentOS7の環境にPython3.6をインストールして、デフォルトで利用されるPythonも3.6のものに変更してみたいと思います。 手順 こんなかんじの手順でできます。 Python3.6をインストールする 以下コマンドを入力します。 $ sudo yum install rh-python36 …

Linuxでコマンド一撃で1GBのファイルを作成する

Linux環境で1GBとかそれ以上の大容量ファイルをコマンド一撃で作成してみたいと思います。 コマンド こんなかんじでできます。 $ fallocate -l 1G wawawa.txt 確認してみるとこんなかんじ。 $ ls -lh total 1.0G -rw-rw-r--. 1 vagrant vagrant 1.0G Feb 5 1…

CentOS7にGoをインストールする

CentOS7の環境にGo言語をインストールしてあげます。 手順 まず、epelリポジトリを追加してあげます。 sudo yum install epel-release そのあと、yum installすることでインストールできます。 sudo yum install golang インストールできました!!! $ go v…

鍵認証で踏み台経由で多段scp接続する

概要 踏み台経由かつ鍵認証で多段scpをしてみたいと思います。 コマンド コマンドとしてはこんなかんじ。 $ scp -i 踏み台の鍵 -o ProxyCommand='ssh -i 目的地の鍵 -W %h:%p ユーザ名@踏み台のアドレス' ユーザ名@目的地のアドレス わかりにくいから実際に…

鍵認証で踏み台経由で多段ssh接続する

概要 踏み台経由かつ鍵認証で多段sshをしてみたいと思います。 コマンド コマンドとしてはこんなかんじ。 $ ssh -i 踏み台の鍵 -o ProxyCommand='ssh -i 目的地の鍵 -W %h:%p ユーザ名@踏み台のアドレス' ユーザ名@目的地のアドレス わかりにくいから実際に…

Serverspecをつかってみる

概要 Serverspecをさわってみます。 Serverspecのインストール Rubyがはいっていればこれだけでインストールができます。 $ gem install serverspec Serverspecの設定 以下コマンドを入力してServerspecの設定を行います。 OSはUNIXで対象はExec(local)にし…

WSLのUbuntuにServerspecをインストールする

Windows Subsystem for Linux上のUbuntuにServerspecをインストールしてみたいと思います。 手順 gitのインストール Ruby関係のインストール rbenvのインストールと設定 ruby-buildのインストール Rubyのインストール Serverspecのインストール 手順 こんな…

鍵認証のサーバにscpでファイルを転送する

鍵認証のサーバにscpでファイルを転送してみます。 コマンドはこんなかんじ。 $ scp -i 鍵のPATH コピー元ファイル ユーザ@コピー先アドレス:コピー先PATH わかりにくいから実際に書いてみるとこんなかんじ。 $ scp -i ~/.ssh/wawawa-key.pem ./wawawa.txt c…

WSLのUbuntuにRubyをインストールする

GWindows Subsystem for Linux上のUbuntuにRubyをインストールしてみたいと思います。 手順 こんなかんじでインストールすることができます。 apt install してあげます。 $ sudo apt install ruby インストールできました! $ ruby --version ruby 2.5.1p57…

VirtualBoxとVagrantでWindowsにCentOS環境を構築してみる

https://upload.wikimedia.org/wikipedia/commons/8/87/Vagrant.png VirtualBoxのインストール Vagrantのインストール CentOSのboxファイルをダウンロードする 初期設定をする CentOSを起動する VirtualBoxからCentOSにsshログインする おまけ コマンドプロ…

CentOS7でLAMP環境を構築してみる

CentOS7にLAMP環境を構築してみようと思います。 そもそもLAMP環境とは? LAMP環境を構築する L - Linuxの構築 A - Apacheの構築 M - MySQLの構築 P - PHPの構築 LAMP環境の動作確認 MySQLにデータを格納する phpのスクリプトをつくる ブラウザで実際に確認…

AnsibleでSystemdに新規サービスを追加する

概要 AnsibleをつかってSystemdに新規サービスを追加して、それを有効化して起動してみたいと思います。 playbook例 ちょっとした解説 以下のようなことをやっている。 wawawa.serviceというunitファイルをターゲットにコピーする。 daemon reloadする wawaw…

tailコマンドでn行目以降を取得する

概要 tailコマンドを利用してn行目以降を取得してみたいと思います。 コマンド例 たとえばwawawa.txtが以下のようだとする。 $ cat wawawa.txt AAA BBB CCC DDD EEE 以下コマンドを実行するとwawawa.txtの3行目以降を取得することができる。 $ tail -n +3 wa…

rc.localが実行できないときは実行権限を与えてあげる

概要 Linuxの起動時にrc.localに記載したコマンドが実行されていなかった。 そんなときの対処法です!!! 対処法 /etc/rc.d/rc.localに実行権限を与えてあげる。 デフォルトだと以下のように実行権限がない。 このままだとrc.localになにを書いてあげても実…

ソートできないファイル同士を結合するシェルスクリプト

概要 なぜかはわからないけれどソートができないテキストファイル2つがあって、なぜかはわからないけれどそれを共通のキーをもとに結合したいときがあって、前述の通りなぜかはわからないけれどソートができないのでjoinコマンドが使えないのでシェルスクリ…

mktempをつかってシェルスクリプトでユニークなtempファイルをつくる

概要 シェルスクリプトでtempファイルを作成するときに以下のようにすることが多いかと思います。 echo 'wawawa' > ./hoge.txt ただこれだとカレントディレクトリにすでにhoge.txtが存在した場合に上書きしてしまって、人の大事なtempファイルを消してしまっ…