Linux友人帐之软件安装

本文介绍了Linux系统中的yum包管理器、RPM安装、wget下载工具、systemctl服务管理,以及如何使用yum和tar进行软件包安装与Tomcat、MySQL的配置,包括防火墙设置和安全实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

yum命令

Linux yum命令是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。它可以从指定的服务器自动下载并安装 RPM 包,并且可以自动处理依赖性关系。yum 命令有很多选项和子命令,可以用来查找、安装、更新、删除或升级软件包。以下是一些常用的 yum 命令的介绍:

  • yum list:列出所有可安装或可更新的软件包,可以加上软件包名或通配符来限制输出。
  • yum install <package_name>:安装指定的软件包,如果有依赖关系,会自动安装相关的软件包。
  • yum update <package_name>:更新指定的软件包,如果没有指定软件包名,则更新所有可更新的软件包。
  • yum remove <package_name>:删除指定的软件包,如果有依赖关系,会自动删除相关的软件包。
  • yum search <keyword>:搜索含有关键字的软件包,可以用来查找想要安装的软件包的名称。
  • yum info <package_name>:显示指定软件包的详细信息,包括版本、描述、大小、依赖等。
  • yum provides <file_path>:显示提供指定文件或命令的软件包,可以用来查找某个文件或命令属于哪个软件包。

yum命令需要root权限哦,可以u切换到root或使用sudo提权。
yum命令需要联网

wget程序

wget 程序是一个在 Linux 和 Windows 等平台上使用的免费软件,它可以通过 HTTP、HTTPS、FTP 和 FTPS 等协议从互联网上下载文件。它是一个非交互式的命令行工具,所以可以方便地在脚本、定时任务或没有图形界面的终端中使用。wget 程序有很多功能和特点,例如:

  • 支持断点续传和镜像整个网站或 FTP 站点
  • 支持代理服务器和 HTTP cookies
  • 支持本地文件的时间戳和服务器文件的时间戳比较,只下载更新的文件
  • 支持限制下载速率和下载配额
  • 支持文件名通配符和递归下载目录
  • 支持国际化资源标识符 (IRI) 和不同的字符编码

systemctl命令


 

 Linux systemctl 命令是一个用于管理 systemd 系统和服务的工具。systemd 是一种现代的 init 系统,它可以控制系统的启动、运行和关机。systemctl 命令有很多选项和子命令,可以用来执行各种操作,例如:

  • 启动、停止、重启、重载或检查系统服务的状态,例如 systemctl start httpd.service 或 systemctl status bluetooth.service
  • 查看或设置系统的运行级别(target unit),例如 systemctl get-default 或 systemctl set-default graphical.target
  • 查看或设置系统的时间、时区、主机名、语言等参数,例如 timedatectl set-timezone Asia/Shanghai 或 hostnamectl set-hostname rhel7
  • 查看系统的启动耗时或每个服务的启动耗时,例如 systemd-analyze 或 systemd-analyze blame
  • 查看或管理当前登录的用户或会话,例如 loginctl list-users 或 loginctl kill-user root

二、rpm安装

jdk安装

首先检查linux服务器上是否存在jdk环境

java -version

存在的话,会显示jdk版本

这样子,需要先卸载jdk,如果需要知道rpm安装过程的可以跟一下,并且如果环境是openjdk的版本,就需要卸载原来的jdk,并安装sun公司的jdk。

  1. 检查一下jdk版本信息
    rpm -qa|grep jdk

  2. 删除jdk,删除的是上面查询到的jdk
    rpm -e --nodeps jdk1.8.0_121-1.8.0_121-fcs.x86_64

    删除成功后,再次通过java -version 命令查询,此时环境中没有jdk的版本信息了

  3. 卸载完毕后,通过rpm -ivh  命令安装
    rpm -ivh 这里是那个jdk的rpm安装包
  4. 安装完毕,接下来就是配置环境变量

    # 安装完成后配置环境变量 文件:/etc/profile
    JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
    CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/lib
    PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
    export PATH CLASSPATH JAVA_HOME
    # 保存退出
    
    # 让新增的环境变量生效!
    source /etc/profile
    
    # 测试 java -version
    [root@yanyu java]# java -version
    java version "1.8.0_221"
    Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
    Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

 三、解压缩安装tar

Tomcat安装

  1. 官网:http://tomcat.apache.org/,选择下载版本(tomcat 8.0版本为例讲述其过程),下载64-bit Windows zip(Win64)
  2. 将文件移动到/usr/tomcat/下,并解压!
    [root@yanyu yanyu]# mv apache-tomcat-9.0.22.tar.gz /usr
    [root@yanyu yanyu]# cd /usr
    [root@yanyu usr]# ls
    apache-tomcat-9.0.22.tar.gz
    [root@yanyu usr]# tar -zxvf apache-tomcat-9.0.22.tar.gz   # 解压
  3. 运行Tomcat,进入bin目录,和我们以前在Windows下看的都是一样的

    # 执行:startup.sh -->启动tomcat
    # 执行:shutdown.sh -->关闭tomcat
    ./startup.sh
    ./shutdown.sh
  4. 确保Linux的防火墙端口是开启的,如果是阿里云,需要保证阿里云的安全组策略是开放的!

    # 查看firewall服务状态
    systemctl status firewalld
    
    # 开启、重启、关闭、firewalld.service服务
    # 开启
    service firewalld start
    # 重启
    service firewalld restart
    # 关闭
    service firewalld stop
    
    # 查看防火墙规则
    firewall-cmd --list-all    # 查看全部信息
    firewall-cmd --list-ports  # 只看端口信息
    
    # 开启端口
    开端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent
    重启防火墙:systemctl restart firewalld.service
    
    命令含义:
    --zone #作用域
    --add-port=80/tcp  #添加端口,格式为:端口/通讯协议
    --permanent   #永久生效,没有此参数重启后失效

 四、yum安装

mysql安装

首先检查linux服务器上是否存在mysql环境

mysql -version

如果系统已安装有其他版本的mysql,需提前卸载清空环境。


rpm -e mysql  // 普通删除模式
rpm -e --nodeps mysql  // 强力删除模式,
rm -rf /etc/my.cnf
rm -rf /var/lib/mysql/

下载rpm文件

wget https://repo.mysql.com//mysql80-community-release-el7-7.noarch.rpm

 配置yum仓库

 sudo rpm -Uvh mysql80-community-release-el7-7.noarch.rpm

 检查yum仓库状态

[root@jeven ~]# yum repolist all |grep enable
base/7/x86_64                                CentOS-7 - Base - m enabled: 10,072
extras/7/x86_64                              CentOS-7 - Extras - enabled:    518
mysql-connectors-community/x86_64            MySQL Connectors Co enabled:    227
mysql-tools-community/x86_64                 MySQL Tools Communi enabled:    100
mysql80-community/x86_64                     MySQL 8.0 Community enabled:    424
updates/7/x86_64                             CentOS-7 - Updates  enabled:  5,061

检查mysql版本

[root@jeven ~]# yum repolist enabled | grep mysql
mysql-connectors-community/x86_64 MySQL Connectors Community                 227
mysql-tools-community/x86_64      MySQL Tools Community                      100
mysql80-community/x86_64          MySQL 8.0 Community Server                 424

 安装mysql

yum install mysql-community-server -y

启动mysql服务

 systemctl enable --now mysqld

检查mysql服务状态

[root@jeven ~]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Sun 2023-07-23 19:37:31 CST; 35s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 117898 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 117971 (mysqld)
   Status: "Server is operational"
    Tasks: 38
   Memory: 472.2M
   CGroup: /system.slice/mysqld.service
           └─117971 /usr/sbin/mysqld

Jul 23 19:37:21 jeven systemd[1]: Starting MySQL Server...
Jul 23 19:37:31 jeven systemd[1]: Started MySQL Server.

mysql的初始配置

获取登录密码

[root@jeven ~]# grep 'temporary password' /var/log/mysqld.log
2023-07-23T11:37:25.670116Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Sw#rsuaMh4(I

 本地登录mysql

mysql -uroot -p

修改本地用户密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '1111111';

运行远程登录

在其他mysql客户端远程登录mysql

[root@server ~]# mysql -h 192.168.3.166 -uadmin -padmin
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 8.0.34 MySQL Community Server - GPL

Copyright (c) 2000, 2018, 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>

注:在默认密码的长度最小值为 4 ,由 大/小写字母各一个 + 阿拉伯数字一个 + 特殊字符一个, 只要设置密码的长度小于 3 ,都将自动设值为 4 ,  关于 mysql 密码策略相关参数; 1)、validate_password_length 固定密码的总长度;

2)、validate_password_dictionary_file 指定密码验证的文件路径;

3)、validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数; 4)、validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数;
5)、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;

关于 validate_password_policy 的取值:

  • 0/LOW:只验证长度;
  • 1/MEDIUM:验证长度、数字、大小写、特殊字符;
  • 2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;

6)、validate_password_special_char_count 整个密码中至少要包含特殊字符的个数/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

烟雨平生9527

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值