Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“

目录

问题:centos The requested URL returned error: 404 Not Found

问题:MobaXterm连不上

问题:自定义ip后续

问题:虚拟机繁忙

问题:ping: www.baidu.com: Name or service not known

JDK1.8配置

MySQL5.7.24

Docker

问题:Docker镜像下载速度过慢,中途卡住,变更下载源

问题:sudo: yun-config-manager:找不到命令

问题:Bind for 0.0.0.0:3306 failed: port is already allocated.端口占用

Docker安装MySQL5.7.24

修改Docker容器端口

重新开机无法删除Docker容器

结束命令执行,返回输入命令模式

status状态解释

修改my.cnf文件

多台MySQL安装容器

自定义MySQL的my.cnf配置

docker安装MariaDB

部署Tomcat

更改tomcat镜像源(阿里云)

问题:访问tomcat  404

问题:rm: cannot remove 'webapps': Device or resource busy

注意:不需要重启tomcat,只需要将原本的webapps所有文件放到/usr/local/tomcat/webapps这下面就可以了!!!

部署Nginx

部署Redis

问题:自定义配置文件启动 

问题:root用户变成bash-4.2#

linux克隆

部署mariaDB

主从复制

问题:  Slave_IO_Running: No            Slave_SQL_Running: No

问题:1045 (28000): Access denied for user 'root'@'localhost' (using password)

问题:1130 - Host XXX is not allowed to connect to this MySQL server

注意点:主从复制,不能更改从表,一旦变更从表,主从同步就会出现失效!

解决方案:方案一:

方案二:

问题:root密码忘记,重新设置密码

问题:网卡重启失败Restarting network (via systemctl): Job for network.service failed

问题:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)

mycat

问题:Mycat成功启动后,Navicat却无法连接2003 - Can't connect to MySQL ... (10038) 

查看容器的镜像

删除镜像


问题:centos The requested URL returned error: 404 Not Found

 

首先根据百度排查过后,发现linux版本过老造成,我安装的centos6,几年前安好后没有管,突然这几天重新捡起来,发现连不上网,ip也通,百度都可以ping。

唯独yum install 不能操作,看点才发现2020年11月30日停止维护,继而使得什么阿里的镜像网还是什么网易,都不能提供下载。

老版本不行,我就重新下个centos7.

下好后,还是不能联网。

想要进行ifconfig都不行,查询ip

经过百度,修改/etc/sysconfig/network-scripts/ifcfg-ens33配置文件

将ONBOOT权限改为yes

重启网络服务,输入sudo service network restart

解决方案自行百度,ifconfig还是不行,需要下载yum install net-tools

下载后可以使用了,再用这个工具MobaXterm一连,一切都简单起来。

-------------------2020年12月30日更新开始-----------------------------------

问题:MobaXterm连不上

今天又遇到一个奇怪的问题,虚拟机上的linux长时间不操作,断开连接了。

ip地址出现变更,MobaXterm连不上了。需要重新去配置一下永久的ifconfig文件,否则重启就会变更ip。

最奇怪的问题,昨天晚上好好用的ifconfig,今天就不行了!!!

无论是重装还是各种百度,使出浑身解数,脑瓜子嗡嗡的!还是不行。。。

灵机一动,尝试sudo ifconfig命令执行

ok!!!

ip重新查询出来,长舒一口气。

-------------------2020年12月30日更新结束-----------------------------------

-------------------2020年12月31日更新开始-----------------------------------

问题:自定义ip后续

按照百度的方式,直接修改/etc/sysconfig/network-scripts/ifcfg-ens33配置文件

IPADDR=192.168.3.20

无效ip地址

ping也通,ssh也打开了,防火墙也关了。

然后使用MobaXterm工具ssh连接,连接超时

Network error: Connection timed out 

经过排查,发现BOOTPROTO=dhcp,此时ip地址是不固定的,每次重新连接网络后,会有一个新的ip地址。

但是重启虚拟机还是重启网络服务,今天的ip地址依然是固定的,可能超过一定时间不操作,ip地址才会进行变更。

明天再来看看,是否彻底解决。

解决问题方案

当你的配置文件BOOTPROTO还处于dhcp时,通过sudo ifconfig查询此时你的ip地址,然后修改配置文件里的IPADDR,修改为你现在linux的ip地址,大功告成,完美解决!

其他配置可以不用修改,什么DNS、网关、子网掩码都不用,网关如果你在ifcfg-ens33修改了,就不需要在resolv.conf里去配置。

因为那里会受到ifcfg-ens33控制,不信你可以改了后重启网络服务,你会发现原本的nameserver会有变更

重启网卡服务命令

service network restart

-------------------2020年12月31日更新结束-----------------------------------

-------------------2021年02月14日更新开始-----------------------------------

问题:虚拟机繁忙

将安装的os文件路径下的,所有带有lck,这几个文件主要是进程占用,删除后丢失一段时间的操作。

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第1张图片

问题:ping: www.baidu.com: Name or service not known

这个问题莫名其妙,又一次开机玩玩linux,就不行了。百度之类的解决方案没用,反而更多问题了..........

重新安装centos7,这次记录下本次安装相关软件全过程。

随机生成的网络配置,可以借鉴

HWADDR=00:0C:29:43:06:0B
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV4_DNS_PRIORITY=100
IPV6INIT=no
NAME=ens33
UUID=97cc58d0-eb52-4831-90cc-46f2f759c6e4
DEVICE=ens33
ONBOOT=yes
USERS=hikkt

 vi /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=no
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=91ad41e5-0b02-40b5-86d6-30cfc225ec4c
DEVICE=ens33
ONBOOT=yes
# 修改点 - 开始
# 静态IP
IPADDR=192.168.135.20
# 子网掩码
GATEWAY=192.168.136.2
# 主DNS
DNS1=8.8.8.8
# 备DNS
DNS2=8.8.4.4
# 网关
NETMASK=255.255.255.0
# 修改点 - 结束
PREFIX=24
IPV6_PRIVACY=no
HWADDR=00:0C:29:43:06:0B

重启网络服务

  service network restart

ping www.baidu.com -c 3
PING www.wshifen.com (104.193.88.77) 56(84) bytes of data.
64 bytes from 104.193.88.77 (104.193.88.77): icmp_seq=1 ttl=128 time=197 ms

JDK1.8配置

# 创建文件夹

[root@localhost java]# mkdir -p /usr/local/src/jdk

# 检查是否还有老版本jdk
[root@localhost java]# rpm -qa | grep -i jdk

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第2张图片

# 删除老版本jdk

 [root@localhost docker]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64

[root@localhost docker]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64
[root@localhost docker]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
[root@localhost docker]# java -version
-bash: /usr/bin/java: 没有那个文件或目录

# 切换到安装路径

[root@localhost /]# cd /usr/local/src/jdk/

# 解压下载好的jdk1.8
[root@localhost jdk]# tar zxvf "/usr/local/src/jdk/jdk-8u11-linux-x64.tar.gz"

# 修改java环境配置

[root@localhost ~]# vi /etc/profile

export JAVA_HOME=/usr/local/src/jdk/jdk1.8
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

# 重启服务

[root@localhost ~]# source /etc/profile

# 验证jdk安装成功与否
[root@localhost ~]# java -version
java version "1.8.0_11"
Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)

MySQL5.7.24

# 切换到文件路径

[root@localhost ~]# cd /usr/local/src

# 解压下载好的mysql

[root@localhost src]# tar zxvf "/usr/local/src/mysql/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz"

Docker

# 1、yum 包更新到最新
yum update

# 国内 daocloud 一键安装命令

[root@localhost src]# curl -sSL https://get.daocloud.io/docker | sh

# 验证docker

[root@localhost ~]# docker -v
Docker version 20.10.3, build 48d30b5

问题:Docker镜像下载速度过慢,中途卡住,变更下载源

cd /etc/docker

新建一个daemon.json文件

{

    "registry-mirrors":["https://almtd3fa.mirror.aliyuncs.com"]      

}

重启docker

service docker restart

问题:sudo: yun-config-manager:找不到命令

# 2、安装需要的软件包, yum‐util 提供yum‐config‐manager功能,另外两个是devicemapper驱动依赖的
yum install ‐y yum‐utils device‐mapper‐persistent‐data lvm2

# 刷新命令

[root@localhost ~]# sync
[root@localhost ~]# sync

# 设置yum源(阿里云)
[root@localhost ~]#  sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
已加载插件:fastestmirror
adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo

# 启动 Docker

[root@localhost ~]# systemctl start docker

# 搜索mysql镜像
[root@localhost ~]# docker search mysql

# 拉取mysql镜像
[root@localhost ~]# docker pull mysql:5.6

# 删除容器

[root@localhost mysql]# rm -f c_mysql

#    rm          Remove one or more containers 
#   rmi         Remove one or more images

[root@localhost mysql]# docker rm 33946ec6ecff

# 查看所有容器

[root@localhost mysql]# docker ps -a

问题:Bind for 0.0.0.0:3306 failed: port is already allocated.端口占用

# 删除占用的容器

docker container rm c_redis

[root@localhost mysql]# docker run -itd --name c_mysql -p 3306:3307 -v /root/mysql/data:/var/lib/mysql -v /root/mysql/conf:/etc/mysql/conf.d -v /root/mysql/logs:/var/logs/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6
888387a76ce6a1fb4321c3dd9ddc1cbfe4170209f336b9782e3e55d88099b15f
[root@localhost mysql]# docker ps -a
CONTAINER ID   IMAGE       COMMAND                  CREATED         STATUS         PORTS                    NAMES
888387a76ce6   mysql:5.6   "docker-entrypoint.s…"   4 seconds ago   Up 3 seconds   0.0.0.0:3306->3306/tcp   c_mysql
# 参数说明

-p 3307:3306:将容器的 3306 端口映射到宿主机的 3307 端口。
-v your_directo/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的
/etc/mysql/my.cnf。配置目录
-v your_directo/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。日志目录
-v your_directo/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。数据目

-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。

# 进入容器,操作mysql

[root@localhost mysql]# docker exec -itd c_mysql /bin/bash
 最后通过Navicat for mysql 软件连接,测试成功!

后续持续更新

---------------------------2021年2月14日结束----------------------------------------

Docker安装MySQL5.7.24

[root@localhost ~]# systemctl start docker
[root@localhost ~]#  docker search mysql

[root@localhost ~]# docker pull mysql:5.7.24

修改Docker容器端口

[root@localhost mysql]# docker ps -a
[root@localhost mysql]# docker stop  c_mysql
c_mysql

[root@localhost mysql]# vi "/var/lib/docker/containers/888387a76ce6a1fb4321c3dd9ddc1cbfe4170209f336b9782e3e55d88099b15f/hostconfig.json"

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第3张图片

"PortBindings":{"3306/tcp":[{"HostIp":"","HostPort":"3306"}]}  →  "PortBindings":{"3306/tcp":[{"HostIp":"","HostPort":"3307"}]} 

[root@localhost mysql]# service docker restart
Redirecting to /bin/systemctl restart docker.service
[root@localhost mysql]# systemctl start docker

[root@localhost mysql]# docker start c_mysql
c_mysql
[root@localhost mysql]# docker ps -a
CONTAINER ID   IMAGE          COMMAND                  CREATED          STATUS          PORTS                                NAMES
33946ec6ecff   mysql:5.7.24   "docker-entrypoint.s…"   35 minutes ago   Up 53 seconds   33060/tcp, 0.0.0.0:33306->3306/tcp   b_mysql
888387a76ce6   mysql:5.6      "docker-entrypoint.s…"   14 hours ago     Up 8 seconds    0.0.0.0:3307->3306/tcp               c_mysql

正常格式

33060/tcp, 0.0.0.0:33306->3306/tcp

错误格式

0.0.0.0:3307->3306/tcp

结论:修改端口号,并没有起作用,Navicat for mysql无法正常连接。方案:删除容器,重新配置。

重新开机无法删除Docker容器

# 提升权限

[root@localhost mysql]# sudo su

# 删除容器
[root@localhost mysql]# rm -f c_mysql
 

结束命令执行,返回输入命令模式

ctrl+\

status状态解释

CONTAINER ID   IMAGE          COMMAND                  CREATED          STATUS                      PORTS     NAMES
33946ec6ecff   mysql:5.7.24   "docker-entrypoint.s…"   19 minutes ago   Exited (0) 12 minutes ago             b_mysql
888387a76ce6   mysql:5.6      "docker-entrypoint.s…"   13 hours ago     Exited (1) 4 minutes ago              c_mysql
Exited (0)表示为正常退出

# 只需要重新启动容器

[root@localhost mysql]# docker start  c_mysql
[root@localhost mysql]# docker ps -a
CONTAINER ID   IMAGE          COMMAND                  CREATED          STATUS          PORTS                                NAMES
33946ec6ecff   mysql:5.7.24   "docker-entrypoint.s…"   22 minutes ago   Up 18 seconds   33060/tcp, 0.0.0.0:33306->3306/tcp   b_mysql
888387a76ce6   mysql:5.6      "docker-entrypoint.s…"   13 hours ago     Up 4 seconds    3306/tcp                             c_mysql
Up 表示正常启动

修改my.cnf文件

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第4张图片

# 进入容器

[root@localhost ~]# docker exec -it 3de8e50705e9 /bin/bash

root@3de8e50705e9:/# ls
bin  boot  dev  docker-entrypoint-initdb.d  entrypoint.sh  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@3de8e50705e9:/# cd /etc
root@3de8e50705e9:/etc# ls
X11                     c_mysql         dpkg         gshadow    inputrc      ld.so.conf.d   machine-id     opt         perl       rc3.d        rmt        shells                     systemd
adduser.conf            cron.daily      environment  gshadow-   issue        ldap           mke2fs.conf    os-release  profile    rc4.d        securetty  skel                       terminfo
alternatives            debconf.conf    fstab        host.conf  issue.net    libaudit.conf  motd           pam.conf    profile.d  rc5.d        security   ssl                        timezone
apt                     debian_version  gai.conf     hostname   kernel       localtime      mtab           pam.d       rc0.d      rc6.d        selinux    staff-group-for-usr-local  update-motd.d
bash.bashrc             default         group        hosts      ld.so.cache  login.defs     mysql          passwd      rc1.d      rcS.d        shadow     subgid
bindresvport.blacklist  deluser.conf    group-       init.d     ld.so.conf   logrotate.d    nsswitch.conf  passwd-     rc2.d      resolv.conf  shadow-    subuid
root@3de8e50705e9:/etc# cd mysql

# 找到my.cnf文件
root@3de8e50705e9:/etc/mysql# ls
conf.d  my.cnf  my.cnf.fallback  mysql.cnf  mysql.conf.d

# 查看my.cnf文件
root@3de8e50705e9:/etc/mysql# tail my.cnf
# The MySQL  Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

root@3de8e50705e9:/etc/mysql#

将my.cnf文件的内容复制到一个地方,以my.cnf临时存放,最后替换掉容器里的my.cnf。
my.cnf

# The MySQL  Server configuration file.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

# * IMPORTANT: Additional settings that can override those from this file!
#   The files must end with '.cnf', otherwise they'll be ignored.
#
!includedir /etc/mysql/conf.d/
!includedir /etc/mysql/mysql.conf.d/

[mysql]
# 设置 mysql 客户端默认字符集
default-character-set=utf8

[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
symbolic-links=0

# 服务端字符集
character-set-server=utf8
# 开启复制操作 [必须]启用二进制日志
log-bin=mysql-bin 
# master is 1 [必须]服务器唯一ID,默认是1
server-id=1 
innodb_flush_log_at_trx_commit=1 
sync_binlog=1
#默认存储引擎
default-storage-engine = InnoDB 
 #忽略表大小写
lower_case_table_names = 1

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第5张图片

 root@3de8e50705e9:/etc/mysql# exit
exit
[root@localhost ~]# docker cp /root/docker/mysql/my.cnf 3de8e50705e9:/etc/mysql
[root@localhost ~]# docker exec -it 3de8e50705e9 /bin/bash
root@3de8e50705e9:/# cd /etc/mysql
root@3de8e50705e9:/etc/mysql# tail my.cnf
# ▒▒▒▒▒Ʋ▒▒▒ [▒▒▒▒]▒▒▒ö▒▒▒▒▒▒▒־
log-bin=mysql-bin
# master is 1 [▒▒▒▒]▒▒▒▒▒▒ΨһID▒▒Ĭ▒▒▒▒1
server-id=1
innodb_flush_log_at_trx_commit=1
sync_binlog=1
#Ĭ▒ϴ洢▒▒▒▒
default-storage-engine = InnoDB
 #▒▒▒Ա▒▒Сд
lower_case_table_names = 1
root@3de8e50705e9:/etc/mysql#

多台MySQL安装容器

# 在/root目录下创建mysql目录用于存储mysql数据信息

mkdir ~/mysql
cd ~/mysql

mkdir data 

mkdir conf

mkdir logs

[root@localhost mysql]# docker run -itd --name c_mysql -p 3307:3306 -v $PWD/data:/var/lib/c_mysql -v $PWD/conf:/etc/c_mysql/conf.d -v $PWD/logs:/var/logs/c_mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6
c17eb46c3b6fa87e5016eb3755ef4b2c94de17ff0860cc84d4f4ccd8345db11a

[root@localhost mysql]# docker run -it --name b_mysql -p 33306:3306 -v $PWD/data:/var/lib/b_mysql -v $PWD/conf:/etc/b_mysql/conf.d -v $PWD/logs:/var/logs/b_mysql -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7.24

# 显示这个安装成功,按ctrl+\ 继续
Version: '5.7.24'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server (GPL)
# 最后通过Navicat for mysql 软件连接,测试成功!

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第6张图片

自定义MySQL的my.cnf配置

默认my.cnf路径:/etc/my.cnf

 docker run -it --name a_mysql -p 3307:3306 -v $PWD/mysql/data:/var/lib/a_mysql  -v $PWD/mysql/conf:/etc/a_mysql/conf.d -v $PWD/mysql/logs:/var/logs/a_mysql -v $PWD/mysql/conf/my.cnf:/etc/my.cnf -e MYSQL_ROOT_PASSWORD=123456 mysql:5.6

docker安装MariaDB

 

部署Tomcat

# 搜索tomcat镜像

docker search tomcat

更改tomcat镜像源(阿里云)

[root@localhost mysql]# sudo mkdir -p /etc/docker
[root@localhost mysql]# sudo tee /etc/docker/daemon.json <<-'EOF'
> {
>   "registry-mirrors": ["https://tvd9khiq.mirror.aliyuncs.com"]
> }
> EOF
{
  "registry-mirrors": ["https://tvd9khiq.mirror.aliyuncs.com"]
}
[root@localhost mysql]# sudo systemctl daemon-reload
[root@localhost mysql]# sudo systemctl restart docker

# 拉取tomcat镜像

docker pull tomcat
#  创建容器,设置端口映射、目录映射

mkdir ~/tomcat
cd ~/tomcat

docker run -id --name=c_tomcat -p 8080:8080 -v $PWD:/usr/local/tomcat/webapps tomcat
参数说明:
-p 8080:8080:将容器的8080端口映射到主机的8080端口
-v $PWD:/usr/local/tomcat/webapps:将主机中当前目录挂载到容器的webapps

问题:访问tomcat  404

[root@localhost ~]# docker exec -it 9131afda9d4b /bin/bash
root@9131afda9d4b:/usr/local/tomcat# ls -l
total 128
-rw-r--r--. 1 root root 18982 Dec  3 11:48 BUILDING.txt
-rw-r--r--. 1 root root  5409 Dec  3 11:48 CONTRIBUTING.md
-rw-r--r--. 1 root root 57092 Dec  3 11:48 LICENSE
-rw-r--r--. 1 root root  2333 Dec  3 11:48 NOTICE
-rw-r--r--. 1 root root  3257 Dec  3 11:48 README.md
-rw-r--r--. 1 root root  6898 Dec  3 11:48 RELEASE-NOTES
-rw-r--r--. 1 root root 16507 Dec  3 11:48 RUNNING.txt
drwxr-xr-x. 2 root root  4096 Jan 13 08:25 bin
drwxr-xr-x. 1 root root    22 Feb 14 15:56 conf
drwxr-xr-x. 2 root root  4096 Jan 13 08:25 lib
drwxrwxrwx. 1 root root   177 Feb 14 15:56 logs
drwxr-xr-x. 2 root root   134 Jan 13 08:25 native-jni-lib
drwxrwxrwx. 2 root root    30 Jan 13 08:25 temp
dr-xr-x---. 6 root root   187 Feb 14 13:47 webapps
drwxr-xr-x. 7 root root    81 Dec  3 11:45 webapps.dist

drwxrwxrwx. 1 root root    22 Feb 14 15:56 work

rm -rf webapps执行这个命令,报错!!!

问题:rm: cannot remove 'webapps': Device or resource busy

root@9131afda9d4b:/usr/local/tomcat# umount -rf webapps
umount: /usr/local/tomcat/webapps: must be superuser to unmount.
root@9131afda9d4b:/usr/local/tomcat# mv webapps.dist webapps
root@9131afda9d4b:/usr/local/tomcat# exit


注意:不需要重启tomcat,只需要将原本的webapps所有文件放到/usr/local/tomcat/webapps这下面就可以了!!!

webapps.dist里面的文件有ROOT、manager、host-manager、examples、docs文件,将所有文件移出,移到/root/tomcat/ 下面就行了。不能有任何中间文件夹。

原因:tomcat需要直接访问webapps文件夹 ,/usr/local/tomcat 这个就是你设置的-v,/usr/local/tomcat/webapps/ 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第7张图片

看上面这个查询文件,第一次查询是按照百度方案操作,仍然遗留问题!! /usr/local/tomcat/webapps/ 下面还是存在webapps.dist文件,这时想要解决,必须用命令把webapps.dist下面的文件移到/root/tomcat/下面就行了!!!

如果你是初学者,那么跟着我用的软件,这个软件可以直接可视化操作文件。

通过MobaXterm软件将webapps.dist下面的文件复制到本地硬盘,然后删除webapps.dist文件,在复制到/root/tomcat/下面就行了!!!

按照MobaXterm软件!!!

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第8张图片

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第9张图片

部署Nginx

docker search nginx

docker pull nginx

# 在/root目录下创建nginx目录用于存储nginx数据信息
mkdir ~/nginx
cd ~/nginx
mkdir conf
cd conf

# 在~/nginx/conf/下创建nginx.conf文件,粘贴下面内容
vim nginx.conf

user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
	worker_connections 1024;
}
http {
	include /etc/nginx/mime.types;
	default_type application/octet‐stream;
	log_format main '$remote_addr ‐ $remote_user [$time_local] "$request" '
	'$status $body_bytes_sent "$http_referer" '
	'"$http_user_agent" "$http_x_forwarded_for"';
	access_log /var/log/nginx/access.log main;
	sendfile on;
	#tcp_nopush on;
	keepalive_timeout 65;
	#gzip on;
	include /etc/nginx/conf.d/*.conf;
}

[root@localhost ~]# cd nginx

docker run -id --name=c_nginx -p 80:80 -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/conf:/etc/nginx/conf.d -v $PWD/www:/usr/share/nginx/html -v $PWD/logs:/var/log/nginx -d nginx

参数说明:
-p 80:80:将容器的 80端口映射到宿主机的 80 端口。
-v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf:将主机当前目录下的 /conf/nginx.conf 挂载到容
器的 :/etc/nginx/nginx.conf。配置目录
-v $PWD/logs:/var/log/nginx:将主机当前目录下的 logs 目录挂载到容器的/var/log/nginx。日志目录

# 在~/nginx/conf/下创建default.conf文件,粘贴下面内容

server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第10张图片

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第11张图片

部署Redis

docker search redis

docker pull redis:5.0

[root@localhost ~]# mkdir redis
[root@localhost ~]# cd redis

docker run -itd --name=c_redis -p 6379:6379 redis:5.0

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第12张图片

问题:自定义配置文件启动 

# 停止redis容器

[root@localhost redis]# docker container stop c_redis
# 删除redis容器

[root@localhost ~]# docker container rm c_redis
# 安装redis容器

docker run -itd --name c_redis -v $PWD/redis/redis.conf:/etc/redis.conf -v $PWD/redis/data:/data -p 6381:6379 redis:5.0

# 查看配置文件是否成功

[root@localhost ~]# docker exec -it c_redis bash
 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第13张图片

下面就有了redis.conf文件。

[root@localhost ~]# cd redis
[root@localhost redis]# vi redis.conf
 

bind 192.168.135.132
port 6381
# Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程
daemonize no
# 因为redis本身同步数据文件是按上面save条件来同步的,所以有的数据会在一段时间内只存在于内存中。默认为no
appendonly no
# redis的log文件
#logfile "6379.log"
dir /redis/data
# redis的存放文件
dbfilename "dump-6381.rdb"
# 连接redis密码
requirepass 123456

问题:root用户变成bash-4.2#

原因:应该是昨天各种尝试配置tomcat,误操作删除掉了.bash_profile和.bashrc这两个文件。

只需要将/home/hikktn/下面的.bash_profile和.bashrc这两个文件复制到/root/下面就可以了。

最后切换一下用户

su root

linux克隆

先关机

poweroff(关机命令)

shutdown -h now 立刻关机(root用户使用)

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第14张图片

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第15张图片

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第16张图片

 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第17张图片

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第18张图片

 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第19张图片

 # 获取网卡HWADDR信息 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第20张图片

# 获取网卡的uuid信息

[root@localhost network-scripts]# uuidgen eth1

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# vi ifcfg-ens33
按照下图变更修正配置即可

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第21张图片

最后可以修改用户名

-bash-4.2# vim /etc/hostname

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第22张图片

修改成你想要修改的名字即可。

最后重启网络
service network restart

部署mariaDB

# 卸载centos7自带的mariaDB

rpm -e mariadb-server

rpm -e mariadb

rpm -e nodeps mariadb-libs

两台虚拟机都要操作

# 下载mariaDB

[root@localhost ~]# yum -y install mariadb mariadb-server
[root@localhost ~]# cp /usr/share/mysql/my-huge.cnf /etc/my.cnf

[root@localhost ~]# vi /etc/my.cnf

忽略大小写

lower_case_table_names=1

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第23张图片

# 启动mariaDB

systemctl start mariadb

# 开机自动启动mariaDB

systemctl enable mariadb

# 查看防火墙

[root@localhost ~]# systemctl status firewalld
# 查看防火墙是否运行

[root@localhost ~]# firewall-cmd --state
running(正在运行)

# 停止防火墙

[root@localhost ~]# systemctl stop firewalld
# 开机不启用防火墙

[root@localhost ~]# systemctl disable firewalld
# 设置mariaDB数据库

[root@localhost ~]# /usr/bin/mysql_secure_installation

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第24张图片

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第25张图片

主从复制

192.168.135.132

# 登录mysql

mysql -u 用户名 -p

[root@localhost ~]# mysql -u root -p
 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第26张图片

# 创建主从连接帐号与授权

GRANT REPLICATION SLAVE ON *.* TO '主用户名'@'%' IDENTIFIED BY '密码';

MariaDB [(none)]> GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave';

# 查询bglog文件名

show master status;

+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000003 |      970 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

# 建立主从连接

192.168.135.133

[root@localhost ~]# mysql -u root -p

# CHANGE MASTER TO MASTER_HOST='主节点IP地址', MASTER_USER='主节点授权用户名', MASTER_PASSWORD='主节点授权用户的密码', MASTER_LOG_FILE='bglog文件名', MASTER_LOG_POS=bglog文件存放位置;

CHANGE MASTER TO MASTER_HOST='192.168.135.132', MASTER_USER='slave', MASTER_PASSWORD='slave', MASTER_LOG_FILE='mysql-bin.000003', MASTER_LOG_POS=970;

注意:语法前后的逗号不能有空格

# 查看主从状态

MariaDB [(none)]> show slave status\G;
 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第27张图片

问题:  Slave_IO_Running: No
            Slave_SQL_Running: No

Slave_IO_Running: No解决方案

[root@localhost ~]# vi /etc/my.cnf
 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第28张图片

修改这个配置无效,下面成功!

MariaDB [(none)]> set global server_id=2;
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> show variables like 'server_id';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| server_id     | 2     |
+---------------+-------+
1 row in set (0.00 sec)

MariaDB [(none)]> start slave;
Query OK, 0 rows affected (0.00 sec)


Slave_SQL_Running: No解决方案

MariaDB [(none)]> stop slave;
Query OK, 0 rows affected, 1 warning (0.00 sec)

MariaDB [(none)]> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> start slave;
Query OK, 0 rows affected (0.00 sec)
 

# 退出mariaDB
exit

最后测试

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第29张图片

问题:1045 (28000): Access denied for user 'root'@'localhost' (using password)

MariaDB [(none)]> show grants;

+--------------------------------------+
| Grants for @localhost                |
+--------------------------------------+
| GRANT USAGE ON *.* TO ''@'localhost' |
+--------------------------------------+
1 row in set (0.00 sec)

@ 前面的用户名没有,始终无法连接!!!

MariaDB [(none)]> CREATE USER 'slave'@'%' IDENTIFIED BY 'slave';
创建后,马上连接成功!!!

问题:1130 - Host XXX is not allowed to connect to this MySQL server

# 打开远程

MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY 'root' WITH GRANT OPTION;

# 刷新

MariaDB [(none)]> FLUSH PRIVILEGES;

# 查询用户,端口,权限 

MariaDB [(none)]> SELECT user, host, grant_priv FROM mysql.user;
 

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第30张图片

创建的个人用户slave,创表不行

Linux 全操作过程【ping Name or service not known】“yun-config-manager:找不到命令“ “访问tomcat 404“_第31张图片

注意点:主从复制,不能更改从表,一旦变更从表,主从同步就会出现失效!

解决方案:
方案一:

stop slave;

set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

start slave;

方案二:

stop slave;

CHANGE MASTER TO MASTER_HOST='192.168.135.132', MASTER_USER='slave', MASTER_PASSWORD='slave', MASTER_LOG_FILE='mysql-bin.000003', MASTER_LOG_POS=970;

start slave;

问题:root密码忘记,重新设置密码

CentOS7版本

第一步,开机,立即按esc,进入选择系统页面

第二步,按E键,进入编辑

第三步,在文件的Linux16开头那一行,在末尾添加  init=/bin/sh

第四步,Ctrl+X,重启Linux,进入单用户模式

第五步,输入 ls 命令

第六步,回车

第七步,输入 mount -o remount,rw / 

第八步,回车

第九步,输入 passwd

第十步,回车

第十一步,输入8位密码

第十二步,重复上一次输入的8位密码

第十三步,输入 touch /.autorelabel

第十四步,回车

第十五步,exec /sbin/init

第十六步,等待系统重新设置

第十七步,重启成功后,输入hostname localhost

第十八步,输入 su

完成大致的修改

问题:网卡重启失败Restarting network (via systemctl): Job for network.service failed

[root@localhost ~] systemctl stop NetworkManager
[root@localhost ~] systemctl disable NetworkManager

[root@localhost ~]# service network restart
Restarting network (via systemctl):                        [  OK  ]
[root@localhost ~]#

问题:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)

出现原因,虚拟机出现占用进程,直接把一台虚拟机干掉,造成很多问题,并且解决方案都不行,只能进行重新部署Linux。

mycat

问题:Mycat成功启动后,Navicat却无法连接2003 - Can't connect to MySQL ... (10038) 

# 开启防火墙
[root@localhost bin]# systemctl start firewalld

# 开放8066端口
[root@localhost bin]# firewall-cmd --permanent --add-port=8066/tcp
success

# 重启防火墙

[root@localhost bin]# firewall-cmd --permanent --list-ports
[root@localhost bin]# firewall-cmd --reload
success


或者直接关闭防火墙

systemctl stop firewalld

查看容器的镜像

docker images

删除镜像

docker rmi --force  IMAGE ID
 

你可能感兴趣的:(问题一览,Linux,linux,Docker,MySQL,Docker,JDK1.8)