目录
一、U盘制作Linux启动盘 物理机安装Linux系统
二、路由器做内网映射ssh连接到Linux
三、CentOS8部署python_flask项目
1、首先需要一个大于8G的U盘和下载UltraISO软件,来制作用来制作Linux系统启动盘,软件的下载方式可以直接在CSDN中搜索“UltraISO”有很多的大佬发布过文章。
2、下载Linux系统,推荐在阿里云镜像站下载(Centos7下载地址:阿里云开源镜像站资源目录,Centos8下载地址:http://mirrors.aliyun.com/centos/8/isos/x86_64/)
CentOS-7-DVD版本:DVD是标准安装盘,一般下载这个就可以了。
CentOS-7-NetInstall版本:网络安装镜像。CentOS-7-Everything版本:对完整版安装盘的软件进行补充,集成所有软件。
CentOS-7-GnomeLive版本:GNOME桌面版。
CentOS-7-KdeLive版本:KDE桌面版。
CentOS-7.0-livecd版本:光盘上运行的系统,类拟于winpeDVD ISO:标准安装盘,一般下载这个就可以了(4G左右)
Everything ISO:对完整版安装盘的软件进行补充,集成所有软件(8G左右)
Minimal ISO:最小安装盘,只有必要的软件,自带的软件最少(1G左右)
3、打开UltraISO,在右上角的位置选择打开镜像文件:文件-->打开,选择到下载好的CentosISO文件
4、在左下方选择到你的U盘,然后点击启动点击写入硬盘映像,然后最好格式化一下U盘然后点击写入,等待写入成功完成即可,PS:可能会失败几次,我之前安装的时候失败了5次。。。
5、写入成功后U盘的名称会变,建议将U盘名称修改成一个好记的,比如修改成:Centos。PS:这步非常重要,安装系统的时候是需要用的
6、将系统盘插上主机,根据你的主板型号,开机后按F1或者F9,或者F12或者del键选择启动方式为U盘启动 会有个USB-HDD的入口,也可以设置主板的BIOS直接从U盘启动。PS:建议选启动方式为U盘启动,就能直接进入Linux的安装界面了
7、U盘启动后会进入Linux系统的安装界面,这里选择第一个按tab键会出现vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet这句,这里需要将LABEL=CentOS\x207\x20x86_64 rd.live.check 修改成LABEL=Centos,(就是你的U盘的名字)修改后就是vmlinuz initrd=initrd.img inst.stage2=hd:LABEL=Centos quiet,然后就可以进入了。
8、然后就可以进入按照界面了,可以根据自己的需求选择安装
这里的安装源可能会报错,可以选择在网络上然后输入url地址完成即可
版本8:mirrors.aliyun.com/centos/8/BaseOS/x86_64/os/
版本 8.3.2011:mirrors.aliyun.com/centos/8.3.2011/BaseOS/x86_64/os/
1、首先要保证Linux系统开启ssh服务,可以输入ssh查询。开启方法可以在CSDN搜索(linux开启ssh服务,实现ssh远程登录)
2、宽带拥有公网ip,而非大内网ip,这个可以进入光猫设置页面,在高级设置,网关信息中找到WAN IP,查询到公网的IP地址,然后在去百度搜索“我的ip”,
如果两个IP地址是一样的就是公网IP,不一样的话就是大内网IP了,就需要联系宽带运营商申请公网IP了
3、光猫上网模式需要修改成桥接模式,然后用路由器拨号上网,否则内网映射不成功的,上网方式默认是路由。设置页面地址(输入光猫地址,如 192.168.1.1(你的光猫ip):8080),然后这里需要账号密码不是光猫后面的账号密码,
需要电信的管理员的账号密码,可以联系运营商的工作人员上门帮你修改,因为需要他们工作人员的账号和密码才能修改,(PS:也可以用内网穿透工具,具体还没有研究过)
4、修改好上网模式后就可以用路由器做内网映射了,输入路由器的ip地址,查看方式可以在cmd窗口输入ipconfig查询到 默认网关的地址就是路由器的IP地址了,这个地址输入到浏览器就能进入路由器配置页面了
5、然后需要配置路由器的ip和MAC绑定,在里面找到Linux连接的IP地址列,改为静态即可 。 (PS目前不在家无法连接路由器当前图片来着CSDN大佬截图)
6、点击虚拟服务器,设置添加转发规则,外部端口是通过公网IP访问需要的端口,内部端口是Linux ssh连接的端口,一般默认是22,ip地址是路由器中连接Linux组主机的IP地址,协议选all全部。(PS,外部端口不建议设置成常见的端口,如80等,因为运营商屏蔽了一些端口)
7、设置DDNS,由于公网IP会不定时改变,我们需要一个域名映射公网IP并帮我们更新对应的IP地址,可以注册tp-link,然后使用他们提供的域名,或者看看你的路由器支持那些第三方的平台提供的服务,都可以使用。
8、设置完这步就可以通过域名连接远程Linux系统了,比如我的是tdn.tpddns.cn 就可以用( ssh [email protected])输入root用户的密码就可以连接了
1、安装python解释器,可以去python官网查询当前最新版本
2、下载python安装包
输入下载命令:wget https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz
3、解压安装程序
tar -zxvf Python-3.9.1.tgz
4、进入安装目录
cd Python-3.9.1
5、准备编译环境
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
6、创建安装目录安装,方便卸载的时候直接删除,
./configure --prefix=/home/python3
编译,安装
make
make install
6、然后应该就可以了输入python3 -V应就能查看版本了,至于什么软链接,环境变量我没有配置(手动滑稽)
7、 安装mysql 数据库
1.检查:yum list installed mysql*
2.查看安装包:yum list mysql*
3.安装mysql:yum -y install mysql
yum -y install mysql-server
yum -y install mysql-devel
4.启动mysql服务:service mysqld start
5.设置mysql自启动:chkconfig --level 2345 mysqld on,chkconfig --list |grep mysql*
6.创建管理员:mysqladmin -u root password 123456,root是用户名 123456是密码。
7.登录mysql -u root -p回车后输入密码即可
8、Flask项目
1.将pythonweb项目复制一份,将在Windows中运行中编译生成的文件全部删除
2.打包项目将项目上传到服务器,然后通过tar -xvf 包名解压,然后移动到相应的文件夹
3.创建虚拟环境,进入到对应的目录 通过:python3 -m venv venv命令创建虚拟环境
4.通过命令:source venv/bin/activate,激活虚拟环境
5.通过pip3 install命令安装项目依赖包
9、防火墙、端口、运行项目
1.查看Linux防火墙默认关闭的通过命令:firewall-cmd --state可以查看防火墙状态
2.通过命令:systemctl start firewalld打开防火墙
3.通过命令:firewall-cmd --zone=public --add-port=9000/tcp --permanent 打开项目需要的端口
4.通过命令:firewall-cmd --reload 重启防火墙,然后通过命令:firewall-cmd --list-ports 查看那些端口是打开的
5.cd进入项目的app.py目录中用命令激活虚拟环境例如: source /root/venv/bin/activate
6.按需修改各个配置文件为Linux系统中的IP或端口,例如项目中的config配置文件,和app.py文件文件中的app.run()方法的可访问ip 如app.run(host='0.0.0.0')代表所有IP都可以访问
7.将py源文件编译为pyc文件通过命令:python3 -m compileall /root/flask_python_demo
8.删除py源文件,将pyc文件移动到py源文件之前的位置,并重命名pyc文件为py之前的名称(这样如果服务器被攻击,攻击者也看不见py源代码文件了)
9.运行app.pyc文件通过命令:python3 app.pyc(也可以不删除py源文件,直接运行py文件:python3 app.py)
10.通过nohup python3 app.pyc > log.txt 2>&1 &命令项目后台运行并保存运行日志
10、配置路由器内网映射
打开路由器管理页面,在虚拟服务器中添加映射列表,IP地址为Linux主机地址,外部端口不要设置为80这样的端口,这个是被运营商屏蔽过的访问不了的,内部端口设置为项目的端口即可,保存后即可通过ddns的域名加端口号访问项目了。
PS:本高冷也是个新手,记录一下一路踩坑后的结果,如有错误辛苦指点,(项目地址http://tdn.tpddns.cn:1080/ 欢迎访问~~~)