使用阿里云服务器后的linux学习(环境安装部署)

作者阿里云代理 文章分类 分类:linux图文教程 阅读次数 已被围观 800

环境安装

安装软件一般有三种方式: rpm ( Jdk:在线发布一个springboot项目 )、解压缩( tomcat ) . yum在线安装( docker ) !

rpm安装不需要配置环境变量,解压缩的需要配置环境变量

1、rpm下载地址http://www.oracle.com/technetwork/java/javase/downloads/index.html

2、如果有安装openjdk 则卸载

[root@kuangshen ~]# java -versionjava version "1.8.0_121"Java(TM) SE Runtime Environment (build 1.8.0_121-b13)Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)# 检查[root@kuangshen ~]# rpm -qa|grep jdkjdk1.8.0_121-1.8.0_121-fcs.x86_64# 卸载 -e --nodeps 强制删除[root@kuangshen ~]# rpm -e --nodeps jdk1.8.0_121-1.8.0_121-fcs.x86_64[root@kuangshen ~]# java -version-bash: /usr/bin/java: No such file or directory  # OK

3、安装JDK

# 安装java rpm[root@kuangshen kuangshen]# rpm -ivh jdk-8u221-linux-x64.rpm# 安装完成后配置环境变量 文件:/etc/profileJAVA_HOME=/usr/java/jdk1.8.0_221-amd64CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/libPATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/binexport PATH CLASSPATH JAVA_HOME# 保存退出# 让新增的环境变量生效!source /etc/profile# 测试 java -version[root@kuangshen java]# java -versionjava 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)

Tomcat安装(解压缩安装)

war包就需要放到tomcat中运行

1、安装好了Java环境后我们可以测试下Tomcat!准备好Tomcat的安装包!

2、将文件移动到/usr/tomcat/下,并解压!

[root@kuangshen kuangshen]# mv apache-tomcat-9.0.22.tar.gz /usr[root@kuangshen kuangshen]# cd /usr[root@kuangshen usr]# lsapache-tomcat-9.0.22.tar.gz[root@kuangshen 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   #永久生效,没有此参数重启后失效

image-20210906192441556

上传完毕的项目直接购买自己的域名,备案解析过去即可!1年级都会做!
域名解析后,如果端口是80 - http或者443-https可以直接访问,如果是9000 8080,就需要通过Apcahe或者Nginx做一下反向代理即可,配置文件即可,十分之简单,大家如果想要上线自己的网站,到目前为止,那么你可以如愿以偿了!

安装Docker(yum安装)

基于 CentOS 7 安装
  1. 官网安装参考手册:https://docs.docker.com/install/linux/docker-ce/centos/
  2. 确定你是CentOS7及以上版本

    [root@192 Desktop]# cat /etc/redhat-releaseCentOS Linux release 7.2.1511 (Core)
  3. yum安装gcc相关(需要确保 虚拟机可以上外网 )

    yum -y install gcc ##-y是指所有的提示都为yum -y install gcc-c++
  4. 卸载旧版本

    yum -y remove docker docker-common docker-selinux docker-engine# 官网版本yum remove docker \  docker-client \  docker-client-latest \  docker-common \  docker-latest \  docker-latest-logrotate \  docker-logrotate \  docker-engine
  5. 安装需要的软件包

    yum install -y yum-utils device-mapper-persistent-data lvm2
  6. 设置stable镜像仓库

    # 错误yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo## 报错[Errno 14] curl#35 - TCP connection reset by peer[Errno 12] curl#35 - Timeout# 正确推荐使用国内的yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  7. 更新yum软件包索引

    yum makecache fast
  8. 安装Docker CE

    yum -y install docker-ce docker-ce-cli containerd.io
  9. 启动docker

    systemctl start docker
  10. 测试

    docker versiondocker run hello-worlddocker images

宝塔面板安装

https://www.bilibili.com/video/av91821322

有趣知识点

1.Tomcat Windows和Linux目录一样(我甚至觉得两个是同一个文件,只是压缩方式不同一个zip,一个tar.gz),但是启动文件不同

注意tar.gz采用

tar -zxvf xxx解压

image-20210904111440665

Linux采用.sh来启动,Windows采用.bat启动

2 centos修改网络信息

  1. vim /etc/sysconfig/network-scripts/ifcfg-ens33
  2. 修改里面的IP地址
  3. systemctl restart network

3 怎么让别人连接你电脑上的虚拟机

需要用到VMware的端口转发功能,有点像docker,这样别人连接你电脑IP的8888端口就能够与你虚拟机22端口连接上,这样你再NAT模式下也能够进行远程连接。就不需要采用桥接模式了

image-20211130154005001

4.安装opensshd-server

只有安装了opensshd-server才能进行ssh连接,并且会默认在22号端口监听

ssh使用密码登录,无法重新加载sshd服务解决方法

为了安全起见,FreeBSD默认情况下是不允许root用户进行SSH远程登录的,需要进行以下操作才可以进行Root用户的ssh远程登录。

首先vi编辑/etc/inetd.conf,去掉ssh前的#注释,保存后:wq退出 (开启监听ssh服务)

编辑/etc/rc.conf, 最后加入:sshd_enable=”yes”即可
激活sshd服务:

\#/etc/rc.d/sshd start

关闭linux防火墙 sudo ufw disable

检查服务是否启动,在22端口应该有监听。

\#check port number 22
\#netstat -an # 或
\#netstat -tnlp

最后,编辑ssh配置文件

\#vi /etc/ssh/sshd_config

在/etc/ssh/sshd_config 中修改

PermitRootLogin yes #允许root登录
PermitEmptyPasswords no #不允许空密码登录
PasswordAuthentication yes # 设置是否使用口令验证。

修改完配置文件后,重新启动sshd服务器(/etc/rc.d/sshd restart)即可。

修改完重启时如果/etc/init.d/ssh restart不起作用,
可以使用:ps -e | grep ssh,看sshd的进程号,
然后kill 进程号杀死ssh进程以达到重启的目的,或者直接重启ubuntu系统。

这里面甚至可以修改监听端口号或者拒绝哪些ip地址

image-20211130160426652

【注意】Linux在创建的时候root用户的密码是随机生成的,所以需要重置密码后才能以root用户登陆

sudo passwd rootNew password: Retype new password: passwd: password updated successfully

5 xshell如何用普通用户身份登陆

xshell输入密码是用户名+用户名的密码

修改用户名即可

image-20211130162826268

并且按照上面说的不止可以使用password登陆,你还可以使用公钥登陆,但是你需要选择公钥存放的地址(第一次接收的时候需要记住)

image-20211201092658767

6 linux下不要一直使用root用户

不要一直使用root用户,因为当你下载软件的时候,你使用root用户的话那么该软件的权限就是777了。这样很多时候会出现问题,有一些软件安装你就只能在root权限下安装了,这样就容易导致一些普通用户没办法使用root用户权限下的依赖

7 sudo

image-20211130164909027

输入的密码应该是当前账号的密码

1.使用su

使用su由普通用户切换到root用户,需要输入root用户的密码

2.使用sudo

(37条消息) sudo命令详解_liberty12345678的专栏-CSDN博客_sudo

简单的说,sudo 是一种权限管理机制,管理员可以授权于一些普通用户去执行一些 root 执行的操作,而不需要知道 root 的密码。

严谨些说,sudo 允许一个已授权用户以超级用户或者其它用户的角色运行一个命令。当然,能做什么不能做什么都是通过安全策略来指定的。sudo 支持插件架构的安全策略,并能把输入输出写入日志。第三方可以开发并发布自己的安全策略和输入输出日志插件,并让它们无缝的和 sudo 一起工作。默认的安全策略记录在 /etc/sudoers 文件中。而安全策略可能需要用户通过密码来验证他们自己。也就是在用户执行 sudo 命令时要求用户输入自己账号的密码。如果验证失败,sudo 命令将会退出。
也就是说你的账号能够用sudo说明你的账号是经过root授权的

sudo的基本配置

系统默认创建了一个名为 sudo 的组。只要把用户加入这个组,用户就具有了 sudo 的权限。
至于如何把用户加入 sudo 组,您可以直接编辑 /etc/group 文件,当然您得使用一个有 sudo 权限的用户来干这件事:

先创建用户并设置密码后,然后在sudo组中加入该用户,多个用户用逗号隔开。

sudo -i,加载用户变量,并跳转到目标用户home目录;
sudo -s,不加载用户变量,不跳转目录;

sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟。这就是平时下载或者创建东西,sudo vim a.txt ,只需要输入一次密码就能维持15分钟,但是用户名还是普通用户

su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制。 su root
sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。 要求执行该命令的用户必须在sudoers中才可以

sudo -i 直接运行sudo命令加-i参数 要求执行该命令的用户必须在sudoers中才可以
sudo su 运行sudo命令给su命令提权,运行su命令。 要求执行该命令的用户必须在sudoers中才可以
sudo -i 运行结果 PWD=/root
sudo su 运行结果 PWD=/home/用户名(当前用户主目录)

image-20211130171232452

8查看mac地址

centos:

\1. ifconfig -a 其中 ether字段就是mac地址

\2. cat /sys/class/net/ens33/address 查看eth0的mac地址(可行)

\3. cat /proc/net/arp 查看连接到本机的远端ip的mac地址

\4. 程序中使用SIOCGIFHWADDR的ioctl命令获取mac地址

本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。

我有话说: