Linux软件安装

Linux软件安装

rpm包管理器

概述

  • rpm是RH系列Linux系统的包管理器(Red-Hat Package Manager),也是RH系列安装的软件包后缀名

  • 当下这套标准已经扩大成为了行业标准,不仅仅局限于RH系列Linux系统。

  • rpm操作指的是使用rpm命令进行软件的查看、安装、卸载

  • rpm弊端:需要自己提前下载rpm包,手动安装;需要解决rpm包之间的依赖。

查看:

#查询
[root@node1 ~]# rpm -qa  | grep ssh   # q代表query a 代表all
libssh2-1.8.0-3.el7.x86_64
openssh-clients-7.4p1-21.el7.x86_64
openssh-7.4p1-21.el7.x86_64
openssh-server-7.4p1-21.el7.x86_64

[root@node1 ~]# rpm -qi openssh-clients-7.4p1-21.el7.x86_64  # q-》query i —》info
Name        : openssh-clients
Version     : 7.4p1
Release     : 21.el7
Architecture: x86_64
Install Date: Mon 17 May 2021 11:37:29 AM CST
Group       : Applications/Internet
Size        : 2643176
License     : BSD
Signature   : RSA/SHA256, Fri 23 Aug 2019 05:37:26 AM CST, Key ID 24c6a8a7f4a80eb5
Source RPM  : openssh-7.4p1-21.el7.src.rpm
Build Date  : Fri 09 Aug 2019 09:40:49 AM CST
Build Host  : x86-01.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
URL         : http://www.openssh.com/portable.html
Summary     : An open source SSH client applications
Description :
OpenSSH is a free version of SSH (Secure SHell), a program for logging
into and executing commands on a remote machine. This package includes
the clients necessary to make encrypted connections to SSH servers.

安装、卸载

#rpm安装软件
rpm -ivh rpm 包的全路径

#rpm卸载软件  注意 通常采用忽略依赖的方式进行卸载
rpm -e --nodeps 软件包名称

#因为在卸载的时候 默认会将软件连同其依赖一起卸载 
#为了避免影响其他软件的正常使用 通常建议使用--nodeps参数忽略依赖的存在 只卸载程序自己

案例:安装MySQL5.7

定义软件安装路径

/export/server     # 软件安装目录
/export/software   # 安装包的目录
/export/data	   # 软件运行数据保存的目录
/export/logs	   # 软件运行日志

mkdir -p  /export/server 
mkdir -p  /export/software/mysql
mkdir -p  /export/data
mkdir -p  /export/logs

step1:删除Centos7自带的mariadb

[root@node1 ~]# rpm -qa|grep mariadb
mariadb-libs-5.5.64-1.el7.x86_64

[root@node1 ~]# rpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodeps[root@node1 ~]# rpm -qa|grep mariadb                            
[root@node1 ~]# 
  • 这是Centos7自带的mysql数据库

step2:安装MySQL

mkdir /export/software/mysql  # 在这个路径下解压与安装mysql

#上传mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar 到上述文件夹下  解压
tar xvf mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar

#执行安装
yum -y install libaio

[root@node1 mysql]# rpm -ivh mysql-community-common-5.7.29-1.el7.x86_64.rpm mysql-community-libs-5.7.29-1.el7.x86_64.rpm mysql-community-client-5.7.29-1.el7.x86_64.rpm mysql-community-server-5.7.29-1.el7.x86_64.rpm 
warning: mysql-community-common-5.7.29-1.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
1:mysql-community-common-5.7.29-1.e################################# [ 25%]
2:mysql-community-libs-5.7.29-1.el7################################# [ 50%]
3:mysql-community-client-5.7.29-1.e################################# [ 75%]
4:mysql-community-server-5.7.29-1.e################                  ( 49%)

step3:MySQL初始化设置

#初始化
mysqld --initialize

#更改所属组
chown mysql:mysql /var/lib/mysql -R

#启动mysql
systemctl start mysqld.service

#查看生成的临时root密码
cat  /var/log/mysqld.log

[Note] A temporary password is generated for root@localhost: o+TU+KDOm004  # 这就是临时的root密码

step4:修改root密码、授权远程访问

[root@node1 ~]# mysql -u root -p
Enter password:     #这里输入在日志中生成的临时密码
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.29

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 


#更新root密码  设置为hadoop
mysql> alter user user() identified by "hadoop";
Query OK, 0 rows affected (0.00 sec)


#授权
mysql> use mysql;

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'hadoop' WITH GRANT OPTION;


mysql> FLUSH PRIVILEGES;

step5:设置MySQL开机自启动

#mysql的启动和关闭 状态查看 (这几个命令必须记住)
systemctl stop mysqld
systemctl status mysqld
systemctl start mysqld

#建议设置为开机自启动服务
[root@node1 ~]# systemctl enable  mysqld                             
Created symlink from /etc/systemd/system/multi-user.target.wants/mysqld.service to /usr/lib/systemd/system/mysqld.service.

#查看是否已经设置自启动成功
[root@node1 ~]# systemctl list-unit-files | grep mysqldmysqld.service                                enabled 

yum包管理器

概述

  • yum(Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

  • yum之所以强大原因在于有yum源,源里面有很多rpm包包之间的依赖关系

  • yum源可以分为网络yum源和本地yum源。其中网络yum源在centos默认集成了镜像地址,只要联网就可以自动寻找到可用的yum源,前提是系统联网。

  • 企业中也可以自己搭建本地yum源,实现从本地下载安装。

image-20240312215953464

命令

#列出当前机器可用的yum源信息
yum repolist all

#清楚yum源缓存信息
yum clean all

#查找软件
rpm list | grep 软件包名称

#yum安装软件   -y表示自动确认 否则在安装的时候需要手动输入y确认下载安装
yum install -y xx软件名
yum install -y mysql-*

#yum卸载软件
yum -y remove 要卸载的软件包名

案例:JDK安装与环境变量配置

软件安装目录:

/export/server          #软件安装目录
/export/software/JDK    #安装包的目录
/export/data            #软件运行数据保存的目录
/export/logs            #软件运行日志

mkdir -p /export/server
mkdir -p /export/software 
mkdir -p /export/data
mkdir -p /export/logs

命令

#上传安装包到/export/server下
jdk-8u241-linux-x64.tar.gz 

#解压到当前目录
tar zxvf jdk-8u241-linux-x64.tar.gz

#删除红色安装包(可选)
rm -rf jdk-8u241-linux-x64.tar.gz

#配置环境变量
vim /etc/profile            #G + o

export JAVA_HOME=/export/server/jdk1.8.0_241
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

#重新加载环境变量文件 让配置生效
source /etc/profile

[root@node1 ~]# java -version
java version "1.8.0_241"
Java(TM) SE Runtime Environment (build 1.8.0_241-b07)
Java HotSpot(TM) 64-Bit Server VM (build 25.241-b07, mixed mode)

SCP同步与JDK安装配置

#scp安装包
cd /export/server/
scp -r jdk1.8.0_241/ root@node2:$PWD
scp -r jdk1.8.0_241/ root@node3:$PWD

#scp环境变量文件
scp /etc/profile node2:/etc/
scp /etc/profile node3:/etc/

#别忘了 其他机器source哦
source /etc/profile

  • 这个前提是设置了SSH免密登陆,并且在其他的node中建立了目录

扩展

Linux上面的command not found 错误解决方案

# 错误信息
-bash : XXXX :command not found

# 原因
	1、命令写错了
	2、命令或者对应的软件没有安装
# 通用解决方案
	如果是软件没有安装
	yum install -y XXXX
	
	如果没有解决,那么需要查询命令所属哪个软件,进行安装解决
posted @   七落安歌  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示