前の10件 | -
scpコマンド [コマンド]
SSHを利用して安全にファイルをコピーする方法です。
下記コマンド例は、公開鍵認証の設定を実施した後の例になります。
■クライアント側にあるファイルをLinuxサーバにコピーする場合
<秘密鍵のファイルパス> : 秘密鍵(id_rsa)のファイルパス
<ファイル名> : クライアント側にあるコピーしたいファイル名またはファイルパス
<ユーザ名> : Linuxサーバのアカウント
<IPアドレス> : LinuxサーバのIPアドレスまたはホスト名
<コピー先ディレクトリ> : Linuxサーバ側のコピー先ディレクトリ名
■Linuxサーバ側にあるファイルをクライアントにコピーする場合
<秘密鍵のファイルパス> : 秘密鍵(id_rsa)のファイルパス
<ユーザ名> : Linuxサーバのアカウント
<IPアドレス> : LinuxサーバのIPアドレスまたはホスト名
<ファイル名> : Linuxサーバ側にあるコピーしたいファイル名またはファイルパス
<コピー先ディレクトリ> : クライアント側のコピー先ディレクトリ名
オススメの書籍
下記コマンド例は、公開鍵認証の設定を実施した後の例になります。
■クライアント側にあるファイルをLinuxサーバにコピーする場合
$ scp -i <秘密鍵のファイルパス> <ファイル名> <ユーザ名>@<IPアドレス>:<コピー先ディレクトリ>
<秘密鍵のファイルパス> : 秘密鍵(id_rsa)のファイルパス
<ファイル名> : クライアント側にあるコピーしたいファイル名またはファイルパス
<ユーザ名> : Linuxサーバのアカウント
<IPアドレス> : LinuxサーバのIPアドレスまたはホスト名
<コピー先ディレクトリ> : Linuxサーバ側のコピー先ディレクトリ名
■Linuxサーバ側にあるファイルをクライアントにコピーする場合
$ scp -i <秘密鍵のファイルパス> <ユーザ名>@<IPアドレス>:<ファイル名> <コピー先ディレクトリ>
<秘密鍵のファイルパス> : 秘密鍵(id_rsa)のファイルパス
<ユーザ名> : Linuxサーバのアカウント
<IPアドレス> : LinuxサーバのIPアドレスまたはホスト名
<ファイル名> : Linuxサーバ側にあるコピーしたいファイル名またはファイルパス
<コピー先ディレクトリ> : クライアント側のコピー先ディレクトリ名
オススメの書籍
Linux教科書 LPICレベル1 Version4.0対応
- 作者: 中島 能和
- 出版社/メーカー: 翔泳社
- 発売日: 2015/06/16
- メディア: 単行本(ソフトカバー)
rootでリモートログイン禁止 [インフラ]
スーパーユーザのアカウント情報がなんらかの方法で第三者に渡ってしまい不正にログインされてしまった場合、甚大な影響を被ると推察します。致命的なリスクを可能な限り減らすため、クライアントからリモート経由でrootログインをできないようにします。
下記にUbuntu 16.04 LTS上で設定するための手順をメモとして残します
[手順]
1. sshd_configの編集
2. sshdの再起動
オススメの書籍
下記にUbuntu 16.04 LTS上で設定するための手順をメモとして残します
[手順]
1. sshd_configの編集
# vi /etc/ssh/sshd_config(変更前) PermitRootLogin yes
↓
(変更後) PermitRootLogin no
2. sshdの再起動
# systemctl restart sshd
オススメの書籍
Linux教科書 LPICレベル1 Version4.0対応
- 作者: 中島 能和
- 出版社/メーカー: 翔泳社
- 発売日: 2015/06/16
- メディア: 単行本(ソフトカバー)
タグ:ubuntu
公開鍵認証の設定 (Macで公開鍵を作る) [インフラ]
クライアントからインターネット上にあるLinuxサーバに対してSSH接続したい時、通常のパスワードで認証を行なった場合、途中の経路で盗み取られ解読されるリスクが高くなってしまいます。万が一盗み取られても解読するのに非常に時間を要する公開鍵の仕組みでSSH接続できるようにします。
下記にMac上で公開鍵を作成し、Ubuntu 16.04 LTSにSSH接続するまでの手順をメモとして残します
[手順]
1. Macのターミナルを起動し、公開鍵認証のキーを作成する
2. 公開鍵をサーバに置き、登録する (サーバ上で作業)
3. Mac側でSSH接続の設定
4. SSH接続
オススメの書籍
下記にMac上で公開鍵を作成し、Ubuntu 16.04 LTSにSSH接続するまでの手順をメモとして残します
[手順]
1. Macのターミナルを起動し、公開鍵認証のキーを作成する
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/masa/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /Users/masa/.ssh/id_rsa.
Your public key has been saved in /Users/masa/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:...
The key's randomart image is:
+---[RSA 2048]----+
...
+----[SHA256]-----+
$ cd /Users/masa/.ssh
$ ls
id_rsa (秘密鍵) id_rsa.pub (公開鍵)
$ chmod 400 id_rsa*
2. 公開鍵をサーバに置き、登録する (サーバ上で作業)
$ cd /home/testuser/.ssh
$ cat id_rsa.pub >> authorized_keys
3. Mac側でSSH接続の設定
$ cd /Users/masa/.ssh
$ vi config
Host test_server
HostName (サーバのIPアドレスまたはホスト名)
port (SSHのポート番号)
IdentityFile ~/.ssh/id_rsa
User testuser
4. SSH接続
$ ssh test_server
オススメの書籍
Linux教科書 LPICレベル1 Version4.0対応
- 作者: 中島 能和
- 出版社/メーカー: 翔泳社
- 発売日: 2015/06/16
- メディア: 単行本(ソフトカバー)
タグ:ubuntu
Ubuntuにユーザを追加する [インフラ]
ユーザ追加とsudo権限の付与を行う方法です。
下記にUbuntu 16.04 LTS上で設定するための手順をメモとして残します
1. ユーザ作成
2. 作成したユーザにsudoグループを追加
オススメの書籍
下記にUbuntu 16.04 LTS上で設定するための手順をメモとして残します
1. ユーザ作成
$ sudo adduser testuser
2. 作成したユーザにsudoグループを追加
$ sudo gpasswd -a testuser sudo
オススメの書籍
Linux教科書 LPICレベル1 Version4.0対応
- 作者: 中島 能和
- 出版社/メーカー: 翔泳社
- 発売日: 2015/06/16
- メディア: 単行本(ソフトカバー)
タグ:ubuntu
Ubuntu OSのバージョンを確認する [インフラ]
Ubuntu OSのバージョンを確認する方法です。
メモを残します
オススメの書籍
メモを残します
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"
オススメの書籍
Linux教科書 LPICレベル1 Version4.0対応
- 作者: 中島 能和
- 出版社/メーカー: 翔泳社
- 発売日: 2015/06/16
- メディア: 単行本(ソフトカバー)
タグ:ubuntu
仮想マシンに CentOS 7.2 をインストールする [インフラ]
CentOS 7.2 を自宅マシンの仮想サーバにインストールしてみました。
下記はインストールメモです。
インストールの準備
(※) 「後で OS をインストール」を選択しない場合、VMware の簡易インストールが実行されます。例えば、ロケールやキーボードを日本語ベースにするならば、簡易インストールだと英語ベースになるようなので、多数の設定変更が発生します。
インストールの実施
オススメの書籍
下記はインストールメモです。
インストールの準備
1. VMware Workstation 12 Player を起動
2. 「新規仮想マシンの作成」を選択
3. 「新規仮想マシン作成ウィザードへようこそ」画面
「インストール元:」に「後で OS をインストール」 (※) を選択
「次へ」をクリック
4. 「ゲスト OS の選択」画面
ゲスト OS に「Linux」を選択
バージョンに「CentOS 64 ビット」を選択
「次へ」をクリック
5. 「仮想マシンの名前」画面
「仮想マシン名」に仮想マシン名を入力
「場所」に仮想マシンの生成場所を入力
「次へ」をクリック
6. 「ディスク容量の指定」画面
「ディスク最大サイズ(GB)」はデフォルトのまま (20GB)
「仮想ディスクを複数のファイルに分割」をチェック
「次へ」をクリック
7. 「仮想マシンを作成する準備完了」画面
「ハードウェアをカスタマイズ」をクリック
「デバイス」で「新規 CD/DVD(IDE)」を選択
「接続」で「ISO イメージ ファイルを使用する」を選択
「参照」ボタンから CentOS-7-x86_64-DVD-1511.iso ファイルを指定
「閉じる」をクリック
8. 「完了」をクリック
(※) 「後で OS をインストール」を選択しない場合、VMware の簡易インストールが実行されます。例えば、ロケールやキーボードを日本語ベースにするならば、簡易インストールだと英語ベースになるようなので、多数の設定変更が発生します。
インストールの実施
1. 作成した仮想マシンを起動
2. 「Install CentOS 7」を選択し、Enter キーを押下
3. 「CENTOS 7 へようこそ」画面
「日本語」を選択
「続行」をクリック
4. 「インストールの概要」画面
①地域設定
a. 日付と時刻 : アジア/東京 タイムゾーン
b. キーボード : 日本語
c. 言語サポート : 日本語 (日本)
②SECURITY
a. SECURITY POLICY : No profile selected
③ソフトウェア
a. インストールソース : ローカルメディア
b. ソフトウェアの選択 : 最小限のインストール
④システム
a. インストール先 : 自動パーティションが選択されました
b. KDUMP : Kdump が有効になります
c. ネットワークとホスト名 :
* 「ホスト名」にホスト名を入力
* イーサネットスイッチを「オン」にする
* 「設定」をクリック
・「全般」タブ
- 「この接続が利用可能になったときは自動的に接続する」に
チェックを入れる
・「IPv4 のセッティング」タブ
- 「方式」を「手動」に設定
- 「アドレス」を入力
- 「ネットマスク」を入力
- 「ゲートウェイ」を入力
- 「DNS サーバー」を入力
・「IPv6 のセッティング」タブ
- 「方式」を「無視する」に設定
⑤「インストールの開始」をクリック
5. 「設定」画面
ROOT パスワードを設定
ユーザを作成
6. 再起動
オススメの書籍
標準テキスト CentOS 7 構築・運用・管理パーフェクトガイド
- 作者: 有限会社ナレッジデザイン 大竹 龍史
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2017/03/22
- メディア: 単行本
MySQL の論理バックアップとリストア [インフラ]
論理バックアップとリストアについて学習結果をまとめます。
論理バックアップは mysqldump コマンドを利用します。このコマンドは、対象のデータベースの内容を SQL 文 (create 文と insert 文) でダンプ (内容をまとめてテキストに記録) します。そのため、大規模なデータベースの場合、バックアップやリストアに時間がかかってしまうという欠点を持ちます。しかしながら、オンライン (サーバ無停止状態) によるバックアップが可能なため、データベースを止めることができないミッションクリティカルな環境では必要な方法になるかと思われます。
論理バックアップとリストアの特徴は以下の通りです。
(利点)
・オンライン時に取得
・バックアップの取得範囲を選択できる (全部、データベースレベル、テーブルレベル)
・他 PC や他バージョンの MySQL への移植が容易
(欠点)
・バックアップサイズが物理バックアップと比べると大きい
・バックアップとリストアが物理バックアップと比べると遅い
(SQL 文への変換処理などが大きな要因)
手順は以下の通りです。
データベース mydb のバックアップを取得する場合
[バックアップ (例) ]
[リストア (例) ]
すべてのデータベースのバックアップを取得する場合
[バックアップ (例) ]
[リストア (例) ]
オススメの書籍
論理バックアップは mysqldump コマンドを利用します。このコマンドは、対象のデータベースの内容を SQL 文 (create 文と insert 文) でダンプ (内容をまとめてテキストに記録) します。そのため、大規模なデータベースの場合、バックアップやリストアに時間がかかってしまうという欠点を持ちます。しかしながら、オンライン (サーバ無停止状態) によるバックアップが可能なため、データベースを止めることができないミッションクリティカルな環境では必要な方法になるかと思われます。
論理バックアップとリストアの特徴は以下の通りです。
(利点)
・オンライン時に取得
・バックアップの取得範囲を選択できる (全部、データベースレベル、テーブルレベル)
・他 PC や他バージョンの MySQL への移植が容易
(欠点)
・バックアップサイズが物理バックアップと比べると大きい
・バックアップとリストアが物理バックアップと比べると遅い
(SQL 文への変換処理などが大きな要因)
手順は以下の通りです。
データベース mydb のバックアップを取得する場合
[バックアップ (例) ]
1. バックアップを取得
# mysqldump -u root -proot・--hex-blob
--hex-blob
--default-character-set=utf8
--lock-tables
mydb > /bk/mydb-dump-`date +%Y%m%d%H%M%S`.sql
バイナリ型 (BINARY、VARBINARY、BLOG) と BIT のデータを 16進数表記で出力
・--default-character-set
mysqldump コマンド実行時に利用するデフォルト文字コード
・--lock-tables
テーブル毎にロックをかける
[リストア (例) ]
1. バックアップしたデータを展開
# mysql -u root -proot mydb < /bk/mydb-dump-20160211120000.sql
すべてのデータベースのバックアップを取得する場合
[バックアップ (例) ]
1. バックアップを取得
# mysqldump -u root -proot・--hex-blob
--hex-blob
--default-character-set=utf8
--lock-all-tables
--all-databases > /bk/all-dump-`date +%Y%m%d%H%M%S`.sql
上記参照
・--default-character-set
上記参照
・--lock-all-tables
すべてのデータベースのテーブルにロックをかける (※)
・--all-databases
すべてのデータベース
※ バックアップ中に MyISAM 型のテーブルを更新せず、InnoDB 型のテーブルに対して ALTER TABLE, CREATE TABLE, DROP TABLE, RENAME TABLE, TRUNCATE TABLE を利用しない場合、--lock-all-tables の代わりに --single-transaction を指定することもできる。
[リストア (例) ]
1. バックアップしたデータを展開
# mysql -u root -proot < /bk/all-dump-20160211120000.sql
オススメの書籍
タグ:DB
MySQL の物理バックアップとリストア [インフラ]
MySQL の物理バックアップとリストアについて学習結果をまとめます。
ハードウェア障害 (HDDの故障など)、システム障害 (OSの不具合など)、ユーザの誤操作によるデータの削除など、これら障害は、長く使っていると必ず発生します。もしこれら障害が発生したとしても、すぐにデータをリストアできるようにバックアップを常にとることが肝心です。バックアップには、物理バックアップ、論理バックアップや第三者ツールによる取得方法がありますが、今回はその中で物理バックアップ (MySQL 停止状態) について学習します。
物理バックアップとリストアの特徴は以下の通りです。
(利点)
・バックアップサイズが論理バックアップと比べると小さい
・バックアップとリストアが論理バックアップと比べると速い
(欠点)
・他 PC の MySQL への移行は互換性の問題からできない可能性あり
・MySQL の他バージョンへの移行は互換性の問題からできない可能性あり
手順は以下の通りです。
[バックアップ (例) ]
[リストア (例) ]
オススメの書籍
ハードウェア障害 (HDDの故障など)、システム障害 (OSの不具合など)、ユーザの誤操作によるデータの削除など、これら障害は、長く使っていると必ず発生します。もしこれら障害が発生したとしても、すぐにデータをリストアできるようにバックアップを常にとることが肝心です。バックアップには、物理バックアップ、論理バックアップや第三者ツールによる取得方法がありますが、今回はその中で物理バックアップ (MySQL 停止状態) について学習します。
物理バックアップとリストアの特徴は以下の通りです。
(利点)
・バックアップサイズが論理バックアップと比べると小さい
・バックアップとリストアが論理バックアップと比べると速い
(欠点)
・他 PC の MySQL への移行は互換性の問題からできない可能性あり
・MySQL の他バージョンへの移行は互換性の問題からできない可能性あり
手順は以下の通りです。
[バックアップ (例) ]
1. MySQL サーバを停止
# service mysqld stop2. データディレクトリを圧縮保存
# cd /var/lib3. MySQL サーバを起動
# tar cvfz /bk/mysql-`date +%Y%m%d%H%M%S`.tar.gz mysql
# service mysqld start
[リストア (例) ]
1. 障害が発生した環境を復旧
2. MySQL サーバを停止
# service mysqld stop3. 現在のデータディレクトリを削除
# cd /var/lib4. バックアップしたデータを展開
# rm -r mysql
# tar xvfz /bk/mysql-20160211120000.tar.gz5. MySQL サーバを起動
# service mysqld start
オススメの書籍
タグ:DB
Brace Expansionの利用 [コマンド]
後輩から教えてもらったBrace Expansion(ブレース展開)のお話しです。
例えば、/tmpの下のファイル(test)をバックアップ(コピー)したい場合、カレントディレクトリがどこであろうと1回のコマンド操作でバックアップを取る操作が可能になります。
ファイルをコピーしたい場合、通常は下記の通りの操作をしますが、
下記の通りBrace Expansionを使って操作した場合、カレントディレクトリが/tmp以外でもチェンジディレクトリ(cd)なしでコピー(cp)操作ができるようになりました。
実行結果は、下記の通り/tmpの下にtest.orgが作成されました。
コマンド操作が減り、とっても便利なのでよく利用するようになりました。
例えば、/tmpの下のファイル(test)をバックアップ(コピー)したい場合、カレントディレクトリがどこであろうと1回のコマンド操作でバックアップを取る操作が可能になります。
ファイルをコピーしたい場合、通常は下記の通りの操作をしますが、
$ cd /tmp
$ cp -p test test.org
下記の通りBrace Expansionを使って操作した場合、カレントディレクトリが/tmp以外でもチェンジディレクトリ(cd)なしでコピー(cp)操作ができるようになりました。
$ cp -p /tmp/test{,.org}
実行結果は、下記の通り/tmpの下にtest.orgが作成されました。
$ cd /tmp
$ ls
test test.org
コマンド操作が減り、とっても便利なのでよく利用するようになりました。
Linux のパイプ機能 [コマンド]
パイプ (|) は、コマンドの標準出力 (ディスプレイに表示される内容) を、他のコマンドの標準入力 (キーボードで入力した内容) に渡して実行したいときに使う演算子です。
たとえば、ls の結果から「D」の文字がついた結果だけを出力したいといったときは、ls コマンド パイプ grep コマンドと使います。
(例)
オススメの書籍
command1 | command2
たとえば、ls の結果から「D」の文字がついた結果だけを出力したいといったときは、ls コマンド パイプ grep コマンドと使います。
$ ls | grep 'D'
(例)
$ ls
AAA BBB CCC DDD ABCD
$ ls | grep 'D'
DDD
ABCD
オススメの書籍
Linux教科書 LPICレベル1 Version4.0対応
- 作者: 中島 能和
- 出版社/メーカー: 翔泳社
- 発売日: 2015/06/16
- メディア: 単行本(ソフトカバー)
前の10件 | -