U盘直装CentOS 8并配置服务器环境教程指南

文章目录

  • 前言
    • 一、前期准备
    • 二、制作启动盘(以软碟通 UltraISO为例)
        • 1.导入镜像
        • 2. 写入镜像
        • 3. 静候佳音
    • 三、系统装机
        • 1. 进入快速启动界面
        • 2. 进入安装配置页
        • 3. 设置安装配置参数
        • 4. 语言选择
        • 5. 配置系统主要信息:
    • 四、服务器环境配置
        • 1.设置数据盘挂载点权限
        • 2.使用OneinStack进行服务器环境一键部署
        • 3.安装Linux可视化Web服务器管理软件Cockpit
        • 4.服务器安全性设置(关于Linux中wheel用户组的简单使用)
        • 5.超级终端及FTP工具(Xshell和Xftp)
    • 五、一些坑。。。
        • 1.使用MySQL 8后的一些奇奇怪怪的问题
            • 1)大小写敏感
            • 2)sql_mode设置
            • 3)常用的sql_mode参数:
            • 4)root密码修改、添加新用户及远程连接
        • 2.Nginx服务启动失败:Failed to start nginx - high performance web server.
        • 3. 偶现超级终端登录被拒绝,su鉴定故障
  • 总结

前言

徐小宝:本文仅以经验指南,涉及Linux系统安装,服务器环境配置等,方便自我查找刨坑。

一、前期准备

  1. 一块16G的U盘(CentOS8的完整包有8.6G);
  2. CentOS镜像:官网地址;
  3. 启动盘制作软件,建议使用软碟通 UltraISO,直接百度即可(也可以使用大白菜老毛桃等工具制作启动盘),下文仅以软碟通 UltraISO示例教程;
    软碟通UltraISO网盘链接:https://pan.baidu.com/s/11xg9x4aRAoKvm1rz6sRaWg 提取码:uiso

二、制作启动盘(以软碟通 UltraISO为例)

1.导入镜像

打开软件后,在菜单栏打开已经下载好的CentOS镜像(文件 —>打开

2. 写入镜像

将镜像写入U盘中(启动—>写入硬盘映像),硬盘驱动器选择事先准备好的U盘,写入方式默认。先进行U盘格式化,而后点击写入即可

3. 静候佳音

这些操作完以后就静候写入完成,大概需要半个小时至一个小时,过程有些漫长。

三、系统装机

1. 进入快速启动界面

将电脑重启,在看到品牌页面的时候按 F12 进入快速启动界面(不同品牌快捷键不同,U盘快捷键查询1、U盘快捷键查询2或直接百度),选择U盘所在项直接回车

2. 进入安装配置页

上下键选择第一项,然后按 E 进入配置页,部分可能有例外,具体按什么看下方提示;

3. 设置安装配置参数

将框选部分修改为 “hd:/dev/shb4 quiet”("/shb4"仅为示范不同电脑不同,如遇找不到的错误提示,按实际修改,如"/sha1"、"/shb3"等等) ,如下图所示,修改前后对比。修改完成后按 Ctrl+X (具体看下方按键提示),等待片刻后进入系统安装界面;
修改前
修改后

4. 语言选择

在该页面选择使用的语言,而后点击前进进入下一步

5. 配置系统主要信息:

  1. 时间与日期设置:按实际点击选择
  2. 安装源设置:可选择本地安装源,也可选择网络安装源。选择网络安装源的话,在URL处填入:mirrors.aliyun.com/centos/8/BaseOS/x86_64/os
  3. 软件选择:按自己的需要选择,小白可以直接选择带GUI界面的
  4. 用户设置:根密码是root用户,创建用户是普通用户(建议在此处创建完毕,最好设置为管理员)
    Tips:选择网络安装源时,需要配置网络和主机名,一般直接点打开自动即可
  5. 选择需要配置的硬盘,一般SSD做系统盘,机械硬盘做数据盘,存储配置选择自定义

    分区选择标准分区或LVM,然后点击自动分区。如果不是新硬盘则需要点开未知将里面的原分区删除
    在这里插入图片描述
    分完区以后可以进行微调。默认自动分区以后多余的空间都挂载数据"/home"下,可在此将数据盘按需进行重新划分大小,设置挂载点,如"/data"、"/mnt"、"/var"等等。可以省去系统安装完毕后很多配置命令。
    以上全部设置完成以后,选择安装,等待些许时间以后就能得到一台全新的搭载CentOS 8的服务器了。

四、服务器环境配置

1.设置数据盘挂载点权限

设置命令:sudo chmod 777 路径(如我的数据盘挂载点为"/data",则输入sudo chmod 777 /data)

2.使用OneinStack进行服务器环境一键部署

使用OneinStack可以快速的部署搭建服务器环境,可根据实际需求选择安装不同的环境。以下示例:

wget -c http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh --nginx_option 1 --tomcat_option 1 --jdk_option 2 --db_option 1 --dbinstallmethod 1 --dbrootpwd 123456 --pureftpd  --redis  --ssh_port 22 --reboot 

具体配置以官网为主,如遇命令出错可能是以下情况:
1)权限不够:在命令前加sudo 即可,或者使用root用户操作
2)未安装yum源之类:yum -y install wget screen (具体可百度)
其他问题可百度或官网查看
命令运行完毕后将会自动配置好环境以及服务

3.安装Linux可视化Web服务器管理软件Cockpit

可直接在自带的软件商店搜索安装或命令行自行安装,如下:
1)执行以下命令,安装Cockpit和基本的模块
yum -y install cockpit cockpit-dashboard cockpit-storaged cockpit-packagekit
2)启动cockpit服务
systemctl enable –now cockpit.socket
3)打开网页登录。Cockpit使用9090端口,使用http://ip:9090进行访问即可,用户名和密码均与系统一致
更详细的指南可参考

Linux管理工具Cockpit安装及使用

4.服务器安全性设置(关于Linux中wheel用户组的简单使用)

设置只有属于wheel组的用户才可以用su登录为root
1)vim /etc/pam.d/su
将其中的 # auth required pam_wheel.so use_uid
前面的#删掉,wq保存
2)vim /etc/login.defs
在最后一行增加 SU_WHEEL_ONLY yes 语句
3)usermod -G wheel 用户名
将一个用户添加到wheel组中
4)设置允许连接的用户 vim /etc/ssh/sshd_config
添加 AllowUsers 允许连接的用户名
修改 PermitRootLogin no (默认yes root用户可远程)
修改端口 Port 9999(自定义)
更详细的讲解参考下文

Linux中的wheel用户组是什么?

5.超级终端及FTP工具(Xshell和Xftp)

这两者搭配可以说是非常强大了,而且官方还有校园家庭免费版
Xshell、Xftp下载
进入页面填写邮箱等基本信息提交即可,稍等片刻将在邮箱收到下载链接

当然也不止这一款工具,类似的还有secureCRT和secureFX,Filezilla Xshell,Putty等等产品,萝卜白菜各取所好

五、一些坑。。。

1.使用MySQL 8后的一些奇奇怪怪的问题

1)大小写敏感

mysql5.7的时候是默认大小写不敏感的,而最新版的则需要自行设置。由于大小写敏感的设置只能在初始化的时候进行设置,否则将会报错。也算是OneStack一键配置的一些坑叭。
首先修改my.cnf配置文件,添加或修改为(默认值0):lower-case-table-names=1

vim /etc/my.cnf

首先清空数据库

rm -rf /data/mysql

然后初始化MySQL数据库

/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql --lower-case-table-names=1
2)sql_mode设置

MySQL8默认不设置,需要自行配置。
不配置可能遇到使用GROUP BY 语句报错等
首先修改my.cnf配置文件

vim /etc/my.cnf

添加sql_mode,如下示例,可根据需求更改

sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'

设置好保存,用如下命令重启MySQL即可

service mysqld restart
3)常用的sql_mode参数:

a)ONLY_FULL_GROUP_BY
对于GROUP BY聚合操作,如果在SELECT中的列,没有在GROUP BY中出现,那么这个SQL是不合法的,因为列不在GROUP BY从句中
b)NO_AUTO_VALUE_ON_ZERO
该值影响自增长列的插入。默认设置下,插入0或NULL代表生成下一个自增长值。如果用户希望插入的值为0,而该列又是自增长的,那么这个选项就有用了。
c)STRICT_TRANS_TABLES
如果一个值不能插入到一个事务中,则中断当前的操作,对非事务表不做限制
d)NO_ZERO_IN_DATE
不允许日期和月份为零
e)NO_ZERO_DATE
MySQL数据库不允许插入零日期,插入零日期会抛出错误而不是警告
f)ERROR_FOR_DIVISION_BY_ZERO
在INSERT或UPDATE过程中,如果数据被零除,则产生错误而非警告。如果未给出该模式,那么数据被零除时MySQL返回NULL
g)NO_AUTO_CREATE_USER
禁止GRANT创建密码为空的用户
h)NO_ENGINE_SUBSTITUTION
如果需要的存储引擎被禁用或未编译,那么抛出错误。不设置此值时,用默认的存储引擎替代,并抛出一个异常
i)PIPES_AS_CONCAT
将"||"视为字符串的连接操作符而非或运算符
j)ANSI_QUOTES
不能用双引号来引用字符串,因为它被解释为识别符

4)root密码修改、添加新用户及远程连接

a)直接强制修改密码,参考如下指南

如何获取MySQL root密码?
Linux Mysql 8.0以上版本数据库, root忘记密码如何重置

b)设置root用户远程连接
进入MySQL控制台

mysql -uroot -p

依次输入以下即可

use mysql;
update user set host='%' where user='root' and host='localhost';
quit;

c)添加新用户并授权

CREATE USER 'test'@'%' IDENTIFIED BY 'password'; //用户名、密码自定义
GRANT ALL ON *.* TO 'test'@'%'; // *.*表示所有数据库及数据表,可按实际设置:数据库名.数据表名
FLUSH PRIVILEGES; //保存授权

或者直接使用数据库管理软件直接添加,如SQLyog、Navicat、DBeaver等等

2.Nginx服务启动失败:Failed to start nginx - high performance web server.

一般是由于Nginx配置文件出错引起,做如下处理
添加Nginx专属用户,不授权登录

useradd nginx -s /sbin/nologin -M

修改Nginx.conf

vi /usr/local/nginx/conf/nginx.cnf
//设置user nginx nginx;

保存重启Nginx服务即可

service nginx start

3. 偶现超级终端登录被拒绝,su鉴定故障

这极大可能是root用户密码过于简单导致,直接重置

sudo passwd root

输入以上命令重设root用户密码,解决一切问题

总结

以上是U盘直装CentOS 8并配置服务器环境教程指南,血与泪的经验,希望对你有所帮助。如有转载或引用请注明。站在巨人的肩膀上看世界。

热门文章

暂无图片
编程学习 ·

C语言二分查找详解

二分查找是一种知名度很高的查找算法,在对有序数列进行查找时效率远高于传统的顺序查找。 下面这张动图对比了二者的效率差距。 二分查找的基本思想就是通过把目标数和当前数列的中间数进行比较,从而确定目标数是在中间数的左边还是右边,将查…
暂无图片
编程学习 ·

GMX 命令分类列表

建模和计算操作命令: 1.1 . 创建拓扑与坐标文件 gmx editconf - 编辑模拟盒子以及写入子组(subgroups) gmx protonate - 结构质子化 gmx x2top - 根据坐标生成原始拓扑文件 gmx solvate - 体系溶剂化 gmx insert-molecules - 将分子插入已有空位 gmx genconf - 增加…
暂无图片
编程学习 ·

一文高效回顾研究生课程《数值分析》重点

数值分析这门课的本质就是用离散的已知点去估计整体,就是由黑盒子产生的结果去估计这个黑盒子。在数学里这个黑盒子就是一个函数嘛,这门课会介绍许多方法去利用离散点最大化地逼近这个函数,甚至它的导数、积分,甚至微分方程的解。…
暂无图片
编程学习 ·

在职阿里5年,一个28岁女软测工程师的心声

简单的先说一下,坐标杭州,14届本科毕业,算上年前在阿里巴巴的面试,一共有面试了有6家公司(因为不想请假,因此只是每个晚上去其他公司面试,所以面试的公司比较少) ​ 编辑切换为居中…
暂无图片
编程学习 ·

字符串左旋c语言

目录 题目: 解题思路: 第一步: 第二步: 第三步: 总代码: 题目: 实现一个函数,可以左旋字符串中的k个字符。 例如: ABCD左旋一个字符得到BCDA ABCD左旋两个字符…
暂无图片
编程学习 ·

设计模式--观察者模式笔记

模式的定义与特点 观察者(Observer)模式的定义:指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式、模型-视图模式&#xf…
暂无图片
编程学习 ·

睡觉突然身体动不了,什么是睡眠痽痪症

很多朋友可能有这样的体验,睡觉过程中突然意识清醒,身体却动弹不了。这时候感觉非常恐怖,希望旁边有一个人推自己一下。阳光以前也经常会碰到这样的情况,一年有一百多次,那时候很害怕晚上到来,睡觉了就会出…
暂无图片
编程学习 ·

深入理解C++智能指针——浅析MSVC源码

文章目录unique_ptrshared_ptr 与 weak_ptrstd::bad_weak_ptr 异常std::enable_shared_from_thisunique_ptr unique_ptr 是一个只移型别(move-only type,只移型别还有std::mutex等)。 结合一下工厂模式,看看其基本用法&#xff…
暂无图片
编程学习 ·

@TableField(exist = false)

TableField(exist false) //申明此字段不在数据库存在,但代码中需要用到它,通知Mybatis-plus在做写库操作是忽略它。,.
暂无图片
编程学习 ·

Java Web day15

第十二章文件上传和下载 一、如何实现文件上传 要实现Web开发中的文件上传功能,通常需要完成两步操作:一.是在Web页面中添加上传输入项;二是在Servlet中读取上传文件的数据,并保存到本地硬盘中。 需要使用一个Apache组织提供一个…
暂无图片
编程学习 ·

【51nod 2478】【单调栈】【前缀和】小b接水

小b接水题目解题思路Code51nod 2478 小b接水 题目 输入样例 12 0 1 0 2 1 0 1 3 2 1 2 1输出样例 6解题思路 可以发现最后能拦住水的都是向两边递减高度(?) 不管两个高积木之间的的积木是怎样乱七八糟的高度,最后能用来装水的…
暂无图片
编程学习 ·

花了大半天写了一个UVC扩展单元调试工具

基于DIRECTSHOW 实现的,用的是MFC VS2019. 详见:http://www.usbzh.com/article/detail-761.html 获取方法 加QQ群:952873936,然后在群文件\USB调试工具&测试软件\UVCXU-V1.0(UVC扩展单元调试工具-USB中文网官方版).exe USB中文网 USB中文…
暂无图片
编程学习 ·

贪心(一):区间问题、Huffman树

区间问题 例题一:区间选点 给定 N 个闭区间 [ai,bi]请你在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。 输出选择的点的最小数量。 位于区间端点上的点也算作区间内。 输入格式 第一行包含整数 N,表示区间数。 接下来 …
暂无图片
编程学习 ·

C语言练习实例——费氏数列

目录 题目 解法 输出结果 题目 Fibonacci为1200年代的欧洲数学家,在他的着作中曾经提到:「若有一只免子每个月生一只小免子,一个月后小免子也开始生产。起初只有一只免子,一个月后就有两只免子,二个月后有三只免子…
暂无图片
编程学习 ·

Android开发(2): Android 资源

个人笔记整理 Android 资源 Android中的资源,一般分为两类: 系统内置资源:Android SDK中所提供的已经定义好的资源,用户可以直接拿来使用。 用户自定义资源:用户自己定义或引入的,只适用于当前应用的资源…
暂无图片
编程学习 ·

零基础如何在短时间内拿到算法offer

​算法工程师是利用算法处理事物的职业 算法(Algorithm)是一系列解决问题的清晰指令,也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。 如果一个算法有缺陷,或不适合于某个问题,执…
暂无图片
编程学习 ·

人工智能:知识图谱实战总结

人工智能python,NLP,知识图谱,机器学习,深度学习人工智能:知识图谱实战前言一、实体建模工具Protegepython,NLP,知识图谱,机器学习,深度学习 人工智能:知识图…
暂无图片
编程学习 ·

【无标题】

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注…