そういうのがいいブログ

SIerで働く30代サラリーマンSEがインフラエンジニアに憧れてLinux・クラウド・AWSの勉強をするブログ

CentOS8のPHP7.2インストール手順【コマンド付き丁寧解説】

※[PR]当ブログの記事の中にはプロモーションが含まれています。

CentOS8のPHP7.2インストール手順


CentOS8.0のPHP7.2をインストールする手順を【コマンド付き】で丁寧に解説

CentOSLAMP環境を構築したいけれど、詳しい手順が分からない、と悩んでいませんか?

前回の記事で、CentOS8.0にApache2.4.37をインストールして、バーチャルホストでのテストページ表示までができたので、
CentOS8にWEBアプリケーションサーバの「PHP」(今回はPHP7.2)をインストールして、
テスト用ページが表示できるようにするまでの手順を、コマンド付きで丁寧に紹介します。

あと、後半では、インフラエンジニアになるためにおすすめの勉強法があれば知りたい、と考えているかたへのおススメ勉強法も書きます。

CentOS8にPHPをインストールする手順を解説します。
本記事の手順を真似しながら進めれば、1時間弱くらいで簡単にできます

本記事では、下記の内容を解説します。

  • CentOS8にPHP7.2 をインストールする手順
  • PHPインストール後の設定手順
  • インフラエンジニアになるためのおススメの勉強法の紹介

この記事を書いている私は、某SIerに勤務しながら、WEB系エンジニア・インフラエンジニアに憧れて、
プログラミングおよびインフラ技術の勉強をしています。
私が実機で試したコマンドや画像を載せて書いていますので、記事の信頼性担保に繋がると思います。

前回の記事

souiunogaii.hatenablog.com
souiunogaii.hatenablog.com

インストールする環境の確認

cat /etc/redhat-release
[root@SV-NEPTUNE ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
httpd -V | head -n 1
[root@SV-NEPTUNE ~]# httpd -V | head -n 1
Server version: Apache/2.4.37 (centos)

インストール前のパッケージ確認

dnf serch php
[root@SV-NEPTUNE ~]# dnf serch php
============================ 概要 & 名前 一致: php =============================
php.x86_64 : PHP scripting language for creating dynamic web sites
php-common.x86_64 : Common files for PHP
php-fpm.x86_64 : PHP FastCGI Process Manager
php-dbg.x86_64 : The interactive PHP debugger
php-cli.x86_64 : Command-line interface for PHP
php-pgsql.x86_64 : A PostgreSQL database module for PHP
php-devel.x86_64 : Files needed for building PHP extensions
php-xml.x86_64 : A module for PHP applications which use XML
php-ldap.x86_64 : A module for PHP applications that use LDAP
php-json.x86_64 : JavaScript Object Notation extension for PHP
php-embedded.x86_64 : PHP library for embedding in applications
php-enchant.x86_64 : Enchant spelling extension for PHP applications
php-pear.noarch : PHP Extension and Application Repository framework
php-intl.x86_64 : Internationalization extension for PHP applications
php-odbc.x86_64 : A module for PHP applications that use ODBC databases
php-dba.x86_64 : A database abstraction layer module for PHP applications
php-pdo.x86_64 : A database access abstraction module for PHP applications
php-soap.x86_64 : A module for PHP applications that use the SOAP protocol
php-gmp.x86_64 : A module for PHP applications for using the GNU MP library
php-mysqlnd.x86_64 : A module for PHP applications that use MySQL databases
php-process.x86_64 : Modules for PHP script using system process interfaces
php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
php-recode.x86_64 : A module for PHP applications for using the recode library
php-gd.x86_64 : A module for PHP applications for using the gd graphics library
php-snmp.x86_64 : A module for PHP applications that query SNMP-managed devices
php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
php-mbstring.x86_64 : A module for PHP applications which need multi-byte string
                    : handling
================================ 名前 一致: php ================================
php-opcache.x86_64 : The Zend OPcache
php-pecl-zip.x86_64 : A ZIP archive management extension
php-pecl-apcu.x86_64 : APC User Cache
php-pecl-apcu-devel.x86_64 : APCu developer files (header)

今回インストールするパッケージは8個

それぞれのパッケージ情報の確認

dnf info php php-xml php-xmlrpc php-json php-mbstring php-gdd php-pdo php-mysqlnd
[root@SV-NEPTUNE ~]# dnf info php php-xml php-xmlrpc php-json php-mbstring php-gdd php-pdo php-mysqlnd
利用可能なパッケージ
名前         : php
バージョン   : 7.2.11
リリース     : 1.module_el8.0.0+56+d1ca79aa
アーキテクチ : x86_64
サイズ       : 1.5 M
ソース       : php-7.2.11-1.module_el8.0.0+56+d1ca79aa.src.rpm
Repo         : AppStream
概要         : PHP scripting language for creating dynamic web sites
URL          : http://www.php.net/
ライセンス   : PHP and Zend and BSD and MIT and ASL 1.0
説明         : PHP is an HTML-embedded scripting language. PHP attempts to make
             : it easy for developers to write dynamically generated web pages.
             : PHP also offers built-in database integration for several
             : commercial and non-commercial database management systems, so
             : writing a database-enabled webpage with PHP is fairly simple. The
             : most common use of PHP coding is probably as a replacement for
             : CGI scripts.
             : 
             : The php package contains the module (often referred to as
             : mod_php) which adds support for the PHP language to Apache HTTP
             : Server.

名前         : php-gd
バージョン   : 7.2.11
リリース     : 1.module_el8.0.0+56+d1ca79aa
アーキテクチ : x86_64
サイズ       : 83 k
ソース       : php-7.2.11-1.module_el8.0.0+56+d1ca79aa.src.rpm
Repo         : AppStream
概要         : A module for PHP applications for using the gd graphics library
URL          : http://www.php.net/
ライセンス   : PHP
説明         : The php-gd package contains a dynamic shared object that will add
             : support for using the gd graphics library to PHP.

名前         : php-json
バージョン   : 7.2.11
リリース     : 1.module_el8.0.0+56+d1ca79aa
アーキテクチ : x86_64
サイズ       : 73 k
ソース       : php-7.2.11-1.module_el8.0.0+56+d1ca79aa.src.rpm
Repo         : AppStream
概要         : JavaScript Object Notation extension for PHP
URL          : http://www.php.net/
ライセンス   : PHP
説明         : The php-json package provides an extension that will add
             : support for JavaScript Object Notation (JSON) to PHP.

名前         : php-mbstring
バージョン   : 7.2.11
リリース     : 1.module_el8.0.0+56+d1ca79aa
アーキテクチ : x86_64
サイズ       : 580 k
ソース       : php-7.2.11-1.module_el8.0.0+56+d1ca79aa.src.rpm
Repo         : AppStream
概要         : A module for PHP applications which need multi-byte string
             : handling
URL          : http://www.php.net/
ライセンス   : PHP and LGPLv2 and OpenLDAP
説明         : The php-mbstring package contains a dynamic shared object that
             : will add support for multi-byte string handling to PHP.

名前         : php-mysqlnd
バージョン   : 7.2.11
リリース     : 1.module_el8.0.0+56+d1ca79aa
アーキテクチ : x86_64
サイズ       : 190 k
ソース       : php-7.2.11-1.module_el8.0.0+56+d1ca79aa.src.rpm
Repo         : AppStream
概要         : A module for PHP applications that use MySQL databases
URL          : http://www.php.net/
ライセンス   : PHP
説明         : The php-mysqlnd package contains a dynamic shared object that
             : will add MySQL database support to PHP. MySQL is an
             : object-relational database management system. PHP is an
             : HTML-embeddable scripting language. If you need MySQL support for
             : PHP applications, you will need to install this package and the
             : php package.
             : 
             : This package use the MySQL Native Driver

名前         : php-pdo
バージョン   : 7.2.11
リリース     : 1.module_el8.0.0+56+d1ca79aa
アーキテクチ : x86_64
サイズ       : 122 k
ソース       : php-7.2.11-1.module_el8.0.0+56+d1ca79aa.src.rpm
Repo         : AppStream
概要         : A database access abstraction module for PHP applications
URL          : http://www.php.net/
ライセンス   : PHP
説明         : The php-pdo package contains a dynamic shared object that will
             : add a database access abstraction layer to PHP.  This module
             : provides a common interface for accessing MySQL, PostgreSQL or
             : other databases.

名前         : php-xml
バージョン   : 7.2.11
リリース     : 1.module_el8.0.0+56+d1ca79aa
アーキテクチ : x86_64
サイズ       : 188 k
ソース       : php-7.2.11-1.module_el8.0.0+56+d1ca79aa.src.rpm
Repo         : AppStream
概要         : A module for PHP applications which use XML
URL          : http://www.php.net/
ライセンス   : PHP
説明         : The php-xml package contains dynamic shared objects which add
             : support to PHP for manipulating XML documents using the DOM tree,
             : and performing XSL transformations on XML documents.

名前         : php-xmlrpc
バージョン   : 7.2.11
リリース     : 1.module_el8.0.0+56+d1ca79aa
アーキテクチ : x86_64
サイズ       : 89 k
ソース       : php-7.2.11-1.module_el8.0.0+56+d1ca79aa.src.rpm
Repo         : AppStream
概要         : A module for PHP applications which use the XML-RPC protocol
URL          : http://www.php.net/
ライセンス   : PHP and BSD
説明         : The php-xmlrpc package contains a dynamic shared object that will
             : add support for the XML-RPC protocol to PHP.

PHPパッケージ8個のインストール

dnf install php php-xml php-xmlrpc php-json php-mbstring phpp-gd php-pdo php-mysqlnd
[root@SV-NEPTUNE ~]# dnf install php php-xml php-xmlrpc php-json php-mbstring phpp-gd php-pdo php-mysqlnd
CentOS-8 - AppStream                            1.9 kB/s | 4.3 kB     00:02    
CentOS-8 - Base                                 1.8 kB/s | 3.9 kB     00:02    
CentOS-8 - Extras                               701  B/s | 1.5 kB     00:02    
依存関係が解決しました。
================================================================================
 パッケージ       アーキテクチャー
                         バージョン                             リポジトリ
                                                                          サイズ
================================================================================
Installing:
 php              x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream 1.5 M
 php-gd           x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream  83 k
 php-json         x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream  73 k
 php-mbstring     x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream 580 k
 php-mysqlnd      x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream 190 k
 php-pdo          x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream 122 k
 php-xml          x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream 188 k
 php-xmlrpc       x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream  89 k
依存関係をインストール中:
 nginx-filesystem noarch 1:1.14.1-9.module_el8.0.0+184+e34fea82 AppStream  24 k
 php-cli          x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream 3.1 M
 php-common       x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream 653 k
弱い依存関係をインストール中:
 php-fpm          x86_64 7.2.11-1.module_el8.0.0+56+d1ca79aa    AppStream 1.6 M
Enabling module streams:
 nginx                   1.14                                                  
 php                     7.2                                                   

トランザクションの概要
================================================================================
インストール  12 パッケージ

ダウンロードサイズの合計: 8.2 M
インストール済みのサイズ: 29 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード中です:
(中略)


インストール済み:
  php-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                                
  php-gd-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                             
  php-json-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                           
  php-mbstring-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                       
  php-mysqlnd-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                        
  php-pdo-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                            
  php-xml-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                            
  php-xmlrpc-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                         
  php-fpm-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                            
  nginx-filesystem-1:1.14.1-9.module_el8.0.0+184+e34fea82.noarch                
  php-cli-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                            
  php-common-7.2.11-1.module_el8.0.0+56+d1ca79aa.x86_64                         

完了しました!

インストール後のパッケージ確認

dnf list installed | grep php
[root@SV-NEPTUNE ~]# dnf list installed | grep php
php.x86_64                                  7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-cli.x86_64                              7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-common.x86_64                           7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-fpm.x86_64                              7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-gd.x86_64                               7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-json.x86_64                             7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-mbstring.x86_64                         7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-mysqlnd.x86_64                          7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-pdo.x86_64                              7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-xml.x86_64                              7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream
php-xmlrpc.x86_64                           7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream

動作確認

php -v
[root@SV-NEPTUNE ~]# php -v
PHP 7.2.11 (cli) (built: Oct  9 2018 15:09:36) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

CGI動作用のパッケージ「php-fpm」の設定

次に、PHPCGIとして動かすために必要なパッケージ「php-fpm」の設定をしていきます。

インストールされている「php-fpm」パッケージの確認

dnf list installded | grep php-fpm
[root@SV-NEPTUNE ~]# dnf list installded | grep php-fpm
php-fpm.x86_64                              7.2.11-1.module_el8.0.0+56+d1ca79aa                    @AppStream

「/etc/php-fpm.d/」配下の設定ファイル「www.conf」の編集

編集前のファイルのバックアップ

cd /etc/php-fpm.d/
cp -p /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.originnal_bk
[root@SV-NEPTUNE ~]# cd /etc/php-fpm.d/
[root@SV-NEPTUNE ~]# cp -p /etc/php-fpm.d/www.conf /etc/php-fpm.d/www.conf.originnal_bk
[root@SV-NEPTUNE php-fpm.d]# ls -l
合計 40
-rw-r--r-- 1 root root 19415  626  2019 www.conf
-rw-r--r-- 1 root root 19415  626  2019 www.conf.original_bk

「www.conf」ファイルの編集

vi /etc/php-fpm.d/www.conf
[root@SV-NEPTUNE php-fpm.d]# vi /etc/php-fpm.d/www.conf

左が編集後、右が編集前

00020  |; Unix user/group of processes                    ||00020  |; Unix user/group of processes                    
00021  |; Note: The user is mandatory. If the group is not||00021  |; Note: The user is mandatory. If the group is not
00022  |;       will be used.                             ||00022  |;       will be used.                             
00023  |; RPM: apache user chosen to provide access to the||00023  |; RPM: apache user chosen to provide access to the
00024 L|user = www                                        ||00024 R|user = apache                                     
00025  |; RPM: Keep a group allowed to write in log dir.  ||00025  |; RPM: Keep a group allowed to write in log dir.  
00026 L|group = www                                       ||00026 R|group = apache                                    
00044  |; Set permissions for unix socket, if one is used.||00044  |; Set permissions for unix socket, if one is used.
00045  |; permissions must be set in order to allow connec||00045  |; permissions must be set in order to allow connec
00046  |; Default Values: user and group are set as the ru||00046  |; Default Values: user and group are set as the ru
00047  |;                 mode is set to 0660             ||00047  |;                 mode is set to 0660             
00048 L|listen.owner = www                                ||00048 R|;listen.owner = nobody                            
00049 L|listen.group = www                                ||00049 R|;listen.group = nobody                            
00050 L|listen.mode = 0666                                ||00050 R|;listen.mode = 0660                               
00106  |; The number of child processes to be created when||00106  |; The number of child processes to be created when
00107  |; maximum number of child processes when pm is set||00107  |; maximum number of child processes when pm is set
00108  |; This value sets the limit on the number of simul||00108  |; This value sets the limit on the number of simul
00109  |; served. Equivalent to the ApacheMaxClients direc||00109  |; served. Equivalent to the ApacheMaxClients direc
00110  |; Equivalent to the PHP_FCGI_CHILDREN environment ||00110  |; Equivalent to the PHP_FCGI_CHILDREN environment 
00111  |; CGI. The below defaults are based on a server wi||00111  |; CGI. The below defaults are based on a server wi
00112  |; forget to tweak pm.* to fit your needs.         ||00112  |; forget to tweak pm.* to fit your needs.         
00113  |; Note: Used when pm is set to 'static', 'dynamic'||00113  |; Note: Used when pm is set to 'static', 'dynamic'
00114  |; Note: This value is mandatory.                  ||00114  |; Note: This value is mandatory.                  
00115 L|;pm.max_children = 50                             ||00115 R|pm.max_children = 50                              
00116 L|pm.max_children = 25                              ||       |
00118  |; The number of child processes created on startup||00117  |; The number of child processes created on startup
00119  |; Note: Used only when pm is set to 'dynamic'     ||00118  |; Note: Used only when pm is set to 'dynamic'     
00120  |; Default Value: min_spare_servers + (max_spare_se||00119  |; Default Value: min_spare_servers + (max_spare_se
00121 L|;pm.start_servers = 5                             ||00120 R|pm.start_servers = 5                              
00122 L|pm.start_servers = 10                             ||       |
00124  |; The desired minimum number of idle server proces||00122  |; The desired minimum number of idle server proces
00125  |; Note: Used only when pm is set to 'dynamic'     ||00123  |; Note: Used only when pm is set to 'dynamic'     
00126  |; Note: Mandatory when pm is set to 'dynamic'     ||00124  |; Note: Mandatory when pm is set to 'dynamic'     
00127 L|;pm.min_spare_servers = 5                         ||00125 R|pm.min_spare_servers = 5                          
00128 L|pm.min_spare_servers = 10                         ||       |
00130  |; The desired maximum number of idle server proces||00127  |; The desired maximum number of idle server proces
00131  |; Note: Used only when pm is set to 'dynamic'     ||00128  |; Note: Used only when pm is set to 'dynamic'     
00132  |; Note: Mandatory when pm is set to 'dynamic'     ||00129  |; Note: Mandatory when pm is set to 'dynamic'     
00133 L|;pm.max_spare_servers = 35                        ||00130 R|pm.max_spare_servers = 35                         
00134 L|pm.max_spare_servers = 20                         ||       |
00141  |; The number of requests each child process should||00137  |; The number of requests each child process should
00142  |; This can be useful to work around memory leaks i||00138  |; This can be useful to work around memory leaks i
00143  |; endless request processing specify '0'. Equivale||00139  |; endless request processing specify '0'. Equivale
00144  |; Default Value: 0                                ||00140  |; Default Value: 0                                
00145  |;pm.max_requests = 500                            ||00141  |;pm.max_requests = 500                            
00146 L|pm.max_requests = 500                             ||       |

php-fpmの起動とステータス確認

起動

systemctl start php-fmpm
[root@SV-NEPTUNE php-fpm.d]# systemctl start php-fmpm

ステータス確認

systemctl status php-fpm
[root@SV-NEPTUNE php-fpm.d]# systemctl status php-fpm
● php-fpm.service - The PHP FastCGI Process Manager
   Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; disabled; vendor pr>
   Active: active (running) since Sun 2020-01-05 02:30:42 JST; 10s ago
 Main PID: 20714 (php-fpm)
   Status: "Processes active: 0, idle: 10, Requests: 0, slow: 0, Traffic: 0req/>
    Tasks: 11 (limit: 11141)
   Memory: 35.1M
   CGroup: /system.slice/php-fpm.service
           tq20714 php-fpm: master process (/etc/php-fpm.conf)
           tq20715 php-fpm: pool www
           tq20716 php-fpm: pool www
           tq20717 php-fpm: pool www
           tq20718 php-fpm: pool www
           tq20719 php-fpm: pool www
           tq20720 php-fpm: pool www
           tq20721 php-fpm: pool www
           tq20722 php-fpm: pool www
           tq20723 php-fpm: pool www
           mq20724 php-fpm: pool www

 1月 05 02:30:41 SV-NEPTUNE systemd[1]: Starting The PHP FastCGI Process Manage>
 1月 05 02:30:42 SV-NEPTUNE php-fpm[20714]: [05-Jan-2020 02:30:42] WARNING: [po>
 1月 05 02:30:42 SV-NEPTUNE php-fpm[20714]: [05-Jan-2020 02:30:42] WARNING: [po>

php-fpmが自動起動されるよう設定

systemctl enable phop-fpm
[root@SV-NEPTUNE php-fpm.d]# systemctl enable php-fpm
Created symlink /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service.
systemctl is-enabled php-fpm
[root@SV-NEPTUNE php-fpm.d]# systemctl is-enabled php-fpm
enabled

2020/06/13追記
php-fpmの再起動時にACLのエラーが出たときの対処手順を以下の記事に書きました。

souiunogaii.hatenablog.com



PHPの基本設定

次はPHPの基本設定をしますが、ここまでで少し長くなったので、続きは別の記事に記載します。

参考にしたサイト

www.rem-system.com

www.sejuku.net

インフラエンジニアになるための勉強のやり方

私は、某SIerに勤務しながら、WEB系エンジニア・インフラエンジニアに憧れて、プログラミングおよびインフラ技術の勉強をしています。

現在の会社で直接担当している業務の中では、決まった技術しか触れないけれど、
「他にも将来役に立ちそうなインフラ技術を勉強したい」「働きながらでもできる効率的なインフラエンジニアの勉強方法を知りたい」と考えている方のために、
①おすすめの書籍と、②おススメのオンライン学習サイト、③おすすめのエンジニアスクールを紹介します。

働きながら勉強するための、おススメの書籍と、オンラインで学習できるサイトの紹介です。

インフラエンジニアの勉強ができるおススメ書籍

朝の通勤時や帰宅時の電車の中や、社外打合せへの**移動中などに勉強するなら、やはり書籍が一番**だと思います。

インフラエンジニアの教科書

LINE社に創業時から在籍しているインフラエンジニア・プロマネの「佐野裕」さんの本です。
twitter.com

膨大なトラフィックをさばくLINE社にて構築・保守を行っている現役エンジニアが記すITインフラの必須知識と経験の数々!
サーバ、OS、ネットワーク機器、データセンター、購買と商談、障害対応、大規模インフラ、成長するために必要なスキルなど、基礎知識から実践まで言及。
ITインフラの世界が理解できる珠玉の1冊!

インフラエンジニアの教科書
(C&R研究所)
佐野裕

1週間でLPICの基礎が学べる本

Linuxの資格「LPIC」の試験対策を初心者向けに書いた入門書です。

Linuxの資格として広く知られているLPICですが、あまり知識の無いまま試験対策を始める人も多いのではないでしょうか。しかし、試験対策書は試験範囲についてのみ解説しているものが多く、初心者が理解するのは困難です。本書は、初心者がスムーズに試験対策を行えるよう、事前に基礎固めを行うLinux入門書です。試験情報や模擬問題も掲載しているので、資格取得を視野に入れた効率的な基礎学習が行えます。

1週間でLPICの基礎が学べる本
第3版 徹底攻略シリーズ
(インプレス)
中島能和

インフラエンジニアの勉強ができるオンライン学習サイト

Udemy (オンライン動画学習サイト)

Udemy(ユーデミー)は、オンラインで動画で学習できるサービスです。
ITエンジニア系の講座もたくさん公開されています。

≫Udemy 世界最大級のオンライン学習サイト

Udemyの特徴

  • ユーザー登録すれば、第1回の講座は無料で視聴できる
  • 無料のコンテンツもある
  • 過去に受講した人の人数や、受講した人の評価も表示されるので選びやすい

≫Udemy 世界最大級のオンライン学習サイト


開発の人気オンラインコース


souiunogaii.hatenablog.com


以上、読んでいただきありがとうございました。