虚拟机ubuntu桥接模式提供固定IP访问及源码安装redis6.2.7

安装Redis

  1. #下载redis源码安装包到用户目录中
  2. cd /home/{user}/
  3. sudo wget http://download.redis.io/releases/redis-6.2.7.tar.gz
  4. #解压
  5. sudo tar -zxvf redis-6.2.7.tar.gz
  6. #把redis移动到自定义的安装目录
  7. cd /usr/local
  8. mkdir redis
  9. cd redis
  10. cp -r /home/{user}/redis-6.2.7 /usr/local/redis/
  1. #检查gcc是否安装
  2. gcc --version
  3. #安装gcc(可选)
  4. sudo apt-get install gcc
  1. #安装redis
  2. sudo make install
  3. #复制redis配置文件(可以不改名,但后面配置自启动时就要调整自启动配置)
  4. mkdir /etc/redis
  5. cp /usr/local/redis/redis-6.2.7/redis.conf /etc/redis/6379.conf
  6. #修改redis配置文件
  7. sudo vi /etc/redis/6379.conf

主要修改以下几处:

  1. ...
  2. #将默认的本机端口注释
  3. # bind 127.0.0.1 -::1
  4. ...
  5. #允许远端访问,yes的话只能本机
  6. protected-mode no
  7. ...
  8. #端口
  9. port 6379
  10. ...
  11. #以后台方式启动
  12. daemonize yes
  13. ...
  14. pidfile /var/run/redis_6379.pid
  15. ...
  16. #日志保存位置
  17. logfile ""
  18. ...
  19. #密码
  20. requirepass 123456
  21. ...

将Redis设置为系统服务

  1. #将redis自带的初始化脚本复制到ubuntu启动目录中
  2. sudo cp /usr/local/redis/redis-6.2.7/utils/redis_init_script /etc/init.d/{自定义名称}
  3. #修改启动脚本
  4. vi /etc/init.d/{自定义名称}

具体修改点如下:

  1. REDISPORT=6379【看这里:看需求】
  2. EXEC=/usr/local/bin/redis-server【看这里:一般不用动】
  3. CLIEXEC=/usr/local/bin/redis-cli【看这里:一般不用动】
  4. PIDFILE=/var/run/redis_${REDISPORT}.pid【看这里:如果改了端口,对应目录下的pid文件也要改】
  5. CONF="/etc/redis/${REDISPORT}.conf"【看这里:如果前面不改redis config文件的名称,这里就要改】
  6. case "$1" in
  7. start)
  8. if [ -f $PIDFILE ]
  9. then
  10. echo "$PIDFILE exists, process is already running or crashed"
  11. else
  12. echo "Starting Redis server..."
  13. $EXEC $CONF &【看这里:加个&表示以后台方式启动】
  14. fi
  15. ;;
  16. stop)
  17. if [ ! -f $PIDFILE ]
  18. then
  19. echo "$PIDFILE does not exist, process is not running"
  20. else
  21. PID=$(cat $PIDFILE)
  22. echo "Stopping ..."
  23. $CLIEXEC -a "123456" -p $REDISPORT shutdown【看这里:如果设置了密码,要加-a "密码",否则执行命令时会出现“NOAUTH Authentication required”的错误,并一直等待命令执行】
  24. while [ -x /proc/${PID} ]
  25. do
  26. echo "Waiting for Redis to shutdown ..."
  27. sleep 1
  28. done
  29. echo "Redis stopped"
  30. fi
  31. ;;
  32. *)
  33. echo "Please use start or stop as first argument"
  34. ;;
  35. esac
  1. #启用服务(否则以{自定义名称}执行时可能出现Failed to start redis.service: Unit {自定义名称}.service not found.)
  2. systemctl enable {自定义名称}
  3. #安装服务管理程序(可选)
  4. sudo apt-get install sysv-rc-conf
  5. #设置redis服务级别,将{自定义名称}对应的服务的2、3、4、5级别全部勾选
  6. sudo sysv-rc-conf

启动Redis

  1. service redis start
  2. service redis stop
  3. service redis restart
  4. #查看redis后台进程运行情况
  5. ps -ef |grep redis

虚拟机网络设置为桥接模式,提供固定IP访问

VMware设置

编辑->虚拟网络编辑器->更改设置(右下角)->添加网络

虚拟机->设置->网络适配器

ubuntu网络设置

  1. #查看本机网络信息(不一定是ens33,具体看自己的网络情况,ens33是以太网卡)
  2. root@user1:~# ifconfig
  3. ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
  4. inet 192.168.31.89 netmask 255.255.255.0 broadcast 192.168.31.255
  5. inet6 fe80::20c:29ff:fe43:5b14 prefixlen 64 scopeid 0x20<link>
  6. ether 00:0c:29:43:5b:14 txqueuelen 1000 (Ethernet)
  7. RX packets 20500 bytes 4984472 (4.9 MB)
  8. RX errors 0 dropped 0 overruns 0 frame 0
  9. TX packets 1291 bytes 294287 (294.2 KB)
  10. TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
  11. lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
  12. inet 127.0.0.1 netmask 255.0.0.0
  13. inet6 ::1 prefixlen 128 scopeid 0x10<host>
  14. loop txqueuelen 1000 (Local Loopback)
  15. RX packets 103 bytes 7717 (7.7 KB)
  16. RX errors 0 dropped 0 overruns 0 frame 0
  17. TX packets 103 bytes 7717 (7.7 KB)
  18. TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
  19. #修改网络配置
  20. root@user1:~# cat /etc/network/interfaces
  21. auto ens33
  22. #设置ens33为静态地址
  23. iface ens33 inet static
  24. #IP,需要与局域网其他主机同网段
  25. address 192.168.31.89
  26. #网关,同网段
  27. gateway 192.168.31.1
  28. #子网掩码
  29. netmask 255.255.255.0
  30. #DNS,可以看虚拟机所在windows的网络信息ipconfig
  31. dns-nameservers 192.168.31.1

然后重启网络或重启虚拟机(reboot)

ubuntu开启ssh

  1. #安装ssh服务器
  2. sudo apt-get install openssh-server
  3. #修改ssh服务的配置
  4. root@user1:~# cat /etc/ssh/sshd_config
  5. ......
  6. #Port 22
  7. ......
  8. PermitRootLogin yes
  9. StrictModes yes
  10. ......
  11. PubkeyAuthentication yes
  12. ......