Linux中常用软件安装


参考资料:
https://blog.csdn.net/weixin_42414947/article/details/113442380

https://blog.csdn.net/zhanaolu4821/article/details/93622812

0 软件安装命令

  • rpm软件管理器命令(可以用于离线的安装)
  • yum软件安装和删除命令(可以用在线的安装)

rpm命令

rpm 参数 软件包参数说明
作用对Linux中已经安装的软件进行管理,也可以安装软件
-v显示安装的详细过程
-q <软件名>query 查询某个软件是否安装了
-aall 列出所有已经安装的软件 -qa
-h显示安装的百分比
-i <软件名>install 安装指定的rpm软件包
-e <软件名>erase 删除指定的软件包
–nodeps安装过程中不检查软件的依赖
–force安装中强制覆盖

常用命令

# 查看所有安装的软件
rpm	-qa

# 查看gcc-c++这个软件包是否安装
rpm -q gcc-c++

# 安装指定的软件
rpm -ivh 软件名

# 删除指定的软件
rpm -ev 软件名

yum命令

yum(全称为 Yellow dog Updater, Modified)能够从指定的服务器自动下载包并且安装,可以自动处理依赖关系,一次安装所有依赖的软件包。

yum [参数] [命令] <安装包>说明
参数:-y安装过程中所有的提示都回答yes
命令:install在线安装软件
命令:remove删除指定的软件

例如

# 在线安装gcc-c++
yum -y install gcc-c++

1 JDK安装

1 在/下创建soft目录,将JDK复制到Linux的soft目录下

mkdir /soft
cd /soft

2 进入/soft目录,解压jdk到指定目录/usr/local

tar -xvf jdk-8u221-linux-x64.tar.gz -C /usr/local/

3 进入目录/usr/local下,查看是否有名为jdk1.8.0_221的目录

cd /usr/local
ls

4 配置jdk环境变量,打开/etc/profile配置文件,添加下列内容.(export命令用于将shell变量输出为环境变量)

  • Linux下路径之间使用冒号分隔,windows下使用分号分隔
  • 引用变量的方式不同,引用JAVA_HOME
    • windows: %JAVA_HOME%
    • Linux:$JAVA_HOME
  • windows下路径之间分隔符使用\,而Linux下使用/

使用命令vim /etc/profile, 在文件末尾处,将下列内容复制,保存退出.

#set java environment
JAVA_HOME=/usr/local/jdk1.8.0_221
CLASSPATH=.:$JAVA_HOME/lib
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

5 重新加载/etc/profile配置文件

source /etc/profile

6 判断JDK是否安装成功

java -version

image-20210510080205701

7 可以编写一个简单的HelloWorld.java文件,通过javac HelloWorld.java得到字节码文件,通过java HelloWorld得到输出结果.

2 Mysql安装

0 MySQL安装与卸载 (新增于 2021-06-06)

因在新的云服务器环境中,MySQL安装过程中出现多次问题,故新增一个安装删除部分,作为填坑记录.

1 卸载
yum方式
# 查看yum是否安装mysql 如有列表,则为安装
yum list installed mysql*


# 卸载mysql
yum remove mysql-community-client mysql-community-common mysql-community-libs mysql-community-libs-compat mysql-community-server mysql57-community-release

# 删除相关配置
rm -rf /var/lib/mysql  
rm /etc/my.cnf
rpm方式
# 查看是否安装
rpm -qa | grep -i mysql

# 卸载mysql
rpm -e mysql57-community-release-el7-9.noarch
rpm -e mysql-community-server-5.7.17-1.el7.x86_64
rpm -e mysql-community-libs-5.7.17-1.el7.x86_64
rpm -e mysql-community-libs-compat-5.7.17-1.el7.x86_64
rpm -e mysql-community-common-5.7.17-1.el7.x86_64
rpm -e mysql-community-client-5.7.17-1.el7.x86_64
cd /var/lib/  
rm -rf mysql/

# 清除余项
whereis mysql
# 输出的相关文件:    /usr/share/mysql 
# 删除上面的所有文件夹
rm -rf /usr/share/mysql 

# 删除配置
rm –rf /usr/my.cnf
rm -rf /root/.mysql_sercret

# 配置检查
chkconfig --list | grep -i mysql
chkconfig --del mysqld
2 安装
yum安装
# 配置源
wget http://repo.mysql.com/mysql57-community-release-el7-9.noarch.rpm

sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm

# 检查更新yum软件包
yum check-update  

# 更新yum
yum update

# 安装mysql
yum install mysql mysql-server
3 使用
# 启动mysql
systemctl start mysqld

# 登录mysql
mysql -u root

如果没有输入密码,登录报错.则采用下列方法:

  • 1 修改 /etc/my.cnf ,在 [mysqld] 下添加一行: skip-grant-tables=1 让mysqld 启动时不对密码进行验证

  • 2 重启 mysqld 服务:systemctl restart mysqld

  • 3 使用 root 用户登录到 mysql:mysql -u root

  • 4 切换到mysql库,更新user表

use mysql;

-- 在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string
update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
  • 5 退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1 的内容

  • 6 重启 mysqld 服务,再用新密码登录即可

4 mysql开启远程访问权限
-- 给root指定所有的权限,在任何电脑上可以远程登录,注:密码与上面的密码相同
grant all privileges on *.* to 'root'@'%' identified by 'root';
-- 从mysql数据库中的授权表重新载入权限
flush privileges;

上述开放权限时,报错: error no. 1045 access denied for user ‘root’@’*’ (using password:YES)

原因: MySQL出于安全方面考虑默认只允许本机(localhost, 127.0.0.1)来连接访问.

所以采用下面方法解决远程访问:

-- 123456为你给新增权限用户设置的密码,%代表所有主机,也可以具体到你的主机ip地址
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456'  

-- 从mysql数据库中的授权表重新载入权限
flush privileges;

上述添加用户密码,会报错: ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

MySQL密码策略问题异常信息.

解决办法,修改密码策略:

-- 查看初始密码策略
SHOW VARIABLES LIKE 'validate_password%';

-- 设置密码强度为低等,默认是中等  设置 validate_password_policy 的全局参数为 LOW
set global validate_password_policy=LOW;

-- 修改密码长度为6, 默认为8, 设置validate_password_length=6 
set global validate_password_length=6;

-- 现在可以修改密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456'  

密码策略参数说明:

  • 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
    • LOW:只验证长度
    • MEDIUM:验证长度、数字、大小写、特殊字符
    • STRONG:验证长度、数字、大小写、特殊字符、字典文件
  • 6 validate_password_special_char_count 整个密码中至少要包含特殊字符的个数

1 安装部分

1 上传MySQL安装包mysql-community-5.6.45.tar.gz到soft目录下, 并创建mysql目录,将压缩包解压到mysql目录.

mkdir mysql
tar -xvf mysql-community-5.6.45.tar.gz -C mysql

2 进入mysql目录,安装所有的rpm文件,强制安装,不检测依赖

rpm -ivh * --force --nodeps

3 检查安装好的mysql包

rpm -qa |grep mysql

2 使用部分

1 启动mysql的服务

systemctl start mysqld

2 将mysql加到系统服务中并设置开机启动

systemctl enable mysqld

3 登录mysql,root用户默认没有密码

mysql -uroot

4 在mysql中修改自己的密码

set password = password('密码'); 

5 设置远程访问权限、开放端口号

# 在mysql中操作:开启mysql的远程登录权限,默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启,并且刷新权限缓存.

# 给root指定所有的权限,在任何电脑上可以远程登录,注:密码与上面的密码相同
grant all privileges on *.* to 'root'@'%' identified by 'root';
# 从mysql数据库中的授权表重新载入权限
flush privileges;


# 开放Linux的对外访问的端口3306
#开放的端口永久保存到防火墙
firewall-cmd --zone=public --add-port=3306/tcp --permanent

#重启防火墙
systemctl restart firewalld

mysql安装完成后,可使用本地navicat工具连接数据库.

3 Redis安装

安装过程:

  1. 安装编译环境并且编译(已经安装好:gcc-c++)
  2. 解压redis的c语言源代码,使用gcc-c++进行编译和安装
  3. 启动运行,并且设置成后台运行
  4. 如果要在客户端去访问,必须打开防火墙6379端口号
  5. 设置IP地址的bind这台服务器

1 安装部分

0 准备环境

redis是C语言开发,安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境.

# 在线安装 gcc
yum -y install gcc-c++

1 上传redis安装包redis-3.2.11.tar.gz到Linux系统/soft目录下, 进入soft目录,将redis-3.2.11.tar.gz解压到当前目录

cd /soft  
tar -xvf redis-3.2.11.tar.gz

2 进入redis-3.2.11目录,使用make命令编译redis

make 

3 在redis-3.2.11目录中,使用以下命令,将redis安装到/usr/local/redis指定的目录下

make PREFIX=/usr/local/redis install 

安装成功后在/usr/local/redis/bin目录下可以看到文件夹,redis.conf文件还没有,要从刚解压的目录下复制过来

2 使用部分

前端模式启动:

​ 直接运行bin/redis-server以前端模式启动,前端模式启动的缺点是启动完成后,不能再进行其他操作,如果要操作必须使用ctrl+c,同时redis-server程序结束,不推荐使用此方法.

# 前端模式运行
./redis-server

# 停止
使用CTRL+ C 停止前端模式

后端模式启动:

1 将之前解压出来的/soft/redis-3.2.11/redis.conf 配置文件复制到安装好的/usr/local/redis/bin/目录下

2 修改redis.conf配置文件,修改daemonize yes 以后端模式启动

vim redis.conf

3 启动时,指定配置文件

cd /usr/local/redis/bin
 ./redis-server redis.conf

4 查看启动的后台进程

ps -aux | grep redis

3 启动客户端

1 进入redis/bin目录,启动redis-cli

./redis-cli

2 操作Redis,添加一个字符串的键,显示字符串的键,删除字符串的键

4 停止redis

在客户端向Redis发送shutdown命令

  • 在Linux命令行下输入 ./redis-cli shutdown
  • 在Redis客户端里面输入shutdown

5 远程访问Redis

#开放的端口永久保存到防火墙
firewall-cmd --zone=public --add-port=6379/tcp --permanent

#重启防火墙
systemctl restart firewalld

使用windows下的客户端软件连接,发现客户端依然无法连接redis,这是由于redis本身安全机制的限制,默认只允许本机访问.

1 默认redis只允许本机访问,如果想要其它机器访问,需要编辑redis.conf配置内容如下,添加当前Linux局域网的IP地址

bind 127.0.0.1 192.168.248.99

2 关闭redis,再重新启动Redis读取新的配置文件,才会起作用

./redis-cli shutdown
./redis-server redis.conf

3 即可使用Windows的redis客户端访问Linux服务器上Redis服务器

4 Tomcat安装

1 将Tomcat软件包上传到soft文件夹,解压Tomcat到/usr/local下

tar -xvf apache-tomcat-8.5.27.tar.gz  -C /usr/local/

2 开放Linux的对外访问的端口8080

firewall-cmd --zone=public --add-port=8080/tcp --permanent

3 重启防火墙,进入/usr/local/apache-tomcat-8.5.27/bin目录,启动Tomcat

#  重启防火墙
systemctl restart firewalld

# 启动Tomcat
./startup.sh

4 在Windows下访问Linux的8080端口

image-20210510065610004

5 进入bin目录下,关闭服务器。

./shutdown.sh

5 发布项目到Linux

1 先将本地数据库脚本导出,导入到Linux中Mysql数据库.(Linux中表名区分大小写,windows下sql语句不区分大小写的,但Linux中默认是区分大小写的)

2 如果是SSM项目,在项目out目录,将所有文件打包zip,修改扩展名为war,将war文件上传到Linux中tomcat/webapps目录下,启动tomcat即可.

3 如果是SpringBoot项目, 获取项目jar包.上传Linux服务器,可直接java -jar jar包名启动\

可能出现问题:

问题1: mysql软件底层码表使用的不是utf-8导致执行sql语句中文乱码,最终导致无法查询的数据.

解决: 需要设置客户端和服务器端的编码为utf-8.

1 修改mysql的配置文件, 在mysqld条目下增加以下配置,指定服务器的字符集为utf-8

# 打开配置文件
vim /etc/my.cnf

# 修改内容
[mysqld]
character-set-server=utf8

2 增加client客户端的默认字符集的配置,指定为utf-8,将下面的配置放到文件的结尾处.

# 将下列放到配置文件最后面
[client]
default-character-set=utf8

3 文件保存退出后,重启mysql服务

systemctl restart mysqld

6 nginx

Nginx: 一种服务器软件,使用C和C++语言开发,还是一种高性能的HTTP反向代理服务器,同时也是一个代理邮件服务器。

作用:

  • 发布静态网站
  • 实现反向代理
  • 实现负载均衡
  • 邮件服务器

1 安装部分

yum[参数][命令]说明
参数: -y当安装过程提示全选"yes"
命令: install安装指定的包
命令: remove删除指定的包

1 安装C++的编译环境:因为Nginx是C语句开发的.

yum -y install gcc-c++

2 安装Nginx依赖环境

# 正则表达式的库:
yum -y install pcre pcre-devel
# 数据压缩的库:
yum -y install zlib zlib-devel 
# 安全证书的库:
yum -y install openssl openssl-devel

# 依次运行上面三个  或者 运行下面一个
yum -y install pcre pcre-devel zlib zlib-devel openssl openssl-devel

3 上传nginx安装包/soft目录下,解压到/usr/local目录。

tar -xvf nginx-1.15.3.tar.gz -C /usr/local

4 配置,在nginx-1.15.3目录下,执行configure文件

./configure

5 安装,在nginx-1.15.3的解压目录下编译与安装nginx

make && make install

6 安装后目录说明

  • conf 配置文件夹
  • html 项目部署
  • logs 日志记录
  • sbin 可执行文件

7 启动,进入sbin目录启动nginx服务器, 开放防火墙80端口

# 启动nginx
./nginx

# 开放防火墙80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent

# 重启防火墙
systemctl restart firewalld

8 在Windows中直接访问(nginx默认80端口)

image-20210510073938626

2在nginx上部署静态网站

启动与关闭的命令说明
./nginx启动nginx
./nginx -s reload重新加载配置文件
./nginx -s stop关闭服务器1

1 将静态资源上传到服务器/project文件下

2 进入/usr/local/nginx/conf配置目录修改nginx.conf文件(每行以分号结束)

server {
	listen	80;  # 默认端口
	server_name	localhost; # 服务器名称
	location  / {
		root	/project; # 访问指定的目录
        index	index.html index.htm; # 首页页面
	}
	
	...
}

3 进入sbin目录,重新加载nginx的配置文件,通过Windows访问测试

3 nginx反向代理

配置参数说明
upstream 代理名{ server 服务器地址和端口号; }用于配置代理服务器的地址和端口
location / { proxy_pass http://代理名; }指定访问的根目录是代理服务器

1 修改配置文件nginx/conf/nginx.conf,在http的server的上面添加反向代理的定义

# 增加反向代理指向tomcat
upstream project {
   server localhost:8080;
}

2 注释了root html,不再访问html目录下面的文件,增加proxy_pass定义

server {
     listen 80;
     server_name localhost;
 
     location / {
            # root   html;
            index  index.html index.htm;
            # 访问tomcat
            proxy_pass http://project;
         }
 }

3 重启nginx,配置文件变动后需要重启才能生效

./nginx -s reload

4 使用浏览器访问nginx,发现访问的是Tomcat,nginx起到了代理Tomcat的作用.

4 正向代理服务器

正向代理类似一个跳板机,代理局域网内部的机器访问外部互联网的资源.

作用:

  • 访问原来无法访问的资源(如Google)
  • 可以做缓存,加速访问资源
  • 对客户端访问授权,上网进行认证
  • 代理可以记录用户访问记录,对外隐藏用户的信息

特点: 客户机与代理服务器在同一个局域网中.

7 Gitlab私服搭建

GitLab是整个DevOps生命周期的第一个应用程序。其使用与GitHub类似,并且提供了许多DevOps 相关的功能.

Gitlab官网

1 安装过程

1 安装并配置依赖项,同时打开HTTP访问和SSH访问

sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld

2 安装GitLab包

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce

3 初始化GitLab配置

# 初始化GitLab  默认安装在/etc/gitlab下
sudo gitlab-ctl reconfigure
# 启动 gitlab 服务
gitlab-ctl start
# 停止 gitlab 服务
gitlab-ctl stop

4 访问登录

​ 首次访问时,会重定向到重置密码页面,设置初始化登录密码,默认用户名为root。

image-20210512074919157

登录成功后,主页面如下:

image-20210512075522277

默认语言使用的英文,如果想修改为中文的话。操作步骤:右上角头像 -> Settings -> Preferences -> Language -> 简体中文 -> save changes。 然后刷新当前页面即可。

image-20210512075704312

2 使用部分

1 创建组及配置权限

在GitLab首页选择Create a Group,进入创建页面,输入群组名称,群组URL,群组描述,同时还 需选择可见性级别,其相当于设置组权限。

  • 私有:群组及其项目只能由成员查看
  • 内部:任何登录的用户都可以查看该群组和任何内部项目
  • 公开:不进行身份验证,可以随意查看
2 创建用户及用户权限

进入管理中心.点击用户,点击新用户 后,会进入到添加用户页面,需要输入Name、Username、和Email。最后点击 create user即可。

image-20210512080039393

重新进入到成员列表页面,此时已经可以看到新增了一个 member1 用户,点击编辑,设置该用户的登录密码。

image-20210512080230983

3 添加用户进入小组

image-20210512080452613

当进入到组的详情页面中之后,即可将指定用户添加到组中,首先需要先确定当前被操作的用户,接 着需要指定当前用户的身份权限.

  • Guest:可以创建issue、发表评论,不能读写版本库
  • Reporter:可以克隆代码,不能提交,QA、PM可以赋予这个权限
  • Developer:可以克隆代码、开发、提交、push,RD可以赋予这个权限
  • Maintainer:可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心RD负责人可 以赋予这个权限
  • Owner:可以设置项目访问权限 - Visibility Level、删除项目、迁移项目、管理组成员,开发组 leader可以赋予这个权限

image-20210512080647229

4 创建项目,指派小组

当进入到新建项目页面,GitLab提供了三种创建方式:空白项目、从模板创建、导入项目。常使用空白项目 ,对于权限仍然是三个,与组权限相同。

image-20210512081008920

项目创建成功页面如下:

image-20210512081103511

查看项目组详情页面,可以看到该项目组已经关联了一个项目.

image-20210512081139758

5 SSH免密登录(可选)

1 打开gitBash客户端,生成公钥和私钥

ssh-keygen -t rsa

2 在windows本地中,C盘用户本机用户的.ssh隐藏文件夹中

image-20210512081453579

3 把公钥内容拷贝,在gitlab上配置密钥。

image-20210512081617428

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
R软件的介绍 R是一个开放的统计编程环境,是一种语言,R语言是从S语言演变而来的。S语言是二十世纪70年代诞生于贝尔实验室,由Rick Becker, John Chambers, Allan Wilks开发。基于S语言开发的商业软件Splus,可以方便的编写函数、建立模型,具有良好的扩展性,取得了巨大成功。1995年由新西兰Auckland大学统计系的Robert Gentleman和Ross Ihaka,编写了一种能执行S语言的软件,并将该软件的源代码全部公开,这就是R软件,其命令统称为R语言。R是开源软件,代码全部公开,对所有人免费。R可在多种操作系统下运行,如Windows, Li~和UNIX等。R需要输入命令,可以编写函数和脚本进行批处理运算,语法简单灵活。目前在R网站上约有两千多个程序包,涵盖了基础统计学、社会学、经济学、生态学、地理学、医学统计学、生物信息学等诸多方面。 R的获取与安装 R诞生于the University of Auckland的统计系。The Comprehensive R Archive Network简称CRAM,提供下载安装程序和相应软件包。 R主页http://www.r-project.org/a下载:CRAM,选择镜像(如:http://cran.cnr.berkeley.edu/ ),选择操作系统(Linux,Windows或MacOS)。 以下简述R FOR WINDOWS的安装和使用: 在R主页下可以找到R的各个版本的安装程序和源代码。点击进入:Windows (95and later),再点击:base,下载SetupR.exe,约18兆,此便是R FOR WINDOWS的安装程序。双击SetupR.exe,按照提示一步步安装即可。 安装完成后,程序会创建R程序组并在桌面上创建R主程序的快捷方式(也可以在安装过程选择不要创建)。通过快捷方式运行R,便可调出R的主窗口。 类似于许多以编程方式为主要工作方式的软件,R的界面简单而朴素,只有不多的几个菜单和快捷按钮。快捷按钮下面的窗口便是命令输入窗口,它也是部分运算结果的输出窗口,有些运算结果则会输出在新建的窗口。 主窗口上方的一些文字是刚运行R时出现的一些说明和指引。 文字下的:>符号便是R的命令提示符,在其后可输出命令;>后的矩形是光标。R一般是采用交互方式工作的,在命令提示符后输入命令,回车后便会输出结果。 在R朴素的界面下,是丰富而复杂的运算功能。 附加包的安装 install. packages(package name, dependencies=TRUE) Windows下可以用菜单Packages--} Install package(s)安装 版本的更新 主程序:Windows下面只能卸载再安装 程序包:update.packages() RStudio R语言可以独立运行,但是Rstudio作为R附加的GUI,有效的划分功能区,使输入和输出更为方便。 RStudio是可以在Mac OS X, Linux和Windows上运行在R编程语言的生产力和灵活的用户界面。是一个自由和开源编程语言和环境,提供了大量的图形和统计方法统计计算和图形。从可以快速方便地访问各种生产力工具的面向用户的界面。RStudio是一个非常实用的R语言的IDE,是一个免费的软件,特别是其服务器软件,可以将其构建在Linux服务器上,然后通过远程网页登陆访问,使得R语言的使用获得了极大的方便,也可以说是一个小小的云服务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值