tag:crieit.net,2005:https://crieit.net/users/muuuuurata0408/feed rahfjの投稿 - Crieit Crieitでユーザーrahfjによる最近の投稿 2021-01-19T16:56:37+09:00 https://crieit.net/users/muuuuurata0408/feed tag:crieit.net,2005:PublicArticle/16637 2021-01-19T16:56:37+09:00 2021-01-19T16:56:37+09:00 https://crieit.net/posts/Active-Directory-600690b5d90de Active Directoryの基本機能 <h1 id="Active Directoryとは"><a href="#Active+Directory%E3%81%A8%E3%81%AF">Active Directoryとは</a></h1> <p>Windows Serverに備わっている機能こと。企業内で稼働している様々なITシステムに対して、アクセス可否を判断するための「認証基盤」を提供します。<br /> つまり、システムの管理者が社内のITシステムへアクセス可能な社員、部署、PCを制限できる機能です。</p> <h1 id="Active Directoryの基本機能"><a href="#Active+Directory%E3%81%AE%E5%9F%BA%E6%9C%AC%E6%A9%9F%E8%83%BD">Active Directoryの基本機能</a></h1> <p>様々な機能がありますが、基本となるのは以下の3つの機能です。</p> <ol> <li>ディレクトリサービス</li> <li>ユーザ認証</li> <li>クライアント管理</li> </ol> <h2 id="1. ディレクトリサービス"><a href="#1.+%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9">1. ディレクトリサービス</a></h2> <p>ネットワーク上に存在するリソース情報を記録・検索できるデータベースです。<br /> 例えば、ユーザ(社員)・コンピュータ(社員のPC)・プリンター(オフィス複合機)の情報管理に利用されます。<br /> ディレクトリサービスにネットワークから接続するためにLDAP(エルダップ)と呼ばれる通信プロトコルが使われています。</p> <h2 id="2. ユーザ認証"><a href="#2.+%E3%83%A6%E3%83%BC%E3%82%B6%E8%AA%8D%E8%A8%BC">2. ユーザ認証</a></h2> <p>ディレクトリサービスの情報へアクセスするユーザを識別する機能です。<br /> 例えば、企業の社員ではない人は「社員情報データベースへアクセスできない」、「社員用のコンピュータにサインインできない」等の「アクセスしようとしてるユーザが本当に正しいユーザかどうか」判断する仕組みを提供できます。<br /> Kerberos(ケルベロス)と呼ばれる通信プロトコルを使い、チケットを使ってシングルサインオン認証を行います。</p> <h2 id="3. クライアント管理"><a href="#3.+%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88%E7%AE%A1%E7%90%86">3. クライアント管理</a></h2> <p>Active Directoryの管理下にあるコンピュータに対して、設定(グループポリシー)を配布する機能です。<br /> 例えば、情報漏洩の恐れがある「USBメモリの利用を禁止する」設定を、全PCに一括適用する仕組みを提供します。<br /> ポリシーの配布にはファイル共有でも使われるSMB(エスエムビー)と呼ばれる通信プロトコルが利用されています。</p> <h1 id="Active Directoryのメリット"><a href="#Active+Directory%E3%81%AE%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88">Active Directoryのメリット</a></h1> <h2 id="管理者側のメリット"><a href="#%E7%AE%A1%E7%90%86%E8%80%85%E5%81%B4%E3%81%AE%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88">管理者側のメリット</a></h2> <ul> <li>ドメイン管理下のユーザアカウント管理が簡単になる</li> <li>ファイルサーバへのアクセス許可の管理が簡単になる</li> <li>ドメイン管理官のコンピュータに同じ設定を簡単に適用できる</li> </ul> <h2 id="利用者側のメリット"><a href="#%E5%88%A9%E7%94%A8%E8%80%85%E5%81%B4%E3%81%AE%E3%83%A1%E3%83%AA%E3%83%83%E3%83%88">利用者側のメリット</a></h2> <ul> <li>ドメイン管理下のコンピュータと連携アプリケーション(OfficeやTeamsなど)は、同じユーザ名とパスワードでログオン可能</li> <li>Windows Update等のセキュリティ管理を利用者側で意識しなくて良い</li> <li>検索機能を使えば、ユーザ(全社員の情報)を簡単に検索できる</li> </ul> rahfj tag:crieit.net,2005:PublicArticle/16635 2021-01-19T16:07:24+09:00 2021-01-19T16:08:05+09:00 https://crieit.net/posts/vim-6006852ca0906 vimの特徴 <h1 id="vim とは"><a href="#vim+%E3%81%A8%E3%81%AF">vim とは</a></h1> <p>Linuxで標準的に使われるテキストエディタであり、Windowsでいうとメモ帳となる。</p> <p>なぜvimが必要なのかというと、LinuxはWindowsと異なり、設定する値をテキストエディタに記述するものが多いからです。</p> <h1 id="vim の特徴"><a href="#vim+%E3%81%AE%E7%89%B9%E5%BE%B4">vim の特徴</a></h1> <h2 id="特徴①"><a href="#%E7%89%B9%E5%BE%B4%E2%91%A0">特徴①</a></h2> <p>基本は h j k l キーでカーソル移動します。ホームポジションから移動しない設計になっていて、キーと移動先は以下の通りです。</p> <div class="table-responsive"><table> <thead> <tr> <th>キー</th> <th>移動先</th> </tr> </thead> <tbody> <tr> <td>h</td> <td>1つ左</td> </tr> <tr> <td>j</td> <td>1つ下</td> </tr> <tr> <td>k</td> <td>1つ上</td> </tr> <tr> <td>l</td> <td>1つ右</td> </tr> </tbody> </table></div> <p>また、<strong>w</strong> や <strong>b</strong> キーを使うと単語単位で高速移動できます。</p> <h2 id="特徴②"><a href="#%E7%89%B9%E5%BE%B4%E2%91%A1">特徴②</a></h2> <p><strong>4つのモードがあります。</strong></p> <h3 id="ノーマルモード(Normal mode)"><a href="#%E3%83%8E%E3%83%BC%E3%83%9E%E3%83%AB%E3%83%A2%E3%83%BC%E3%83%89%28Normal+mode%29">ノーマルモード(Normal mode)</a></h3> <ul> <li>vim起動時に最初に入るモード</li> <li>h j k l のカーソル移動ができる</li> <li><strong>文字の入力はできない</strong></li> <li>他の各モードから戻るには「ESC」または「Ctrl+[」キーを入力</li> <li>以下のコマンドを実行できる(代表的なコマンドのみ抜粋)</li> </ul> <div class="table-responsive"><table> <thead> <tr> <th>コマンド</th> <th>効果</th> </tr> </thead> <tbody> <tr> <td><strong>x</strong></td> <td><strong>カーソル上の1文字を削除</strong></td> </tr> <tr> <td><strong>dd</strong></td> <td><strong>カーソルのある行を削除</strong></td> </tr> <tr> <td>yy</td> <td>カーソルを含む行全部をコピー</td> </tr> <tr> <td>p</td> <td>カーソル行の下にコピーしたものをペースト</td> </tr> <tr> <td>u</td> <td>やり直し(WindowsのCtrl+zと同じ)</td> </tr> <tr> <td>[行数]gg</td> <td>指定した行数にジャンプ、指定しない場合は先頭行へジャンプ</td> </tr> <tr> <td>G</td> <td>最終行へジャンプ</td> </tr> <tr> <td>ZZ</td> <td>保存して終了(:キーが押せない場合に助かる)</td> </tr> </tbody> </table></div> <p>また、「<strong>/</strong>」キーを押すと検索コマンドラインへ移行し、次に検索したい文字を入力し、Enterを実行すると現在のカーソル位置以降を検索します。複数存在する場合は「<strong>n</strong>」キーを押すと次の位置へカーソルが移動します。</p> <h3 id="コマンドラインモード(Command-line mode)"><a href="#%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%83%A2%E3%83%BC%E3%83%89%28Command-line+mode%29">コマンドラインモード(Command-line mode)</a></h3> <ul> <li>ノーマルモード上で「:」キーを押すことでコマンドラインモードへ移行する</li> <li>以下のコマンドを実行できる(代表的なコマンドのみ抜粋)</li> </ul> <div class="table-responsive"><table> <thead> <tr> <th>コマンド</th> <th>説明</th> <th>補足</th> </tr> </thead> <tbody> <tr> <td><strong>x</strong></td> <td><strong>保存して終了</strong></td> <td><strong>変更が無い時はタイムスタンプの更新はしない</strong></td> </tr> <tr> <td>w</td> <td>保存</td> <td>変更が無い時もタイムスタンプを更新する</td> </tr> <tr> <td>q</td> <td>保存しないで終了</td> <td>変更がある時は終了できない</td> </tr> <tr> <td><strong>q!</strong></td> <td><strong>保存しないで強制終了</strong></td> <td><strong>変更がある時でも保存しないで終了する</strong></td> </tr> <tr> <td>set nu</td> <td>行番号を表示</td> <td>.vimrcに設定してデフォルトにすることも可能</td> </tr> <tr> <td>set paste</td> <td>ペーストモードにする</td> <td>解除はset nopaste</td> </tr> <tr> <td>s/文字列A/文字列B/g</td> <td>置換(文字列Aを文字列Bに)</td> <td>カーソルのある行のみ置換対象</td> </tr> <tr> <td>%s/文字列A/文字列B/g</td> <td>置換(文字列Aを文字列Bに)</td> <td>全行が置換対象</td> </tr> </tbody> </table></div> <h3 id="インサートモード(Insert mode)"><a href="#%E3%82%A4%E3%83%B3%E3%82%B5%E3%83%BC%E3%83%88%E3%83%A2%E3%83%BC%E3%83%89%28Insert+mode%29">インサートモード(Insert mode)</a></h3> <ul> <li>文字の入力や編集ができる</li> <li>ノーマルモード上で「i」、「a」、「o」等のキーを入力すると固有の動作をしてインサートモードへ移行する</li> <li>以下のコマンドを実行できる(ノーマルモードからInsert modeへの移行の代表的なコマンドのみ抜粋)</li> </ul> <div class="table-responsive"><table> <thead> <tr> <th>コマンド</th> <th>動作</th> </tr> </thead> <tbody> <tr> <td>a</td> <td>カーソルの右に移動後、Insert modeへ</td> </tr> <tr> <td><strong>i</strong></td> <td><strong>カーソルの位置からInsert modeへ</strong></td> </tr> <tr> <td>A</td> <td>カーソルのある行末からInsert modeへ</td> </tr> <tr> <td>I</td> <td>カーソルのある行頭からInsert modeへ</td> </tr> <tr> <td>o</td> <td>カーソルのある行の次の行頭からInsert modeへ</td> </tr> <tr> <td>O</td> <td>カーソルのある行の次の行末からInsert modeへ</td> </tr> </tbody> </table></div> <h3 id="ビジュアルモード(Visual mode)"><a href="#%E3%83%93%E3%82%B8%E3%83%A5%E3%82%A2%E3%83%AB%E3%83%A2%E3%83%BC%E3%83%89%28Visual+mode%29">ビジュアルモード(Visual mode)</a></h3> <ul> <li>文字の選択が行える</li> <li>ノーマルモード上で「v」キー等を入力するとビジュアルモードへ移行する</li> <li>以下のコマンドを実行できる(代表的なコマンドのみ抜粋)</li> </ul> <div class="table-responsive"><table> <thead> <tr> <th>コマンド</th> <th>効果</th> </tr> </thead> <tbody> <tr> <td>d</td> <td>選択した範囲を削除してノーマルモードに戻る</td> </tr> <tr> <td>y</td> <td>選択した範囲をコピーしてノーマルモードに戻る</td> </tr> <tr> <td>c</td> <td>選択した範囲を削除してInsert modeへ移行する</td> </tr> </tbody> </table></div> <h2 id="まとめ"><a href="#%E3%81%BE%E3%81%A8%E3%82%81">まとめ</a></h2> <p>カーソル移動のイメージ図と各モードの関係性は以下の通りとなります。</p> <p><a href="https://crieit.now.sh/upload_images/7144b891afef59c4a115cb554dee08366006827d60ac1.PNG" target="_blank" rel="nofollow noopener"><img src="https://crieit.now.sh/upload_images/7144b891afef59c4a115cb554dee08366006827d60ac1.PNG?mw=700" alt="image" /></a></p> rahfj tag:crieit.net,2005:PublicArticle/16627 2021-01-19T14:20:05+09:00 2021-01-19T14:21:35+09:00 https://crieit.net/posts/Linux-60066c052c390 Linux基礎コマンド 初心者用 <h1 id="ディレクトリ構成"><a href="#%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E6%A7%8B%E6%88%90">ディレクトリ構成</a></h1> <ul> <li><p>ファイルを入れる物をWindowsではフォルダ、Linuxではディレクトリという</p></li> <li><p>Linuxはルートディレクトリ(/)を起点としたツリー構造となっていて、ファイルとディレクトリを管理してる</p></li> <li><p>コマンドを実行するには、ファイルやディレクトリの位置を指定する必要がある</p></li> </ul> <h1 id="FHS(Filesystem Hierarchy Standard)"><a href="#FHS%EF%BC%88Filesystem+Hierarchy+Standard%EF%BC%89">FHS(Filesystem Hierarchy Standard)</a></h1> <p>ファイルシステム階層標準のこと。ディレクトリ構成を基本的なツリー構造へ統一するためにFHSが作られた。</p> <div class="table-responsive"><table> <thead> <tr> <th>ディレクトリ名</th> <th>役割</th> </tr> </thead> <tbody> <tr> <td>/etc</td> <td>システムの設定ファイルが保存される</td> </tr> <tr> <td>/home</td> <td>一般ユーザのホームディレクトリ</td> </tr> <tr> <td>/var/log</td> <td>ログファイルが保存される</td> </tr> </tbody> </table></div> <h1 id="絶対パス指定と相対パス指定"><a href="#%E7%B5%B6%E5%AF%BE%E3%83%91%E3%82%B9%E6%8C%87%E5%AE%9A%E3%81%A8%E7%9B%B8%E5%AF%BE%E3%83%91%E3%82%B9%E6%8C%87%E5%AE%9A">絶対パス指定と相対パス指定</a></h1> <ul> <li>絶対パス指定</li> </ul> <p> ルートディレクトリを起点としたディレクトリ指定のこと。</p> <ul> <li>相対パス指定</li> </ul> <p> カレントディレクトリ(現在のディレクトリ)を起点としたディレクトリ指定のこと。</p> <p>相対パス指定の記号</p> <div class="table-responsive"><table> <thead> <tr> <th>記号</th> <th>読み方</th> <th>意味</th> </tr> </thead> <tbody> <tr> <td>~</td> <td>チルダ</td> <td>ユーザのホームディレクトリ</td> </tr> <tr> <td>.</td> <td>ドット</td> <td>カレントディレクトリ</td> </tr> <tr> <td>..</td> <td>ドットドット</td> <td>1つ上のディレクトリ</td> </tr> </tbody> </table></div> <h2 id="cd コマンド"><a href="#cd+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">cd コマンド</a></h2> <p>ディレクトリの移動を行うコマンド。change directoryの略。</p> <p><strong>$ cd [ディレクトリ名]</strong></p> <p>これでカレントディレクトリから移動先に移動する。絶対パス指定でも移動できる。<br /> また、1つ上のディレクトリを表す「..(ドットドット)」や2つ上にディレクトリを表す「../..」を入力するとそこへ移動できる。</p> <h2 id="pwd コマンド"><a href="#pwd+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">pwd コマンド</a></h2> <p><strong>$ pwd</strong></p> <p>カレントディレクトリをフルパスで表示するコマンド。print work directoryの略。</p> <h2 id="su - コマンド"><a href="#su+-+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">su - コマンド</a></h2> <p><strong>$ su -</strong></p> <p>管理者権限へと移行する。</p> <h2 id="ls コマンド"><a href="#ls+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">ls コマンド</a></h2> <p><strong>$ ls [オプション] [ディレクトリ名]</strong></p> <p>ディレクトリに存在するファイルやディレクトリの一覧を表示するコマンド。list segmentsの略。</p> <p>$ ls<br /> カレントディレクトリ表示</p> <p>$ ls /<br /> ルートディレクトリに存在するディレクトリを見る</p> <p>$ ls -l (=CentOSの場合、llでも同じ結果を得られる)<br /> $ ls -al</p> <div class="table-responsive"><table> <thead> <tr> <th>オプション</th> <th>オプションの意味</th> </tr> </thead> <tbody> <tr> <td>a</td> <td>隠し属性を表示</td> </tr> <tr> <td>l</td> <td>詳細を表示(パーミッション、オーナー、サイズ、日付)</td> </tr> </tbody> </table></div> <h2 id="mkdir コマンド"><a href="#mkdir+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">mkdir コマンド</a></h2> <p>ディレクトリを作成するコマンド。make directoryの略。</p> <p><strong>$ mkdir [ディレクトリ名]</strong></p> <h2 id="touch コマンド"><a href="#touch+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">touch コマンド</a></h2> <p>空のファイルを作成したり、ファイルの更新日時を現在の日時に変更するコマンド。</p> <p><strong>$ touch [ファイル名]</strong></p> <h2 id="cp コマンド"><a href="#cp+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">cp コマンド</a></h2> <p>指定したファイルを指定したディレクトリにコピーするコマンド。copyの略。</p> <p><strong>$ cp (オプション) [コピー元ファイル名] [コピー先ファイル名]</strong></p> <p>また、「<strong>r</strong>」オプションを使用すると、ディレクトリもコピー可能。</p> <p><strong>$ cp -r [コピー元ディレクトリ名] [コピー先ディレクトリ名]</strong></p> <h2 id="mv コマンド"><a href="#mv+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">mv コマンド</a></h2> <p>指定したファイルやディレクトリを指定したディレクトリに移動する。</p> <p><strong>$ mv (オプション) [移動元パス] [移動先パス]</strong></p> <p>また、mvコマンドは名前を変更するコマンドとしても使用できます。</p> <p><strong>$ mv [ファイル名] [変更後のファイル名</strong></p> <h2 id="rm コマンド"><a href="#rm+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">rm コマンド</a></h2> <p>ファイルやディレクトリを削除するコマンド。removeの略。</p> <p><strong>$ rm (オプション) [削除したいファイル名]</strong></p> <p>また、「<strong>r</strong>」オプションを使用すると、ディレクトリを削除できる。</p> <p><strong>$ rm -r [削除したいディレクトリ名]</strong></p> <h2 id="less コマンド"><a href="#less+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">less コマンド</a></h2> <p>ファイルの中身を表示するコマンド。読み取り専用で「q」のキーを入力するまで表示が終了されない。<br /> 中身をじっくり見ることができるため、ログファイルやサーバ・ソフトウェアの設定ファイルの中身を確認する時によく利用される。</p> <p><strong>$ less [表示したいファイル名]</strong>]</p> <h3 id="poweroff コマンド"><a href="#poweroff+%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">poweroff コマンド</a></h3> <p>OSの停止ができるコマンド。ただし、行うには管理者権限が必要。</p> <p><strong># poweroff</strong></p> <h3 id="コマンド履歴機能"><a href="#%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E5%B1%A5%E6%AD%B4%E6%A9%9F%E8%83%BD">コマンド履歴機能</a></h3> <p>カーソルキーの「↑」キー、または「Ctrl」+「P」を押すごとに、過去に実行したコマンドを1つずつ遡って表示する。<br /> また、「history」コマンドを実行すると、過去に実行されたコマンドの一覧が古い順に表示される。</p> rahfj tag:crieit.net,2005:PublicArticle/16603 2021-01-15T15:24:00+09:00 2021-01-15T15:24:00+09:00 https://crieit.net/posts/Linux-60013500bc541 Linuxって何? <p>Linux(リナックス)とは、オープンソースソフトウェア(OSS)で開発されている、LinuxカーネルもしくはLinuxカーネルを採用したOSのことです。</p> <h1 id="Linuxの特徴"><a href="#Linux%E3%81%AE%E7%89%B9%E5%BE%B4">Linuxの特徴</a></h1> <p>・<strong>オープンソース</strong> である<br /> 誰でもソースコードを見ることができ、世界中の技術者が開発に貢献しており、信頼性が高い。そして新技術の採用が早い。</p> <p>・ライセンスは無償(商用向けのRed Hat等は有償)</p> <p>・ユーザインターフェースは<strong>CLI</strong>(Command line interface)がメイン<br /> Windows PCではマウス操作がメインであったが、Linuxはコマンド操作がメインとなります。</p> <p>・<strong>世界中で大人気</strong><br /> 技術革新が激しいインターネット上のWebサービスは、OSSと組み合わせて構築されることがほとんどです。<br /> その為、ベースOSはLinuxが圧倒的大人気になっています。</p> <h2 id="ディストリビューション(英 : distribution)とは"><a href="#%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%EF%BC%88%E8%8B%B1+%3A+distribution%EF%BC%89%E3%81%A8%E3%81%AF">ディストリビューション(英 : distribution)とは</a></h2> <p>LinuxをOSとして使用するためには、<strong>「Linuxカーネル」だけでは足りません</strong>。<br /> それ以外にも様々なソフトが必要になってきますし、それを自分の手で全部集めるのは大変ですよね。。。<br /> そこで、私のような一般人がOSとしてすぐに使用できるように必要なものを全部入れたソフトウェア配布形態を <strong>ディストリビューション</strong> と呼びます。</p> <h3 id="パッケージ管理システム"><a href="#%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E7%AE%A1%E7%90%86%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0">パッケージ管理システム</a></h3> <p>Linuxカーネルを含む各ソフトウェアは、 <strong>パッケージ</strong> という形式になっています。<br /> パッケージ管理システムは、必要なパッケージを判別して、それらをまとめて自動でインストールをしてくれます。また、バージョンアップ等の作業もパッケージ単位で効率よく行えます。</p> <p>例として、Red Hat系は yum や dnf 、Debian系は apt-get や apt がよく使用されます。</p> <h2 id="ディストリビューションの種類"><a href="#%E3%83%87%E3%82%A3%E3%82%B9%E3%83%88%E3%83%AA%E3%83%93%E3%83%A5%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E7%A8%AE%E9%A1%9E">ディストリビューションの種類</a></h2> <p>主に利用される2つの大きな種類があります。それがRed Hat系とDebian系です。</p> <h3 id="Red Hat系"><a href="#Red+Hat%E7%B3%BB">Red Hat系</a></h3> <p>Red Hat Enterprise linux(RHEL)、CentOSが該当します。<br /> 「トラブルを自己責任で解決できない企業」を対象に、サポート付きで売り出したLinux OSがルーツです。<br /> 特にRHELは世界中の企業で使用され、商用Linuxのデファクトスタンダード(事実上の標準)です。</p> <h3 id="Debian系"><a href="#Debian%E7%B3%BB">Debian系</a></h3> <p>Debian GNU/Linux、Ubuntu、Raspbian等が該当します。<br /> 個人利用や研究・教育目的でよく使用されています。<br /> 特にUbuntuはWindowsに近いGUI(Graphical User Interface)環境を持ち、Windowsユーザにも扱いやすいため、世界中で人気があります。</p> rahfj tag:crieit.net,2005:PublicArticle/16558 2021-01-07T12:58:53+09:00 2021-01-07T17:25:15+09:00 https://crieit.net/posts/RAID-5ff686fd39e2a RAIDとは <h1 id="RAIDとは"><a href="#RAID%E3%81%A8%E3%81%AF">RAIDとは</a></h1> <p>RAID(レイド:Redundant Arrays of Inexpensive Disk)とは、複数の物理ディスクを1つのディスクのように扱い(論理ドライブ)、耐障害性や処理速度を向上させる技術です。<br /> RAIDにはレベル毎に特徴があり、構築するサーバで重視したいもの、用途に合わせて構築することができます。<br /> しかし、一度決定したレベルをサービス稼働後に変更することは困難ですので、設計時に注意が必要です。</p> <h1 id="RAIDの代表的な種類"><a href="#RAID%E3%81%AE%E4%BB%A3%E8%A1%A8%E7%9A%84%E3%81%AA%E7%A8%AE%E9%A1%9E">RAIDの代表的な種類</a></h1> <p>ここではRAID0、1、5、6、10について載せます。</p> <h2 id="RAID 0"><a href="#RAID+0">RAID 0</a></h2> <p>ストライピングとも呼ばれる。</p> <p>メリット</p> <ul> <li>データを分散して平行処理をすることで高速化できる</li> <li>物理ディスク数に比例して高速化できる</li> <li>論理ドライブの容量が高い(例:1TBが2本なら2TBの論理ドライブ)</li> </ul> <p>デメリット</p> <ul> <li>耐障害性がない(物理ディスク1本でも故障するとデータ消失する)</li> </ul> <h2 id="RAID 1"><a href="#RAID+1">RAID 1</a></h2> <p>ミラーリングとも呼ばれる。</p> <p>メリット</p> <ul> <li>同じデータを各物理ディスクに書き込みを行い冗長性を確保している</li> <li>物理ディスクが1本故障しても論理ドライブのデータは消失しない</li> </ul> <p>デメリット</p> <ul> <li>論理ドライブの容量は物理ディスクの合計の半分になる(例:1TBが2本なら1TBの論理ドライブ)</li> </ul> <h2 id="RAID 5"><a href="#RAID+5">RAID 5</a></h2> <p>パリティレイドとも呼ばれる。</p> <p>メリット</p> <ul> <li>データを複数の物理ディスクに分散して格納し、同時にパリティデータ(誤り訂正補正)を書き込む</li> <li>物理ディスクが1本故障してもパリティデータを使って欠損データの復元ができる</li> </ul> <p>デメリット</p> <ul> <li>論理ドライブの容量は物理ディスクの合計から1本分の容量を引いたものになる(例:1TBが4本なら3TBの論理ドライブ)</li> </ul> <h2 id="RAID 6"><a href="#RAID+6">RAID 6</a></h2> <p>ダブルパリティレイドとも呼ばれる。</p> <p>メリット</p> <ul> <li>データ書き込み時にパリティデータも同時に書き込むが、2重で書き込むので、耐障害性が高い</li> <li>2本の物理ディスクが故障してもパリティデータを使って欠損データの復元ができる</li> </ul> <p>デメリット</p> <ul> <li>論理ドライブの容量は物理ディスクの合計から2本分の容量を引いたものになる(例:1TBが4本なら2TBの論理ドライブ)</li> <li>物理ディスクの必要本数が多くなりコストが高くなる</li> </ul> <h2 id="RAID 10(1+0)"><a href="#RAID+10%EF%BC%881%EF%BC%8B0%EF%BC%89">RAID 10(1+0)</a></h2> <p>RAID1の構成をさらにRAID0で掛け合わせた構成</p> <p>メリット</p> <ul> <li>高速性と冗長性を両立している</li> <li>物理ディスクが1本故障しても論理ドライブのデータは消失しない。また、4本の場合なら条件によっては2本故障してもデータが消失しないこともある</li> </ul> <p>デメリット</p> <ul> <li>2本の物理ディスクに同じデータを2重で保存するため、論理ドライブの容量は物理ディスクの合計の半分になる(例:1TBが4本なら2TBの論理ドライブ)</li> <li>利用効率は悪い</li> </ul> rahfj tag:crieit.net,2005:PublicArticle/16534 2021-01-05T17:19:35+09:00 2021-01-05T17:19:35+09:00 https://crieit.net/posts/PC-CPU サーバとPCの違い ~CPU、メモリ編~ <h1 id="CPU性能の違い"><a href="#CPU%E6%80%A7%E8%83%BD%E3%81%AE%E9%81%95%E3%81%84">CPU性能の違い</a></h1> <p>大きくまとめると、 <strong>信頼性</strong> と <strong>処理能力</strong> だと思います。</p> <h2 id="信頼性"><a href="#%E4%BF%A1%E9%A0%BC%E6%80%A7">信頼性</a></h2> <p>PCでは基本的に1ユーザーのみの処理を行うのに対して、サーバは複数のユーザーの処理をしながら他にも仕事を同時に行っています。<br /> サーバは大量のデータを処理を行い、その時にデータ処理を間違えずに確実に処理をする <strong>信頼性</strong> が求められています。</p> <h2 id="処理能力"><a href="#%E5%87%A6%E7%90%86%E8%83%BD%E5%8A%9B">処理能力</a></h2> <p>サーバはPCと異なり、1つのサーバに複数のCPUを搭載することが出来ます。逆を言えば複数のCPUが必要になるくらいのデータを処理しています。<br /> その大量のデータを処理するためには、PCの処理能力と比べ、より <strong>高性能な処理能力</strong> が求められます。</p> <h1 id="メモリの違い"><a href="#%E3%83%A1%E3%83%A2%E3%83%AA%E3%81%AE%E9%81%95%E3%81%84">メモリの違い</a></h1> <p>PC用とサーバ用のメモリでは主な違いは大きく2点あります。それが <strong>ECC</strong> と <strong>レジスタードバッファ</strong> です。</p> <h2 id="ECC(Error Correcting Code)"><a href="#ECC%EF%BC%88Error+Correcting+Code%EF%BC%89">ECC(Error Correcting Code)</a></h2> <p>ECCメモリには、メモリで発生したエラーを検出して修正・訂正を行うソフトウェアが搭載されています。<br /> この <strong>ECCメモリに対応しているのがサーバ</strong> 、対応してないのがPCとなります。</p> <h2 id="レジスタードバッファ"><a href="#%E3%83%AC%E3%82%B8%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%89%E3%83%90%E3%83%83%E3%83%95%E3%82%A1">レジスタードバッファ</a></h2> <p>メモリコントローラからメインメモリに伝送された信号を安定化させるLSI(大規模集積回路)です。<br /> つまり、メインメモリの搭載数が多くなり、信号が弱まったものを強化したり、動作が不安定になることを防ぐ役割があります。<br /> この <strong>レジスタードバッファを搭載しているのがサーバ</strong> 、搭載していないのがPCとなります。</p> rahfj tag:crieit.net,2005:PublicArticle/16515 2021-01-05T11:36:57+09:00 2021-01-05T12:04:02+09:00 https://crieit.net/posts/Amazon-S3-5ff3d0c93a60e Amazon S3 ストレージクラス <h1 id="Amazon S3 ストレージクラス"><a href="#Amazon+S3+%E3%82%B9%E3%83%88%E3%83%AC%E3%83%BC%E3%82%B8%E3%82%AF%E3%83%A9%E3%82%B9">Amazon S3 ストレージクラス</a></h1> <p>Amazon S3 では、各ユースケース向けに幅広いストレージクラスが提供されています</p> <h2 id="クラスの種類"><a href="#%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%AE%E7%A8%AE%E9%A1%9E">クラスの種類</a></h2> <div class="table-responsive"><table> <thead> <tr> <th>クラス</th> <th>保存用途</th> <th>可用性</th> <th>最小ストレージ期間</th> </tr> </thead> <tbody> <tr> <td>S3標準</td> <td>アクセス頻度の高いデータ</td> <td>99.99%</td> <td>なし</td> </tr> <tr> <td>S3 Intelligent-Tiering</td> <td>アクセス頻度は不明だが性能を下げずにコストを下げたい</td> <td>99.9%</td> <td>30日</td> </tr> <tr> <td>S3 標準 - IA</td> <td>アクセス頻度は低いが、必要に応じてすぐに取り出すことが必要なデータ</td> <td>99.9%</td> <td>30日</td> </tr> </tbody> </table></div> <h2 id="ライフサイクル管理"><a href="#%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B5%E3%82%A4%E3%82%AF%E3%83%AB%E7%AE%A1%E7%90%86">ライフサイクル管理</a></h2> <p>Amazon S3 がオブジェクトのグループに適用するアクションを定義する一連のルールです。<br /> 次の2種類のアクションがあります。</p> <ul> <li>移行アクション <ul> <li>別のストレージクラスにオブジェクトを移行するタイミングを定義します。</li> </ul></li> <li>有効期限アクション <ul> <li>オブジェクトの有効期限を定義します。</li> </ul></li> </ul> rahfj tag:crieit.net,2005:PublicArticle/16410 2020-12-23T17:56:32+09:00 2020-12-23T18:02:17+09:00 https://crieit.net/posts/OSPF-5fe30640b1773 OSPFとは <h1 id="OSPFとは"><a href="#OSPF%E3%81%A8%E3%81%AF">OSPFとは</a></h1> <p>OSPF(Open Shortest Path First)とは、ダイナミックルーティングで使用されるプロトコルであり、IGPの1つである。</p> <p>方式:リンクステート(接続情報を全てのルータで共有し、最短経路を算出)<br /> メトリック:パスコスト(インターフェースの帯域幅に依存し、デフォルトでは100bpsを1としている。※変更可能)</p> <p> OSPFにはエリアがあり、中心となるバックボーンエリア(area 0)、バックボーンエリアから派生したマルチエリアがある。このようにエリアを分けることで一つのエリア内でのリンク数を減らし、LSA(Link-State Advertisement:ネットワーク情報やパスコスト等の情報)の増加やネットワーク変更によるSPFの再計算の負荷を低減する。<br /> 注意点として、マルチエリアを構成するルータのうち、<strong>1つは必ずバックボーンエリアに属したルータ</strong>である必要がある。<br />  ちなみに複数のエリアにまたがる境界となるルータをABR(Area Border Router)と言う。</p> <h2 id="OSPFの仕組み"><a href="#OSPF%E3%81%AE%E4%BB%95%E7%B5%84%E3%81%BF">OSPFの仕組み</a></h2> <p>1.ネイバー関係成立<br />  Helloパケットを送信し、ネイバーを発見する。Helloパケットは10秒に1回送信し、ネイバー関係を維持できる。Helloパケットを受信したらお互いのルータIDを認定する。</p> <p>2.アジャセンシー関係成立<br />  同じネットワーク内のOSPFルータからOSPFプライオリティまたはルータIDによりDR(Designated Router)、BDR(Backup Designated Router)を選出し、LSAを交換する。LSAの交換を行った関係をアジャセンシー関係と言う。<br />  DR、BDRを選出すると、OSPFのエリア内のルータはこのDR、BDRとのみデータ交換を行うので、ルータへの負荷が少なくて済む。(常に全てのルータ同士でデータ交換を行っていたら大変ですよね。。。)</p> <h2 id="OSPF設定手順"><a href="#OSPF%E8%A8%AD%E5%AE%9A%E6%89%8B%E9%A0%86">OSPF設定手順</a></h2> <p>1.OSPFの有効化</p> <pre><code>Router(config)#router ospf ”プロセス番号” </code></pre> <p>2.ルータID設定(デフォルトの番号から管理しやすい番号に変更)</p> <pre><code>Router(config-router)#router-id ”ルータID” </code></pre> <p>3.OSPFを有効化するインターフェース、エリアの指定</p> <pre><code>Router(config-router)network ”ネットワークアドレス” ”ワイルドカードマスク” area ”エリア番号” </code></pre> <p>(もしルータIDを設定する前にpingを通していて、新たにルータIDを設定する場合、以下のコマンドが必要となる)</p> <pre><code>Router#clear up ospf process </code></pre> <h2 id="確認コマンド"><a href="#%E7%A2%BA%E8%AA%8D%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89">確認コマンド</a></h2> <p>OSPFを設定したら以下のコマンドで確認をしながら進めた方が良い。また、これにはOSPFだけではく、他の設定でも必要な確認コマンドも合わせて示す。</p> <p>・ネイバーテーブルの確認</p> <pre><code>Router#show ip ospf neighbor </code></pre> <p>・OSPFに関する情報の確認</p> <pre><code>Router#show ip ospf </code></pre> <p>・ルーティングプロトコルに関する情報の確認</p> <pre><code>Router#show ip protocols </code></pre> <p>・現在稼働している設定の確認</p> <pre><code>Router#show running-config </code></pre> <p>・ルーティングテーブルの確認</p> <pre><code>Router#show ip route </code></pre> <p>以上、OSPFは重要なダイナミックルーティングなのでしっかり覚えていきましょう。</p> rahfj tag:crieit.net,2005:PublicArticle/16408 2020-12-22T17:39:17+09:00 2020-12-22T17:39:17+09:00 https://crieit.net/posts/RIP-5fe1b0b5b7ca1 RIPとは <h1 id="RIPとは"><a href="#RIP%E3%81%A8%E3%81%AF">RIPとは</a></h1> <p>RIP(Routing Information Protocol)とは、ダイナミックルーティングで使用されるプロトコルであり、IGP(Interior Gateway Protocol)の一つである。</p> <p>方式:ディスタンスベクタ<br /> メトリック:ホップ数(最大15)<br /> また、RIPにはRIPv1とRIPv2がある。</p> <h2 id="RIPv1について"><a href="#RIPv1%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6">RIPv1について</a></h2> <p>RIPv1の特徴として以下がある。</p> <p>ルーティング:<strong>クラスフル</strong><br /> VLSM(Variable Length Subnet Mask:可変長サブネットマスク)のサポート:なし<br /> 経路集約:自動集約のみ<br /> 不連続サブネットへの対応:不可</p> <p><strong>RIPv1の設定方法</strong><br /> まずRIPの有効化を行う。</p> <pre><code>Router(config)#router rip </code></pre> <p>その後、直接つながっているネットワークを指定する。</p> <pre><code>Router(config-router)#network ”ネットワークアドレス” </code></pre> <p>以上。</p> <h2 id="RIPv2について"><a href="#RIPv2%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6">RIPv2について</a></h2> <p>RIPv2の特徴として以下がある。</p> <p>ルーティング:<strong>クラスレス</strong><br /> VLSM(Variable Length Subnet Mask:可変長サブネットマスク)のサポート:あり<br /> 経路集約:自動集約の無効化が可能<br /> 不連続サブネットへの対応:可能</p> <p><strong>RIPv2の設定方法</strong><br /> RIPv1の設定に加えて、まずRIPv2の有効化を行う。</p> <pre><code>Router(config-router)#version 2 </code></pre> <p>続いて経路自動集約の無効化を行う。</p> <pre><code>Router(config-router)#no auto-summary </code></pre> <p>以上。</p> <p>RIPv1とRIPv2の違いについてしっかりおさえていきましょう。</p> rahfj tag:crieit.net,2005:PublicArticle/16385 2020-12-18T17:01:48+09:00 2020-12-18T17:01:48+09:00 https://crieit.net/posts/TCP-IP-5fdc61ec35e69 TCP/IPとは <h1 id="TCP/IPとは"><a href="#TCP%2FIP%E3%81%A8%E3%81%AF">TCP/IPとは</a></h1> <p>TCP/IP(Transmission Control Protocol / Internet Protocol)は、現在インタネット上で標準的に使用されている通信プロトコルの集まり。<br /> 様々あるプロトコルの中でも、中心的になっているのがTCPとIPなので、代表してTCP/IPと呼んでいる。</p> <h2 id="OSI参照モデルとは"><a href="#OSI%E5%8F%82%E7%85%A7%E3%83%A2%E3%83%87%E3%83%AB%E3%81%A8%E3%81%AF">OSI参照モデルとは</a></h2> <p>OSI参照モデルとは、ISO(国際標準化機構)によって定められた通信プロトコルを7つの階層に分けたもの。</p> <p>第7層 アプリケーション層<br /> 第6層 プレゼンテーション層<br /> 第5層 セッション層<br /> 第4層 トランスポート層<br /> 第3章 ネットワーク層<br /> 第2層 データリンク層<br /> 第1層 物理層</p> <p>元々OSIプロトコル群のために作成されたものであるが、実装向きではなく、その後実装向きのTCP/IPモデルがあらわれたため、使われなくなってしまった。<br /> しかし、モデル自体は良く出来ているため、現在でも参照モデルとして残っている。</p> <h2 id="TCP/IPモデル"><a href="#TCP%2FIP%E3%83%A2%E3%83%87%E3%83%AB">TCP/IPモデル</a></h2> <p>TCP/IPモデルとは、普段私たちが使用しているプロトコル群を4つの階層に分けたモデル。</p> <p>上から<br /> アプリケーション層<br /> トランスポート層<br /> インターネット層<br /> ネットワークインターフェイス層</p> <p>ちなみにこのトランスポート層より下をまとめてネットワークレイヤーと呼ぶみたいです。<br /> 覚えておくといいかもしれませんね。</p> rahfj tag:crieit.net,2005:PublicArticle/16306 2020-12-07T18:35:58+09:00 2020-12-07T18:35:58+09:00 https://crieit.net/posts/Markdown-5fcdf77e6b9b8 Markdown 練習2 <h1 id="CentOS7にWebサーバをインストールしよう"><a href="#CentOS7%E3%81%ABWeb%E3%82%B5%E3%83%BC%E3%83%90%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%97%E3%82%88%E3%81%86">CentOS7にWebサーバをインストールしよう</a></h1> <p>CentOS7に<strong>Web サーバ (Apache)</strong> をインストールし、テストWEB ページを公開してみよう</p> <h2 id="インストール手順"><a href="#%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86">インストール手順</a></h2> <ol> <li>Apache(web サーバソフト)をインストールする</li> </ol> <pre><code>$ sudo yum -y install httpd </code></pre> <ol start="2"> <li>Apache(web サーバソフト) を起動する</li> </ol> <pre><code>$ sudo systemctl start httpd </code></pre> <ol start="3"> <li>Apache(web サーバソフト) の起動状態を確認する</li> </ol> <pre><code>$ sudo systemctl status httpd </code></pre> <p> <em>出力結果に<strong>Active: active (running)</strong> が表示されていれば、正常に起動しています</em></p> rahfj tag:crieit.net,2005:PublicArticle/16305 2020-12-07T18:11:47+09:00 2020-12-07T18:11:47+09:00 https://crieit.net/posts/Markdown-5fcdf1d3686f7 Markdown 練習1 <h1 id="アウトプットしよう"><a href="#%E3%82%A2%E3%82%A6%E3%83%88%E3%83%97%E3%83%83%E3%83%88%E3%81%97%E3%82%88%E3%81%86">アウトプットしよう</a></h1> <h2 id="アウトプットには「早すぎる」はない"><a href="#%E3%82%A2%E3%82%A6%E3%83%88%E3%83%97%E3%83%83%E3%83%88%E3%81%AB%E3%81%AF%E3%80%8C%E6%97%A9%E3%81%99%E3%81%8E%E3%82%8B%E3%80%8D%E3%81%AF%E3%81%AA%E3%81%84">アウトプットには「早すぎる」はない</a></h2> <p>「勉強始めたばかりで、アウトプットなんてできない」、「他人に教えられる知識なんかない」と思っているそこのあなた、<strong>それは違います!</strong></p> <p>初心者でも、<strong>学習した内容</strong>や<strong>経験した事</strong>を情報発信することには、以下の大きな意義があります。</p> <hr /> <ul> <li><strong>記憶の定着</strong>を促し、<strong>知識の棚卸</strong>になる</li> <li>情報発信することで、<strong>同じ興味を持つ人と繋がる</strong>きっかけが生まれる</li> <li>目に見える形で<strong>反応が得られる</strong>ので、モチベーションが高まる</li> </ul> <h2 id="アウトプット方法は色々ある"><a href="#%E3%82%A2%E3%82%A6%E3%83%88%E3%83%97%E3%83%83%E3%83%88%E6%96%B9%E6%B3%95%E3%81%AF%E8%89%B2%E3%80%85%E3%81%82%E3%82%8B">アウトプット方法は色々ある</a></h2> <ol> <li><strong>勉強会</strong>を開催する</li> <li><strong>技術同人誌</strong>を書く</li> <li>技術カンファレンスに参加して<strong>レポート記事</strong>を書く</li> <li><strong>技術ブログ</strong>を書く</li> </ol> rahfj