Linux系统初探过程总结
Linux系统初探的过程大约用了一周的时间,这周基本将Linux系统安装,PostgreSQL安装,Nginx服务器安装,ASP.NET Core应用部署都走了一遍。由于以前没有怎么接触和使用过Linux平台上的东西,因此在这一周也可以说是踩坑无数。准备将这几天遇到的问题总结一下,以备后查。
- Linux系统安装过程中遇到的问题
- GUI界面:Linux系统版本选择了CentOS,从CentOS官网下载了Dvd版本的镜像文件,因为也不了解CentOS文件”全包“与”最小包“区别,就下载了”全包“。大约有4G多,在安装时使用了默认安装,安装完成后发现是带GUI管理界面的,一开始还以为自己是不是下得Desktop的版本,后来又去官网详细了看了一下说明。CentOS全包的默认安装就是带GUI管理界面的,心想不愧是面向企业级的版本,这么贴心。用了一天,感觉和Windows Server在操作方式上比较相似。但感觉如果继续使用GUI就无法学习Linux系统命令了,因此又使用最小包重装了系统。
- CentOS最小包:使用最小包重新安装后发现这个最小安装,内容还是真少。基本什么都没有,常用的功能包都需要安装,像”vim“,”lsof“,”wget“,“xorg-x11-xanth”等都得现装。
- PostgreSQL安装过程中遇到的问题
PostgresSQL的安装还是比较简单的,只要按照PostgreSQL官网上提供的安装命令及步骤执行后就可以顺利的完成安装过程。 - ASP.Net Core应用部署遇到的问题。
- Apache服务器
因为CentOS7系统是稳定为主,因此其软件库不提供软件最新版本。默认软件源中通常都是最稳定的版本,但是在部署Apache的反向代理服务器时就遇到了一些问题。CentOS7上通过yum安装的Apache版本只有5.4,这个版本并不支持最新的反向代理功能 。如果要将Apache配置为反向代理服务器,需要将Apache升级至最新版本。所以需要在升级前先安装第三方的软件源,我是在安装了CodeIT库后,才将Apache升级到最新版本。接下来的安装就比较顺利了。 - Nginx服务器
安装Nginx服务器时,存在与安装Apache时同样的问题。就是需要先更新CentOS上的第三方软件源后,再使用yum进行安装。虽然Nginx也可以使用离线安装,但我依然建议使用yum进行安装。少了很多需要自己对Nginx进行配置的步骤。不知道为什么Nginx服务器的默认配置文件中的用来运行服务的用户名是“apache”,而不是“nginx”。在启动服务前,要记得修改Nginx.conf中的“User”设置为已经存在的用户,如果不知道就干脆用root。总得来说,Nginx的反向代理服务器配置还是要比Apache简单一些。 - ASP.Net Core Runtime
ASP.Net Core Runtime的安装可以参考微软提供的安装步骤,微软针对Linux不同版本,提供了相应的安装步骤。不过目前的.Net Core 2.2中的Identity好像有些问题,原来在2.1好用的程序更新为2.2后,出现了异常。 - ASP.Net Core应用
ASP.NET Core应用在Linux上只能通过Kestrel服务器解析,Apache或Nginx只是作为反向代理服务器使用。我觉得这是出于最佳实践的考虑,在安全与负载均衡方面,反向代理是现在使用最多的解决方案。因此.Net Core从一开始就采取这种模式工作。实际上在Linux内核没有原生支持.Net Core时,这也是一个折中的解决办法。 - SELinux
在配置完Nginx服务器和部署完ASP.Net Core应用后,还有一项工作是必须的。就是关闭SELinux或是将httpd_can_network_connect --> on ,否则两个进程间是无法直接通信的。
- Apache服务器
最后,需要补充一点。在这次的整个Linux平台探索的过程,有好几次服务或应用表现不正常。例如:我刚刚部署完ASP.NET Core应用时,在内网进行测试。发现有的客户端上的浏览器正常,有的客户端就会显示“无法找到页面”。查看日志,发现Nginx根本就没处理请求,最后居然都是重启服务器解决的。因此,我觉得在配置Linux服务器都完成后,最好重启一次服务器。以上就是这次Linux平台初探过程的简单概括,今后还要继续深入的学习Linux系统的相关知识外,还要深入学习.Net Core与ABP框架的相关知识。真是一入Linux深似海,从此Windows是路人。
Linux系统初探过程总结的更多相关文章
- linux系统开机过程描述
本文描述linux系统开机过程,属于个人理解范畴,如果文中表述有误请大家批评指正! 计算机开机之后,首先要加载BIOS(基本输入输出系统)信息,BIOS包含了很多重要的信息,包括CPU信息,设备启动顺 ...
- linux系统引导过程
linux系统引导过程 linux-0.11引导时,将依次运行BIOS程序.bootsect.s.setup.s和head.s,完成引导过程后进入到main函数运行.BIOS完成硬件的检查与初始化等工 ...
- Linux系统初始化过程及运行级别简介
Linux开机过程: 1 开机自检(BIOS):初始化硬件,查找启动介质 2 MBR引导 3 GRUB引导菜单:GRUB程序安装在Bootloader 4 加载内核(kernel) 5 运行INIT进 ...
- 【Linux系统引导过程】
*** 第一步 开机自检 根据主板BIOS中的启动顺序,移交系统控制权. 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它. 这是因为BIO ...
- Linux系统引导过程及排除启动故障
一.Linux操作系统引导过程二.系统初始化进程1.init进程2.Systemd3.Systemd单元类型三.排除启动类故障[1].修复MBR扇区故障(含实验过程)[2].修复GRUB引导故障●方法 ...
- Linux系统——引导过程与服务控制
一.Linux开机启动原理(十步) (1)开机自检BIOS 开机检测,主板检测 (2)MBR引导 硬盘512字节 (3)GRUB菜单 操作系统菜单 (4)加载内核(kernel) 启动操作系统核心,根 ...
- 用虚拟机安装Linux系统的过程
1.打开VMware->点击File->点击New Virtual Machine.. 2.我们选择Custom并点击Next 3.保持默认然后点next 4.选择图中所示内容,点Next ...
- linux系统使用过程遇到的bug
使用windows与ubuntu双系统,重装windows系统后需要修复ubuntu grub reference ubuntu系统中挂载的windows硬盘点不开 需要重新挂载 reference ...
- linux系统登陆过程
一.物理直连登陆过程 初始化进程init 会根据直接连接的字符终端设备,打开getty程序,并关联在字符终端设备上tty1/2/3/4/5/6/7....上,在不同的终端设备上提示用户输入信息,等待终 ...
随机推荐
- Android 高级UI设计笔记24:Android 夜间模式之 WebView 实现白天 / 夜间阅读模式 (使用JavaScript)
1. 问题引入: 前面我们是使用方法 降低屏幕亮度(不常用) 和 替换theme,两者都是针对Activity的背景进行白天.夜间模式的交换,但是如果我们显示的是Html的内容,这个时候改怎么办? 分 ...
- [CEOI2017]Building Bridges
题目 斜率优化思博题,不想写了 之后就一直\(95\)了,于是靠肮脏的打表 就是更新了一下凸壳上二分斜率的写法,非常清爽好写 就当是挂个板子了 #include<algorithm> #i ...
- Mysql 多实例实施步骤
基本理论:利用同一套安装程序,不同配置文件,不同启动程序,不同数据目录.有公用资源,也有私有资源. 实现步骤: 1.正常安装mysql,二进制安装或者编译安装. 2.创建mysql多实例总目录,总目录 ...
- c模拟内存分配算法(首次适应算法,最佳适应算法,最坏适应算法)
#include<bits/stdc++.h> using namespace std; /*定义内存的大小为100*/ #define MEMSIZE 100 /*如果小于此值,将不再分 ...
- 通过ReentrantLock简单了解下并发包中的锁
ReentrantLock在进行实例化时,可以通过构造函数的参数选择是否使用公平锁FairSync或者非公平锁NonfairSync,两者的区别比较简单,如果是公平锁则新来的线程会先检测同步队列中是否 ...
- Linux Shell常用技巧(六)
十二. 行的排序命令sort: 1. sort命令行选项: 选项 描述 -t 字段之间的分隔符 -f 基于字符排序时忽略大小写 -k 定义排序的域字段,或者是基于域字段的部分数据进行排序 - ...
- vue+vux-ui+axios+mock搭建一个简单vue框架
1.首先感谢同事 2.之前一直在做angularjs的项目,目前vue火热,所以自己搭建了一个的vue框架,在此作为记录 vue+vux-ui这里就不介绍了,有很多博客都写的很详细了. 下面简单记录下 ...
- mac上cocoapods安装与卸载
安装 # 安装最新beta版 sudo gem install cocoapods --pre -n /usr/local/bin # 安装最新稳定版 sudo gem install cocoapo ...
- js动态生成水印
原理:通过动态生成canvas然后转为base64格式 代码Demo export const waterMark = (text) =>{ let _wm = document.createE ...
- 大数据调错系列之:自己总结的myeclipse连接hadoop会出现的问题
在我们学习或者工作中开始hadoop程序的时候,往往会遇到一个问题,我们写好的程序需要打成包放在集群中运行,这无形中在浪费我们的时间,因为程序可以需要不断的调试,然后把最终程序放在集群中即可.为了解决 ...