LinuCの試験について

こんにちは。22年度入社の中島です。

この間、Linux資格のLinuCを受験しました。
今回私が受けたのは、LinuCレベル1(101試験)になります。
この試験は、101試験と102試験があり、認定されるためには2試験を(片方を合格していたら5年以内に)合格する必要があります。

今回は、LinucCレベル1 101試験を受けた感想や試験の内容を簡単に書いていこうと思います。

Linux技術者認定「LinuC(リナック)」とは
クラウドやDX時代のITエンジニアに求められるシステム構築から運用管理に必要なスキルを証明できる技術者認定です。

・受験動機
この試験を受ける理由は、仕事に対する自信につなげられるようにするためと、これからの業務の役に立つと思い受験しました。

・予約と受験方法、前日までの準備について
今回はオンラインでの受験だったので、テストセンターでいかなくてよかったのですが、
試験を受けるにあたっての、本人確認書類の用意、受験スペース準備や規則などが大変でした。

・試験対策と試験概要
対策として、テキストでの学習や過去問を解くなどをしていました。一日に学習する範囲を決めてやったり、章まとめの問題集を何回も解きなおしていました。

LinuCレベル1(101試験)は試験時間は85分で出題数は60問でした。
以下は試験囲です。

第1章: Linuxのインストールと仮想マシン・コンテナの利用
第2章: ファイル・ディレクトリの操作と管理
第3章: GNUとUnixのコマンド
第4章: リポジトリとパッケージ管理
第5章: ハードウェア、ディスク、パーティション、ファイルシステム

・勉強してみた感想
Linuxのことを何もわからない状態からのスタートだったので、なんとなく理解するのにも時間がかかりました。
特にコマンドとそのオプションを覚えきれず、とても苦労しました。

・結果と感想
結果は残念ながら不合格でした。
1~5章の全範囲まんべんなく出ていたので、全体的に復習が必要だと思いました。
受験した感想といたしましては、どのような形で問題が出されるのかわからず、緊張して問題とくペース配分がうまくいかず、時間が掛かりました。
それによって見直しを行う時間がありませんでした。
また、第3章、第4章のコマンドを忘れていたり、コマンドは合っているのにオプションを間違えてるなどのミスが目立ちました。

今回の試験で自分の努力不足をとても感じました。次回受験する際には過去問やりこみ、解くスピードを上げて見直しをする時間を作りたいと思います。模擬試験で正解8割を安定して出せるようになってから再度、受験したいと思います。

現在は、ping-tというサイトを使って過去問を解いています。
このサイトは、試験範囲・問題数・出題形式まで自由に決めることができて便利です。
間違ってもわかりやすい解説があるので、おすすめです。(アカウント登録が必要です。)

https://mondai.ping-t.com/users/sign_in

いかがでしたでしょうか。

久しぶりのブログでしたが、よいネタを見つけたら投稿していきたと思います。

最後までご覧いただきありがとうございました!

ApacheHTTPServerでHTTP/2を動かすためにphp-fpmを導入した結果

こんにちは。22年度入社の中島です。

先日作業していた案件で、ローカル環境構築をした後、
VMとサーバー接続しようとした時の出来事

mpmファイルの設定が「prefork」だとHTTP/2が機能せず
mpmファイルの設定を「event」または「worker」にすると、Apacheが機能しないという状況になりました。


上記のエラーを解決するためにphp-fpmを導入し、mpmの設定を「event」または「worker」にしたところApacheが正常に起動しました。

php-fpmをインストール


/etc/httpd/conf.modules.d/00-mpm.confの設定を変更
今回は、workerを有効にしています。


/etc/httpd/conf/httpd.conf に設定を追加しました。
拡張子phpのファイルをApacheで処理する場合に、php-fpmを使うようにする設定として以下の内容を追加します。

Apacheの再起動し、ステータスを確認します。

Apacheが起動したら、phpファイルが正しく処理されることを確認します。
DocumentRootの直下にphpinfo.phpを公開フォルダに作成します。
中身は以下のようになってます。

これをブラウザで表示します。

正しく動作することを確認できました!

いかがでしたでしょうか。

HTTP/2を動かすためには、preforkでなくeventもしくはworkerで設定し、モジュール版phpでなくphp-fpmなどで動かす必要があるということがわかりました。

今後も業務で起こった出来後をブログにしていきたいと思います。

今回はここまで
最後までご覧いただきありがとうございました!

Linux学習についてのまとめ 01

こんにちは。22年度入社の中島です。

最近はLinuxの資格であるLinuCを受験するために、Linuxの学習をしています。
今回は復習も兼ねて学習したもの、実際に使ったものの一部を紹介したいと思います。

 

shutdownコマンド
私が最初に覚えたコマンドで、システムを安全に停止するコマンドです。

12:00に時間指定でシャットダウンする場合

[crayon-6573cb838269d089370103  ]shutdown -h 12:00[/crayon]

すぐに再起動する場合

[crayon-6573cb83826a4003509846  ]shutdown -r now[/crayon]

私がこのコマンドを使うときは、オプションの-rをよく使います。

書式 shutdown [オプション] 時間 [メッセージ]

オプション
-h  シャットダウンする
-r  シャットダウン後に再起動

 

cpコマンド
ファイルやディレクトリをコピーするコマンド。
業務では、WinSCPなどで追加したVMの共有フォルダからファイルをコピーするとき以下のようなコマンドでファイル情報を保持するオプションをつけ実施しました。

[crayon-6573cb83826a9554780321  ]cp -rp vagrant/html/* /var/www/html[/crayon]

書式 cp [オプション] コピー元ファイル名 コピー先ファイル名
   cp [オプション] コピー元ファイル名 コピー先ディレクトリ

オプション
-f  コピー先に同名のファイルがあれば上書きする
-i  コピー先に同名のファイルがあれば上書きするかどうか確認する
-p  コピー元ファイルの属性(所有者、所有グループ、アクセス権、タイムスタンプ)を
   保持したままコピーする

 

chownコマンド
ファイルに設定されている所有者を変更するコマンド。
業務ではApacheを起動する際、所有者が違ったのでオプションの-Rを使って対象ディレクトリの全ファイルの所有者を変更しました。

[crayon-6573cb83826ae037187130  ]chown -R root vagrant[/crayon]

書式 chown [オプション] ユーザー [:グループ] ファイル名やディレクトリ名

オプション
-R  指定したディレクトリとその中にある全ファイルの所有者を変更する

 

lsコマンド
ディレクトリを指定した場合は、そのディレクトリ内のファイルを表示します。ファイル名を指定した場合は、そのファイルの属性を表示します。何も指定しない場合は、カレントディレクトリ内のファイルを表示します。ドットファイルも参照したかったため、以下のようなコマンドを実行して確認しました。

[/crayon]

書式 ls [オプション] (ファイル名あるいはディレクトリ名]

オプション
-l  カレントディレクトリにあるファイルの詳細設定を表示
-A ドットファイルも含めて表示。ただし./ および ../ をのぞく
-a  ドットファイルも含めて表示。

 

grepコマンド
ファイルやテキストの中に、 正規表現によって表される検索文字列があるかどうかを調べます。引数にファイルを指定した場合、そのファイルの中で検索パターンにマッチした文字列が含まれる行をすべて表示します。


オプションの-nをつけることで、自分の探している文字が何行目にあるかを確認することができます。

書式 grep [オプション] 検索パターン [ファイル名]

オプション
-n  検索結果とあわせて、行番号も表示する

 

いかがでしたでしょうか。

LinuCは、試験レベルが3つありレベル1の試験は、「101試験」と「102試験」の2試験に合格するとレベル1合格になります。Linuxの復習しながら、ブログの続きとしてを出していけたらと思います。

今回はここまで
最後までご覧いただきありがとうございました!

 

新入社員ブログ 中島06『chatGPTでカレンダーアプリを作ってみた』 

こんにちは。22年度入社の中島です。

今回は、最近流行りのChatGPTを使ってプログラムをやってみました。
それを簡単にまとめましたので、紹介したいと思います。

ChatGPTとは?
ChatGPTは、高度なAI技術によって、人間のように自然な会話ができ、無料で利用できるAIチャットサービスです。2022年11月に公開されてから、多種多様な質問に対する返答が面白いとSNSなどでバズっています。

実際に使ってみた
プログラムについてもできると聞いたので、簡単なプログラムが作れるのか実際に使ってみました。
仕様としては
・『ブラウザ上で見られるスプリクトで、
 カレンダーの日にちをタッチすると赤色になるプログラムを作ってください』
と入力しました。

出てきたプログラムがこちらです

<!DOCTYPE html> <html> <head> <meta charset=”UTF-8″> <title>Calendar</title> <style> /* カレンダーのセルをスタイル付け */ td { padding: 10px; border: 1px solid black; text-align: center; cursor: pointer; } /* 赤い背景色を追加 */ .selected { background-color: red; } </style> </head> <body> <table> <thead> <tr> <th colspan=”7″>March 2023</th> </tr> <tr> <th>Sun</th> <th>Mon</th> <th>Tue</th> <th>Wed</th> <th>Thu</th> <th>Fri</th> <th>Sat</th> </tr> </thead> <tbody> <tr> <td></td> <td></td> <td></td> <td></td> <td>1</td> <td>2</td> <td>3</td> </tr> <tr> <td>4</td> <td>5</td> <td>6</td> <td>7</td> <td>8</td> <td>9</td> <td>10</td> </tr> <tr> <td>11</td> <td>12</td> <td>13</td> <td>14</td> <td>15</td> <td>16</td> <td>17</td> </tr> <tr> <td>18</td> <td>19</td> <td>20</td> <td>21</td> <td>22</td> <td>23</td> <td>24</td> </tr> <tr> <td>25</td> <td>26</td> <td>27</td> <td>28</td> <td>29</td> <td>30</td> <td>31</td> </tr> </tbody> </table> <script> // カレンダーのすべての日付セルを取得 const dateCells = document.querySelectorAll(‘tbody td’); // カレンダーの各日付セルにクリックイベントを追加 dateCells.forEach(cell => { cell.addEventListener(‘click’, () => { // クリックされたセルに ‘selected’ クラスを追加 cell.classList.add(‘selected’); }); }); </script> </body> </html>

それをブラウザで開くとこんな感じです。

日付をクリックしたら赤くなるカレンダー


入力通りのものができました。
ですが、これでは赤色にしてしまうと元の戻らないので、仕様を追加します。

・上記のプログラムに以下の仕様を追加してください
 『日付がクリックされるたびに 赤→青 青→白 白→赤に切り替わる』

出てきたプログラムがこちらです

<!DOCTYPE html> <html> <head> <meta charset=”UTF-8″> <title>Calendar</title> <style> /* カレンダーのセルをスタイル付け */ td { padding: 10px; border: 1px solid black; text-align: center; cursor: pointer; } /* 赤い背景色を追加 */ .red { background-color: red; } /* 青い背景色を追加 */ .blue { background-color: blue; } </style> </head> <body> <table> <thead> <tr> <th colspan=”7″>March 2023</th> </tr> <tr> <th>Sun</th> <th>Mon</th> <th>Tue</th> <th>Wed</th> <th>Thu</th> <th>Fri</th> <th>Sat</th> </tr> </thead> <tbody> <tr> <td></td> <td></td> <td></td> <td></td> <td>1</td> <td>2</td> <td>3</td> </tr> <tr> <td>4</td> <td>5</td> <td>6</td> <td>7</td> <td>8</td> <td>9</td> <td>10</td> </tr> <tr> <td>11</td> <td>12</td> <td>13</td> <td>14</td> <td>15</td> <td>16</td> <td>17</td> </tr> <tr> <td>18</td> <td>19</td> <td>20</td> <td>21</td> <td>22</td> <td>23</td> <td>24</td> </tr> <tr> <td>25</td> <td>26</td> <td>27</td> <td>28</td> <td>29</td> <td>30</td> <td>31</td> </tr> </tbody> </table> <script> // カレンダーのすべての日付セルを取得 const dateCells = document.querySelectorAll(‘tbody td’); // カレンダーの各日付セルにクリックイベントを追加 dateCells.forEach(cell => { cell.addEventListener(‘click’, () => { if (cell.classList.contains(‘red’)) { cell.classList.remove(‘red’); cell.classList.add(‘blue’); } else if (cell.classList.contains(‘blue’)) { cell.classList.remove(‘blue’); } else { cell.classList.add(‘red’); } }); }); </

それをブラウザで開くとこんな感じです。

日付をクリック色が切り替わるカレンダー

今度こそ思い通りのものができました。
このように仕様を途中から追加しても、ちゃんと入れてくれます。
このプログラムを基盤に書き換えながら別のプログラムを作れます。

まとめ
いかがでしたか?
今回は、話題となっているChatGPTを使ってみました。
私は、ここ最近わからないことがある時にChatGPTを使って聞いていますが、会社で使う際は、直接仕事の具体的な情報を入力しないように心がけます(これは先輩からもよくよく言われています)。仕事と関係なく、サンプル的なアプリを作る時は、非常に便利なのでChatGPTを使いながらプログラムを学んでいきたいと思います。

今回はここまで
最後までご覧いただきありがとうございました!

新入社員ブログ 中島05『Windowsのショートカットキー』

こんにちは。22年度入社の中島です。

作業を行っている時、ショートカットを使わず
マウスを使って作業することが多かったので
少しでも作業効率を上げるために、ショートカットキーを調べていました。
今回はWindowsのショートカットキーを紹介したいと思います。

・Ctrl+T(タブを開く)
開いているブラウザで新しいタブが開きます。

・Ctrl+W(アクティブなタブを閉じる)
使用しているタブを消します。連打注意

もし、作業中に必要なタブを消してしまった時いちいち検索し直したり、
履歴に行くなんて面倒ですよね?そんな時は

・Ctrl+Shift+T(閉じたブラウザの復元)
閉じた順番に閉じたタブが復元します。
こちらも連打注意

・Windows+V(クリップボード)
画面右下にクリップボードが開きます。
今回ブログを書くきっかけになったショートカットキーです。
個人的に一番役に立つと思います。

・PrtSc(画面をスクリーンショット)
画面全体をスクリーンショットします。
ですが、デュアルモニターなどを使っていると二画面一緒に撮れてしまいます。
そんな時はPrtSc+Altを使って、必要な画面をスクリーンショットしましょう。

・Windows+Shift+S(選択範囲をスクリーンショット)
範囲を選択してスクリーンショットします。Ctrl+Vでそのまま貼り付けも出来ますし、
クリップボード内にも保存されるので、そこからも操作できます。

・Windows+1~0(タスクバーのアプリの起動 )
タスクバーのアプリの起動します。(起動している場合はアプリが開く)

上の画像の場合、Windows+1でエクスプローラーが起動し、
Windows+5でchromeが開くといったものです。

いかがでしたか?
今回紹介したものはごく一部です。ショートカットに興味が湧いてきたのなら下のブログを見てみるまたは、一度ご自身で調べることをオススメします。
いい発見になると思います!

よく使うウィンドウズのショートカット (xchange.jp)

今回はここまで
最後までご覧いただきありがとうございました!

新入社員ブログ 中島04 『PHPテキスト学習1』

こんにちは!そして明けましておめでとうございます。

22年度入社の中島です。

新年が明けたと思ったらもう一ヶ月が終わりました…
とても早い気がします。

『一月往ぬる二月逃げる三月去る』という言葉があるように、ぼーっとしていたらあっという間に四月になるかもしれませんね。

このままだとまずいと思い、今年の1月から技術力向上のためPHPのテキストで学習に取り組んでいます。

今回はその復習も兼ねて、簡単にブログにまとめていきます。

学習に使用したPHPのテキストはこのテキストです。

そして、学習した内容を大まかにまとめると

・PHPの基本
変数、定義、データ型、配列など

・演算子
代入演算子、比較演算子、論理演算子、ビット演算子など

・制御構文
if命令、switch命令、while/do命令、for命令、foreach命令など

・組み込み関数
文字列関数(mb_strlen関数、mb_substr関数、str_replace 関数)
配列関数(count 関数、array_merge 関数、implode関数)
正規表現(PCRE)関数(preg_match 関数、preg_replace関数、preg_split 関数)
ファイルシステム関数(fopen/fclose関数、fwrite関数、fgetcsv関数)

など現在進行形で学習しています。
そして表紙に書いてあるように
『手を動かしながら学ぶ』と書いてあるので、実際にプログラムを打って実行して動きを確認しながら学習しています。

[/crayon]

『テキストを読む』→『プログラムを打ち込む』→『プログラムを実行する』
この流れで学習を行い、理解できない部分は上司に聞いたりGoogleで調べながらより理解を深めていきます。
先ほどもお話ししたように現在進行形で学習中です。テキストのページも半分ほどでまだまだこれからなので、一生懸命取り組んでいきます。

今回はここまで
最後までご覧いただきありがとうございました!

新入社員ブログ 中島03 『フォローアップ研修』

こんにちは。22年度入社の中島です。

2022年12月21日
私はフォローアップ研修として、文章力向上研修を受講しました。
今回は研修での学習したことを感想を踏まえて、三つにまとめました。

1、文章力向上研修で学んだこと
2、今回の研修を受けて業務で生かしたいこと
3、感想

1、文章力向上研修で学んだこと
-文章を書く上で重要なことは「何の目的で」「誰に」「何を」「どう伝えるのか」である
-伝えたいことを項目化、グループ化し核を決める
-文章を短く、簡潔にする
-段落、文末などを意識し文章をまとめる
-主語、述語を記載する、明確に分かりやすく
-PREP法を使用する(P:結論、R:理由、E:事例、P:結論)

2、今回の研修を受けて業務で生かしたいこと
今回の文章力向上研修では上記のように様々なことを学びました。その中で特に私が業務で生かしたいと思ったことは、PREP法を使ってビジネス文書を記載することです。PREP法を使用すると、自分で一から文章を考えて作成するより相手に明確に伝えたいことを伝えられるからです。
また、読み手に確実に伝えるべきことを伝えることが重要だと学びました。普段の業務では、先輩や上司に何かを伝える際に冗長な文章になってしまいがちです。今後は目的をしっかり決めて短い文章で伝えるようにします。

3、感想
今回の文章力向上研修を受けて、今までの私は文章を書く際に結論から書くことは意識していましたが、短い文章で書く、文末は一緒ではない方が良い、など細かいところは意識したことがありませんでした。今後の業務では今回習ったことを生かせるように、まずはPREP法で伝える、ということから始めようと思います。

今回はここまで
最後までご覧いただきありがとうございました!

新入社員ブログ 中島02 『町の文化祭でボランティア』

こんにちは。22年度入社の中島です。

2022年11月某日
私は、地元のイベントである町の文化祭のボランティアスタッフとして、参加しました。

舞台裏の写真です

この文化祭は中学校の吹奏楽部の演奏を始め、日本舞踊、ダンスクラブ、など子供からお年寄りの方たちまで日頃の練習の成果を発表する場です。

このボランティアには5.6年前から参加しており、今回は3年ぶりの開催で出演者スタッフ共々張り切って見えました。

私は舞台裏のスタッフとして大道具の出し入れや設置、出演者の誘導などを行いました。

今回の文化祭は、コロナ影響で参加団体が少なく練習期間も非常に短いにも関わらず、どの団体も一生懸命パフォーマンスをしていました。

その中でもとても上手だったのが、中学生の吹奏楽部でした。天空の城ラピュタの『君をのせて』だったのですが、
楽器の音は前に向かって音が出る、つまりお客さんの方に向かって音が飛ぶのですが
ステージ横の舞台袖にいても鳥肌が立つくらい上手でした。

個人的に辛かったのは、打ち合わせした後に、本番5分前舞台の設置作業中に配置の変更を言われることです。

その日はスタッフも少なく正直『勘弁してくれ』と思いましたが、プログラムの進行を遅らせるわけにはいかないので、スムーズにするために他のスタッフとの連携して遅れなしで解決しました。
この変則的に動く部分は、プロジェクトを管理する業務と似ていると思います。

このようなアドリブが結構あったのでいい刺激になり、楽しめました。
普段では出来ない経験ができますし、何より裏側から見る楽しさがあります。

毎年5月と10月に文化祭よりも大きい野外でのイベントもあるので、そちらについても
いつか書いていきたいです。

今回はここまで
最後までご覧いただきありがとうございました!

新入社員ブログ 中島01

はじめまして。

 22年度に入社しました福岡支店の中島(なかしま)です。4月に入社してもう6カ月経ちました。入社してから、研修や慣れない業務もありとても目まぐるしい毎日を送っております。

 今までブログを書いたことがないので、見にくい部分もあるかもしれませんがよろしくお願いします。
私はプログラム系の専門学校にいましたが、プログラミングはあまり得意ではなく企画書作成や設計書の作成を進んでやっていました。なので新人研修は復習でもありとても助かりました。

 4月からの2カ月間外部での研修がありました。研修の流れとしては、他の新人の方々同様IT未経験者でもわかるようITの入門部分から学びました。そこから、チームでアプリケーションを作成するための言語を座学で学びそれを実践、最後にはチームを組んで一つのプログラムを作成しました。

実際に作ったアプリケーションは『ユーザーにとって使いやすいデザインの図書管理システム』というものを作成しました。見やすいUIにしたりページ遷移を少なくして、ユーザーに対するストレスを減らして、使いやすいシステムを目指しました。
ですが、延滞一覧や資料予約機能など一部機能の実装が難しく、作業が難航しました。

 研修での内容やスケジュールは他の新人の方とほぼ同じですが、唯一違うのは研修期間中は完全オンラインで研修を受けたことです。
オンラインだったので外部研修のある場所までいかなくていいメリットはありましたが、二か月間環境が変わらず気分転換が難しく辛かったこと、チームメンバーと意思疎通がうまくできず作業効率が下がったしまったりとオンラインでのデメリットもありました。

 6月からは福岡支店の方針により『習うより慣れよ』ということで、社内研修ではなく実際の案件業務を行っています。

今回はここまでです。次回何を書くか決まっていませんが
新人研修で習ったことの復習や業務や研修で学んだこと、趣味の話なども書いていけたらと思います。

最後までご覧いただきありがとうございました!