EC2(Amazon Linux 2)
I am a beginner who is currently building an environment on AWS. Creating EC2 for the application. I have installed various packages, but I will write about the fact that nodejs npm could not be installed and I had a hard time.
@naoki_mochizuki's https://qiita.com/naoki_mochizuki/items/814e0979217b1a25aa3e I was building the environment with reference to the article.
__| __|_ )
_| ( / Amazon Linux 2 AMI
___|\___|___|
https://aws.amazon.com/amazon-linux-2/
[shimo0108@~]$ sudo yum install \
> git make gcc-c++ patch \
> openssl-devel \
> libyaml-devel libffi-devel libicu-devel \
> libxml2 libxslt libxml2-devel libxslt-devel \
> zlib-devel readline-devel \
> ImageMagick ImageMagick-devel \
> epel-release
Loaded plugin:extras_suggestions, langpacks, priorities, update-motd amzn2core | 3.7 kB 00:00:00
Package 1:make-3.82-24.amzn2.x86_64 is installed or latest version
Package libxml2-2.9.1-6.amzn2.4.1.x86_64 is installed or latest version
Package epel-release is not available.
.
.
.
Has completed!
epel-release is available in Amazon Linux Extra topic "epel"
To use, run
# sudo amazon-linux-extras install epel
Learn more at
https://aws.amazon.com/amazon-linux-2/faqs/#Amazon_Linux_Extras
Log in to EC2 for the WEB application. I have installed the package. You can confirm that the installation was successful except for epel-release. For some reason, epel-release couldn't be installed here.
The EPEL repository is a repository that allows you to install packages that are not provided by the standard CentOS repositories with the yum command.
EPEL is an enterprise repository, making it one of the most reliable third-party repositories.
Third-party repositories other than EPEL include Remi and RPMForge. As a feature, it seems that Remi is said to have the latest version of the package available, and RPMForge is said to have a large number of packages available.
In reality, each repository will be utilized in consideration of usage and package dependencies. You can use packages that aren't provided by standard repositories, but it's at your own risk, given the description of CentOS's third-party repositories.
[shimo0108@ ~]$ sudo yum install nodejs npm --enablerepo=epel
Loaded plugin:extras_suggestions, langpacks, priorities, update-motd
Error getting repository data for epel, repository not found
After that, I executed the above command, but I could not install it. .. But in the error log statement
To use, run
# sudo amazon-linux-extras install epel
Discovered. I wonder if I should install this. I thought.
[shimo0108@ ~]$ sudo amazon-linux-extras install epel
Installing epel-release
Cleaning the repository: amzn2-core amzn2extra-docker amzn2extra-epel
Deleted 12 metadata files
Deleted 4 sqlite files
Deleted 0 metadata files
Loaded plugin:extras_suggestions, langpacks, priorities, update-motd
.
.
.
Resolving dependencies
-->Performing transaction confirmation.
--->Package epel-release.noarch 0:7-Install 11
-->Dependency resolution finished.
Resolved the dependency
=======================================================================================================
Package architecture version repository capacity
=======================================================================================================
During installation:
epel-release noarch 7-11 amzn2extra-epel 15 k
Transaction summary
=======================================================================================================
Installation 1 package
Total download capacity: 15 k
Installation capacity: 24 k
Is this ok [y/d/N]: y
Downloading packages:
epel-release-7-11.noarch.rpm | 15 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
During installation: epel-release-7-11.noarch 1/1
During verification: epel-release-7-11.noarch 1/1
Installation:
epel-release.noarch 0:7-11
Has completed!
0 ansible2 available \
[ =2.4.2 =2.4.6 =2.8 =stable ]
2 httpd_modules available [ =1.0 =stable ]
3 memcached1.5 available \
[ =1.5.1 =1.5.16 =1.5.17 ]
5 postgresql9.6 available \
[ =9.6.6 =9.6.8 =stable ]
6 postgresql10 available [ =10 =stable ]
8 redis4.0 available \
[ =4.0.5 =4.0.10 =stable ]
9 R3.4 available [ =3.4.3 =stable ]
10 rust1 available \
[ =1.22.1 =1.26.0 =1.26.1 =1.27.2 =1.31.0 =1.38.0
=stable ]
11 vim available [ =8.0 =stable ]
13 ruby2.4 available \
[ =2.4.2 =2.4.4 =2.4.7 =stable ]
15 php7.2 available \
[ =7.2.0 =7.2.4 =7.2.5 =7.2.8 =7.2.11 =7.2.13 =7.2.14
=7.2.16 =7.2.17 =7.2.19 =7.2.21 =7.2.22 =7.2.23
=7.2.24 =7.2.26 =stable ]
17 lamp-mariadb10.2-php7.2 available \
[ =10.2.10_7.2.0 =10.2.10_7.2.4 =10.2.10_7.2.5
=10.2.10_7.2.8 =10.2.10_7.2.11 =10.2.10_7.2.13
=10.2.10_7.2.14 =10.2.10_7.2.16 =10.2.10_7.2.17
=10.2.10_7.2.19 =10.2.10_7.2.22 =10.2.10_7.2.23
=10.2.10_7.2.24 =stable ]
18 libreoffice available \
[ =5.0.6.2_15 =5.3.6.1 =stable ]
19 gimp available [ =2.8.22 ]
20 docker=latest enabled \
[ =17.12.1 =18.03.1 =18.06.1 =18.09.9 =stable ]
21 mate-desktop1.x available \
[ =1.19.0 =1.20.0 =stable ]
22 GraphicsMagick1.3 available \
[ =1.3.29 =1.3.32 =1.3.34 =stable ]
23 tomcat8.5 available \
[ =8.5.31 =8.5.32 =8.5.38 =8.5.40 =8.5.42 =8.5.50
=stable ]
24 epel=latest enabled [ =7.11 =stable ]
25 testing available [ =1.0 =stable ]
26 ecs available [ =stable ]
27 corretto8 available \
[ =1.8.0_192 =1.8.0_202 =1.8.0_212 =1.8.0_222 =1.8.0_232
=1.8.0_242 =stable ]
28 firecracker available [ =0.11 =stable ]
29 golang1.11 available \
[ =1.11.3 =1.11.11 =1.11.13 =stable ]
30 squid4 available [ =4 =stable ]
31 php7.3 available \
[ =7.3.2 =7.3.3 =7.3.4 =7.3.6 =7.3.8 =7.3.9 =7.3.10
=7.3.11 =7.3.13 =stable ]
32 lustre2.10 available \
[ =2.10.5 =2.10.8 =stable ]
33 java-openjdk11 available [ =11 =stable ]
34 lynis available [ =stable ]
35 kernel-ng available [ =stable ]
36 BCC available [ =0.x =stable ]
37 mono available [ =5.x =stable ]
38 nginx1 available [ =stable ]
39 ruby2.6 available [ =2.6 =stable ]
40 mock available [ =stable ]
41 postgresql11 available [ =11 =stable ]
42 php7.4 available [ =stable ]
43 livepatch available [ =stable ]
44 python3.8 available [ =stable ]
45 haproxy2 available [ =stable ]
Alright! did it! This is the installation! I thought
[shimo0108 ~]$ sudo yum install nodejs npm --enablerepo=epel
Loaded plugin:extras_suggestions, langpacks, priorities, update-motd
amzn2-core | 3.7 kB 00:00:00
amzn2extra-docker | 3.0 kB 00:00:00
amzn2extra-epel | 1.7 kB 00:00:00
One of the configured repositories failed (unknown),
and yum doesn't have enough cached data to continue. At this point the only
safe thing yum can do is fail. There are a few ways to work "fix" this:
1. Contact the upstream for the repository and get them to fix the problem.
2. Reconfigure the baseurl/etc. for the repository, to point to a working
upstream. This is most often useful if you are using a newer
distribution release than is supported by the repository (and the
packages for the previous distribution release still work).
3. Run the command with the repository temporarily disabled
yum --disablerepo=<repoid> ...
4. Disable the repository permanently, so yum won't use it by default. Yum
will then just ignore the repository until you permanently enable it
again or use --enablerepo for temporary usage:
yum-config-manager --disable <repoid>
or
subscription-manager repos --disable=<repoid>
5. Configure the failing repository to be skipped, if it is unavailable.
Note that yum will try to contact the repo. when it runs most commands,
so will have to try and fail each time (and thus. yum will be be much
slower). If it is a very temporary problem though, this is often a nice
compromise:
yum-config-manager --save --setopt=<repoid>.skip_if_unavailable=true
Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again
And again an error. All commands I do with yum stop. .. (Crying)
[shimo0108@ ~]$ sudo yum install nodejs npm --enablerepo=epel
Loaded plugin:extras_suggestions, langpacks, priorities, update-motd
amzn2-core
| 3.7 kB 00:00:00
amzn2extra-docker
| 3.0 kB 00:00:00
amzn2extra-epel
| 1.7 kB 00:00:00
.
.
It will always stop after reading up to this point. Fight for about a day and get an error log
Cannot retrieve metalink for repository: epel/x86_64. Please verify its path and try again
Discovered. Unable to get the repository metalink. Is to say. Result of investigation Error handling when putting EPEL repository in CentOS 6.x https://qiita.com/maruware/items/eb659266a45021cf486c I found the article. Apparently, the cause is that the EPEL repository uses SSL3.0, and it seems that it can be solved by executing the following as described in the article and changing from https to http.
[shimo0108@ ~]$ sudo vi /etc/yum.repos.d/epel.repo
Check /epel.repo here with vim.
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=https://download.fedoraproject.org/pub/epel/7/$basearch
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
Certainly
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
#It is https. .. ..
↓
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
metalink=http://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
# https//→http//Changed to.
again sudo yum install nodejs npm --enablerepo=epel Execute. This time it was successful! !! !!