Bootstrap

Linux系列(centos7)

1 Lunix相关命令记录

1.文件不能被修改,只有只读权限,怎么修改文件使之有写入权限

命令:sudo chmod a+w 要修改的文件名

例如:sudo chmod a+w deng.conf

2.远程连接其他主机:验证是否连上的命令:

命令:ping + 其他主机的ip(相互之间两台主机都要ping验证)

3. 查看当前路径:

命令:pwd

4.创建多级目录:

命令:mkdir -p 目录1/目录2/......

5.vi命令编辑文件时,怎么查找文件内容:

vi进入文件后,按下/键,然后输入查找内容,然后按下回车键确定,然后n是向下查找,N是向上查找。

6.centos7系统关闭和开启防火强命令:

命令:

开启:systemctl start firewalld.service

关闭:systemctl stop firewalld.service

禁止开机自动开启防火墙:systemctl disable firewalld.service

7.centos6系统关闭和开启防火强命令:

(1)永久生效:

开启:chkconfig iptables on

关闭:chkconfig iptables off

(2)临时有效:

开启:service iptables start

关闭:service iptables stop

8.查看当前用户:whoami

9.清空文件内容:

(1)echo "" >file.log

(2)使用vim;然后输入d%

10.判断某路径是否存在某一文件,不存在的话自动去创建:
if [ !  -f  /usr/demoshell/result.log ];then

  touch /usr/demoshell/result.log

fi

11.nslookup是一个能够查询互联网域名服务器信息的程序
(1)查询CNAME是否生效:nslookup -qt=cname  dengsir.cn.cdn.dnsv1.com.cn

2 linux安装redis

概念

1.Redis可作为数据库,缓存和消息中间件。

2.它支持多种类型的数据结构:

如:字符串(strings),散列(hashes),列表(lists),集合(sets),有序集合(sorted  sets)

3.速度快:读的速度是110000次/秒,写的速度是81000次/秒。

安装

1.redis官网:redis.cn

2.redis可视化软件的下载地址(网盘):链接:https://pan.baidu.com/s/1-t3sdZVIOS7P9Thdouv0rA 
                                                            提取码:azxc

3.(1)命令cd或cd~进入用户主目录

   (2)在主目录下创建存放redis软件的文件夹:mkdir -p soft/redis

     (3)点击Xshell右上方的xftp图标,将redis安装包传进redis文件夹

   (4)解压命令:tar zxvf redis.tar.gz

4.redis解压之后需要手动命令进行编译并安装(因为redis不是绿色安装版,需要手动安装)

(1)编译命令:make

(2)编译时会报错:缺少c语言环境。此时需要下载C语言环境和其他依赖

(3) 组合安装缺少的环境和依赖(3个:gcc-c++和automake和autoconf):

命令:yum -y install gcc-c++ automake autoconf

(4)依赖下载完毕后再次进行编译

命令:make

(5)此时这里还会报错:

解决办法:

命令:make MALLOC=libc

(6)这里我个人还是报错了:server.c:5212:31: 错误:‘struct redisServer’没有名为‘server_cpulist’的成员 redisSetCpuAffinity(server.server_cpulist);

查了百度原因是我的yum版本太旧 

解决办法参照此博客:(22条消息) Linux环境下安装redis报错‘struct redisServer’没有名为‘logfile’的成员_Riu_Peter-CSDN博客

(7)解决之后然后在进行编译:

命令:make

(8)创建redis服务的安装目录:

命令:mkdir -p /usr/local/soft/redis

(9)编译完成后就是安装redis到安装目录:(PREFIX指定安装目录)

命令:make PREFIX=/usr/local/soft/redis install

(10)进入到安装目录redis的bin目录下,启动redis服务:

命令:./redis-server

(11)将redis前台启动改为后台启动:

在redis安装包目录下将redis.conf拷贝到redis安装目录bin目录下

命令:cp redis.conf /usr/local/soft/redis/bin

进入redis安装目录bin目录下,编辑redis.conf文件:将daemonize改为yes

(12)redis后台启动:(指定配置文件)

命令:./redis-server redis.conf

(13)验证是否后台启动成功,用redis自带的客户端(redis-cli)验证是否能连接上

命令:./redis-cli

(14)redis心跳机制,集群内部通讯方式(PING-PONG)

命令:ping

 (15)redis存储数据

至此,redis安装及启动完成!

5.redis可视化软件连接redis服务器发现连不上:

解决办法:

(1)进入redis.conf文件,将bind 127.0.0.1注掉,并将保护模式改为no

 (2)重启redis服务:

先查看redis进程:

命令:ps -ef|grep redis

 

然后杀死redis的进程:

命令:kill -9 16169

然后后台启动redis服务:

命令:./redis-server redis.conf

(3)给redis设置密码,外网连接时需要输入设置的密码才能连接

进入redis.conf文件,找到requirepass,设置密码为root,然后重复(2)步骤重启redis服务

(4)然后用可视化软件远程连接

(5)这里我连接失败,查了原因是因为centos防火墙未关闭

解决办法,关闭防火墙:

命令:systemctl stop firewalld.service

(6)然后再次连接,成功。

完成!

3 linux安装docker

1.docker是虚拟化容器技术。

docker解决的痛点:以前在虚拟机装mysql,redis等软件步骤非常复杂,此外,某个软件在运行期间出现问题会影响lunix系统。

2.docker基于镜像,可以秒级启动各种容器。每一种容器都是一个完整的运行环境,容器之间相互隔离。

3.docker从网上获取redis等相关软件的镜像,直接基于镜像启动一个容器,这个容器就是此镜像软件的运行环境。

4.docker装其他软件镜像仓库(集合了非常多的其他软件的镜像):Explore Docker's Container Image Repository | Docker Hub

Lunix安装docker:

1.先卸载旧版本内容:(针对之前安装过docker的电脑)

命令:

 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2. 设置docker的地址:

(1)设置前先安装相关依赖包:

命令:

sudo yum install -y yum-utils

这一步有问题,lunix不能连接上网络:解决办法参照我的这篇博客:虚拟机centos7无法连接网络解决办法_欢迎技术交流-CSDN博客

(2) 告诉lunix系统docker的安装地址:

命令:

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

3. 安装docker:

命令:

sudo yum install docker-ce docker-ce-cli containerd.io

 (其中containerd.io是docker的容器,docker-ce是docker的引擎,docker-ce-cli是操作docker的客户端)

4.查看docker是否安装成功:

sudo yum install docker-ce docker-ce-cli

5.启动docker:

命令:

sudo systemctl start docker

检查是否启动成功:

[root@laptop-squqt0h3 system]# docker -v
Docker version 20.10.10, build b485636
[root@laptop-squqt0h3 system]# docker images
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE

6.设置docker开机自启动:

systemctl enable docker

7.为docker配置镜像加速:

docker从dockerhub中下载相关软件的镜像,因为dockerhub是国外的网站,下载镜像比较慢,所以为docker配置国内镜像加速

使用阿里云的镜像加速器服务:

依次执行下面的命令:

(1)sudo mkdir -p /etc/docker

(2)sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://4g8lkfux.mirror.aliyuncs.com"] } EOF

(3)sudo systemctl daemon-reload

(4)sudo systemctl restart docker

ps:博主是从java转go方向,刚接触go语言不久。

如果也有在学go语言的朋友可以加群互相交流。(如果群聊二维码过期,也可直接加本人微信:daihq713,我拉你进群)

 

也欢迎关注本人公众号,不定时分享编程或吉他知识。

公众号:i格雷

4 安装rabbitmq

在cenos7下:

1.环境配置:

yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc gcc-c++ kernel-devel

2.下载安装包:

wget www.rabbitmq.com/releases/erlang/erlang-18.3-1.el7.centos.x86_64.rpm 

wget http://repo.iotti.biz/CentOS/7/x86_64/socat-1.7.3.2-5.el7.lux.x86_64.rpm
wget www.rabbitmq.com/releases/rabbitmq-server/v3.6.5/rabbitmq-server-3.6.5-1.noarch.rpm

3.依次安装erlang-socat-rabbitmq:

rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm

rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm

rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm 

4.启动rabbitmq:

service rabbitmq-server start

5.使用rabbitmq的图形化界面控制台:

rabbitmq-plugins enable rabbitmq_management
6.配置控制台:将  [<<"guest">>]  改为   [guest]

vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app

7.然后就可以在浏览器访问图形化界面:

在浏览器输入:ip+rabbitmq的端口(15672)。然后用户名和密码默认都是guest

​​​​​​​

5 centos7进入root目录提示权限不够

1.解决办法:命令:sudo su

6 虚拟机centos7无法连接网络解决办法

1.在centos中安装redis突然出现问题,使用yum安装redis环境和依赖时报了以下错误:Cannot find a valid baseurl for repo: base/7/x86_64

2.通过查找原因发现是因为centos系统没有链接网络

3.通过终端命令:ping www.baidu.com发现不能ping通,进一步说明是网络原因:

4.接下来是centos7连接网络的解决步骤:

(1) 先设置网络连接模式为桥接模式:(在centos7桌面右下角点击设置)

 (2)在虚拟机右上角点击编辑,选择虚拟网络编辑器

     (这个配置是成功与否的关键步骤) 然后进行网络配置(分别添加三个网络配置:仅主机/NAT/桥接模式),其中桥接模式的网络连接必须选择与本地网络名一致,例如我本地是{Inter(R) WireLess-Ac 9560 160MHZ},桥接至就选这个。

 

(3)在宿主机上通过命令:ipconfig查看ip,网关等信息:

(4)在centos7中编辑配置网络文件(与(2)中的默认网关,子网掩码对应。ip自己设置就行,不过要与宿主机ipv4地址处于同一网段):

 命令:vim /etc/sysconfig/network-scripts/ifcfg-ens32

(5)重启网络:

命令:service network restart

(6)现在就可以ping通百度了:

完成! 

补充:

(1)在换网络的过程中自己将NAT模式子网地址192改成了191 注意这里的变化,如果出现联不通网络需要更改这里的设置。(将192换成191与控制面板中的VMnet1的IPv4地址处于同一网段)

(2)如果此网络能ping通百度后,以后想更换网络了(手机热点)会出现ping不通的情况,只需要更改ens32里面的ip/网关/子网掩码这三项配置。

  

;