爱盲论坛

标题: 来谈谈我三次给服务器换系统的经历。 [打印本页]

作者: 一路向南    时间: 2021-7-25 15:02
标题: 来谈谈我三次给服务器换系统的经历。
大家好,我其实很少在这里发帖的,但我今天有些没事儿干,于是就来发一个,我曾经三次给VIYF的服务器更换系统,前两次是一号和三号,前几天又换了二号,这些都是我在隔壁论坛写过的,我直接粘贴过来,给刚折腾的服务器小白提供一些经验,也请大佬嘴下留情,当然如果实在想喷,我也来者不拒哈,正文二楼开始。
本帖来自微秘
作者: 一路向南    时间: 2021-7-25 15:02
话说前几天,我们VIYF校园的老k,也就是经常喜欢玩服务器的那个家伙,由于一些原因,打算给VIYF的一号机和三号机换系统,于是,他不知道怎么想的,就找到了我说,向南啊,你想不想尝试给服务器换系统啊,我当时就觉得很好玩,于是我毫不犹豫的就答应了,哪知道,换系统也没有那么简单,当然那是后话。
我对linux命令没有啥深层次的了解,仅仅停留在皮毛而已,所以我这真的是零基础换系统了。
首先,我给一号机换了系统,一号机原来的系统是圣斗士八,我需要换成地板10,首先老k先发了份工作单,于是,我根据工作单的指引,先登录远程桌面我提前预约好的服务器,我当时想用wxcp进行连接,哪知道,我去,这卡的要命,已经无法操作啦,在加上wxcp的命令行读屏是真的很难操作,我就想,怎么办,怎么办啊,后来群里的水木同学给我出了个主意,说,你可以用ssh吗,我茅塞顿开,对啊,咋忘了这东西了呢,因为服务器实在太卡,我就回到了我的本地,打开了cmd,输入ssh IP地址,然后用户名端口,我去咋连不上啊,哦哦,原来是我命令格式错了,应该是:
ssh 用户名@IP地址 -p 端口,哈哈哈,询问你是否连接的对话框出来拉,我输入了yes,然后输入密码回车,噢耶,登上去喽!
登上去的第一步,首先得停止一些非关键的服务,因为你若不停止,可能会出一些问题,好,我就照着工作单上说的,停止php74-fpm和nginx-mysql
我输入systemctl stop php74-fpm回车
在输入systemctl stop nginx-mysql在回车,
嗯嗯,他没有提示,应该停止了,
好了,下面该备份目录啊,我去,需要备份的目录还真多啊,需要备份的目录有:
数据目录
防火墙直接规则文件
防火墙区域目录
Let's Encrypt 证书目录
启动脚本
PHP FPM 配置目录
Ulimit 配置文件
sysctl 优化配置文件
用户家目录
VIYF 服务器配置目录
超级用户目录
工具目录
V2Ray 服务端配置目录
VIYF 服务器 Nginx 服务文件
我去他大爷,我用tar命令来压缩这些目录,把这些目录压缩成一个文件名是backup.tar.gz的文件,嗷嗷熬,路径真多,我输入我输入,啊,终于开始压缩啦。我想,他在压缩,我动动光标,黑,满屏幕跳出了dddddddddddddd,我去,这是中毒了吗,我赶紧把这个事情发到了我们校园群里,结果老k把我骂了一顿,谁让你动光标啊,行行,我重新备份就是了,结果备份到一半,我去,连接咋断了啊,这啥破网络,不可能,我继续打开,这次以防万一,我在czf中间加了个v,使他随时输出压缩进度,嗯嗯,很好,这次终于备份结束拉。
下一步就是把备份文件放到二号机,但我真的不想去那个卡卡的服务器,于是我就想用scp的命令去发送,结果我发现,竟然我不会这个命令,那还不简单吗,可以问老k对不对,结果他还算厚道,把命令的使用方法发给了我,嘿嘿,如果他不发,我就让VIYF的网站多垮一天,嘿嘿开玩笑的,我发送到了二号机之后,就正式开始做系统了。
首先,我先登录到了服务器管理后台,我去,这里的服务器真多,到底是哪个呢,哎不管了,随便选一个,关机,突然老k扯开喉咙声嘶力竭的大喊道,啊,你怎么把三号机给关机了,我说我不知道,老k说,你发个标题给我,我照做了,然后我就听到了他的怒吼,我让你给一号机做系统,你三号机没做吧,我说没有,嗯那就好,我重新选择了一号机,先关机,在创建快照,嗯,一切还算顺利,于是我果断的安装了系统,从此,一号机就由圣斗士8正式换到了地板10。
五分钟后,我再次用ssh登录系统,第一步先修改密码,因为他默认的密码非常难记,好,下面该安装几个东西了。
首先,我们要安装 screen 终端复用器,然后在 screen 终端中,把系统更新到最新版。
嗯嗯,这个不难,我输入:
apt install screen回车,
嗯嗯,好像有个提示框,管他呢,按y,嗯嗯不错,安装成功了。
然后我输入:
screen -s bash -R viyf回车,打开了这个程序,
然后在输入:
apt update && apt upgrade回车,
嗯嗯,中间有几个提示框,要么一路y,要么直接回车,最后系统也更新成功了,我输入reboot让系统重启。
为了服务器性能,安装 Cloud 内核,重启后删掉其它的内核,以及 linux-firmware 软件包。
嗯嗯,这个难度也还可以,我只需要用apt拉来安装cloud,然后删除原来的内核和软件包就行,好,我在重启,嗯嗯,成功。
然后,我用scp命令把备份文件从二号机下载下来,然后用tar解压,有了前面的经验,这一步也没出啥问题,
下面就是安装一些软件了,好吧,我从最简单的certbot 证书申请程序开始,
这个直接用apt命令来安装就可以,至于v2ray和php,老k也算厚道,给我了两个安装说明,虽然是英文的,但我还是能看得懂的是吧,于是这两个软件经过了一番波折,也差不多安装完了,
下面就到了安装最难的nginx了,我去,这咋安装啊,用apt反正不行了,最后还是厚道的老k给我找了安装说明,我去,这代码是真够长的,我贴上来给大家看看。
echo "deb http://nginx.org/packages/debian `lsb_release -cs` nginx" \
| sudo tee /etc/apt/sources.list.d/nginx.list
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add -
sudo apt-key fingerprint ABF5BD827BD9BF62
sudo apt update
sudo apt install nginx
我去,这些反斜杠是咋回事,删了删了,嗷嗷熬,咋执行不了啊,这时候又传出了老k的怒吼,反斜杠是表示看上去换行,系统不换行的符号啊,你删了干啥,哦哦,对不起,我错了,诶诶,咋还执行不了啊,哦哦原来sudo没有安装,话说这地板也真是的,遇到不好执行的命令就傻乎乎的提示我不能执行,你就告诉我一下咋办又咋了,
apt install sudo回车,嗯嗯,这次所有命令都执行成功。我在重启。
下面就是移动目录,重命名文件,修改配置文件等等了,这些就都是体力活了,直接用wxcp去弄就是了,只是需要修改的配置是真多啊,不过还好,记事本的查找功能是很强大的,嗯嗯,经过了一个小时左右,终于修改好了,
最后就是在用ssh登录服务器,创建一个用户,然后启用服务,启用很简单,就是
systemctl start 服务名就可以,至于创建用户,老k已经贴了命令在工作单里了,我只要粘贴就行,嗯嗯,都弄好了,我输入reboot重启,
啊啊,服务器换系统工作结束。

本帖来自微秘
作者: 一路向南    时间: 2021-7-25 15:03
好了,下面我们来说说我给三号机换系统的事儿,本来这个系统是啥dsd的,具体得问老k,现在我们也同样的要把他换成地板10,
首先,还是拿了一份工作单,这次因为有了经验,我直接用ssh登录服务器,第一步先停止相关业务,嗯嗯这个不难,啥,为啥这次的命令不一样,
诶诶,本来不是systemctl stop 服务名吗,现在咋变成了services 服务名 stop了,哎,谁让他不是圣斗士呢,不管不管了,
首先我停止了三号机的nginx和v2ray,诶诶啥,竟然还要让我去一号机停止php7.4和nginxsql,行吧,我在登一次一号机,
嗯嗯,最后还是停止成功了。
为啥要停止一号机上的东西,原因是,三号机是一号机的sql数据库服务器啊,行吧,我任你很,下面就是备份文件,啥,还需要备份mysql,哎,真麻烦,我
我用wxcp来登录了服务器,在/data目录下创建了/mysqlbak目录,嗯嗯,然后在目录里面创建了一个扩展名为.sh的脚本,这个脚本记录了当前服务器的mysql信息,好,下面在回到ssh界面,先cd到这个目录,然后直接输入命令给这个脚本执行的权限,
诶诶,命令是啥来着,貌似不知何时,我把这串命令删除了,我贴不上来了,反正最后我是输入成功了,好好,下面我就来导出数据库,诶诶,为啥试了好几次都不成功啊,我代码没问题啊,不管了,找老k,结果这家伙一次成功,直到现在,我都不知道为啥会出现这种情况。
嗯嗯,然后下面就是用tar命令来压缩一些文件夹了,创建一个backup.tar.gz文件,这次备份的挺少,有以下内容:
数据目录
Let's Encrypt 证书目录
Nginx 配置文件目录
V2Ray 服务端配置目录
超级用户目录
嗯嗯,有了上次的经验,这次不会出问题了,结果是,真的没出问题,好,我这次登陆了我预约的服务器,直接用wxcp把备份文件扔到了服务器d盘,那时候啊,服务器竟然出奇的流畅。
嗯嗯,可以可以,我来安装系统,轻车熟路的打开了服务器管理后台,这次没选错服务器,但我问了一个问题,能不能不创建快照啊,结果老k严肃的说,不能违反安全原则,行吧,我就创建了快照,然后安装了系统。
五分钟后,系统就正式变成了地板10,嗯嗯不错,老规矩,登录第一件事情,先修改密码,然后还是安装screen和更新系统,
然后在安装cloud内核,嗯一定要删除默认内核哦,,然后用wxcp把备份文件上传到服务器,然后用tar命令解压,
嗯嗯,还有安装v2ray,nginx,certbot 证书申请程序,mariadb-server 数据库服务器,
别忘了启动数据库服务器哦,好了,下面就是开始移动文件重命名修改配置这些,有了上次的经验,这也变得更简单。
最后来导入数据库,诶诶,为啥导不进去啊,哦哦,闹了半天我还没给数据库 进行设置呢,
看我输入mysql_secure_installation回车,嗯嗯根据提示设置密码和一些基础设置,现在应该好了哈,我在导入,
大爷的,为啥还是导不进去,不行不行,呼叫老k,结果他也没导入进去,然后他说,你重新创建数据库看看吧,我照着做了,诶诶,真导入进去拉,
导完数据库,我继续来导入权限配置表,诶诶,咋还导不进去,嗯嗯看我继续来创建他的数据库,哈黑,导入进去了。
嗯嗯,终于导玩了,我重启喽,
嗯嗯启动完了,我继续到一号服务器,启动我刚才停止的两项服务,哈哈完成拉。
诶诶,为啥我们VIYF的网站不能访问,提示数据库错误,结果这老k说,你自己去排查一下呗,我哪知道啊,只能对老k说,你去看看吧,结果网站好了,但是为啥出问题,闹了半天我被老k坑了一把,因为有几件事情他没在工作单上说,于是我就没做,
看着老k那副手舞足蹈的样子,我真的想一巴掌拍死他。
好了,这就是我这两天给VIYF服务器的经历。
本帖来自微秘
作者: 一路向南    时间: 2021-7-25 15:04
大家好,本人又来了,还记得我给VIYF的一号和三号服务器换系统的事儿吗,这部,前段时间老k又给我下达了一个任务,给服务器的二号机换系统,换成地板11。
说起这二号机啊,那上面的东西可不少,有我们VIYF的校园网站,还有特教学习资源网的资源,还有其他各种杂七杂八的东西,所以之这次换系统确实非常的困难,首先我还是接到了一份工作单,这次为了网络的稳定,我在VIYF校园云电脑预约了一个广州服务器,我兴冲冲的在群里跟老k说了,结果这家伙居然把我骂了一顿,说,谁让你用广州服务器啊,我工作单里不是写的很清楚吗,用美国服务器,美国服务器啊,你想把文件花三个小时从广州发送到美国,我也不拦你,哎,不好好看文档,就是这个下场。我新说话,谁让你美国服务器岩石太大,行吧,我重新预约美国服务器就是了。不过今天也算是我走运,服务器出奇的流畅。做好准备工作,我就使用我自己的电脑,利用ssh连接上了二号机,
首先我要备份sql数据库,按照工作单里说的,创建 /data/mysqlbak 目录,在其中创建如下脚本,名为 backupmysql.sh:
赋予 backupmysql.sh 可执行权限,运行之。嗯嗯,这个简单,用wxcp登录服务器然后创建文件并且写上内容就行,至于赋予权限吗,直接用sshcd到那个目录然后输入,chmod +x backupmysql.sh,回车,嗯嗯成功,下一步就来导出数据库了,我执行以下代码,mysql -u用户名 -p密码 -BNe "select concat('\'',user,'\'@\'',host,'\'') from mysql.user where user != 'root'" | \
while read uh; do mysql -BNe "show grants for $uh" | sed 's/$/;/; s/\\\\/\\/g'; done > grants.sql,诶诶,为啥不成功,哦闹了半天密码要加引号,咦,为啥导出来的数据库有问题,不知道,算了强制解决,使用mysqldump -uroot -p --lock-all-tables --all-databases > all.sql,嗯嗯貌似成功了。
然后就停止一些服务,比如像是v2ray啊,啥php啊,啥nginx之类的,这个直接用systemctl stop解决。诶诶,貌似忘了一个事情,没有备份文件,算了我继续用ssh来搞,啥,为啥连不上去,哦哦,闹了半天由于我把某些东西停止了,导致我这边挂了梯子的电脑不能正常连接,不过没事儿,把梯子退了就是。嗯嗯,连接上了,我输入tar czvf这个命令来创建一个backup.tgz,文件,我需要备份的很多,这些分别是,
数据目录
FRP 客户端配置文件
防火墙直接规则文件
防火墙区域目录
Let's Encrypt 证书目录
启动脚本
PHP FPM 配置目录
超级用户目录
工具目录
V2Ray 服务端配置目录
Softether VPN 服务器配置文件
嗯嗯,我输入,回车,开始压缩喽,啥情况,咋不动了,哦,原来这ssh犯病了,断开了,我重新登录,这次先打开了终端复用器,然后在进行压缩,嗯嗯,这次成功,我进入美国服务器,用wxcp将备份文件下载到学生机上,我滴个娘,真大,有13多g,好吧,不过速度还不错,确实是下载玩了,然后就是重装系统了,还是跟上次一样,先关闭服务器,创建快照,直接选择地板10,点击安装,嗯嗯过了一会安装成功,然后继续用ssh连接服务器,第一件事情就是修改密码,要知道,我第一次输入那个密码我都费劲死了,修改完之后,首先用apt install来安装screen终端复用器,并且安装cloud内核,并且使用,apt autoremove linux-image-amd64,来删除默认内核,然后就是使用终端复用器,在使用apt update 和 apt upgrade来更新软件包,好了之后在使用他来升级系统到地板11,首先我们需要修改 /etc/apt/sources.list 文件。将 buster/updates 替换为 bullseye-security,将所有 buster 改成 bullseye。
修改之后,运行 screen -s bash -R deb11,并在新开的 screen 窗口运行升级命令。
使用 apt update 更新软件包索引,再用 apt full-upgrade 命令将系统升级到地板11。
这个直接跟着提示走就可以,好了之后别忘了复查安装版本,看看是不是11.0,反正我这里是成功了。
从备份服务器取回 tar.gz 备份文件,下载后注意核对 Sha256,然后释放到原先的位置。嗯嗯,工作单原文哈,讲的很清楚,诶诶,为啥我解压不开啊,哦哦,闹了半天这老k把工作单写出问题了,我们前面的文件是backup.tgz,这写的啥鬼东西,算了,老k还说我纠错能力不行,感觉他挺有理是的哈哈,我重新解压,嗯嗯成功。
certbot 证书申请程序
V2Ray
php,包括 bcmath、cli、fpm、gd、json、mbstring、mysqlnd、opcache、pdo、sqlite、xml、xmlrpc 等常用模块
nginx
第一个没有问题,第二个,php为啥很多模块都装不上啊,第三个,为啥装的也有问题,算了只能呼叫老k,他说,算了,你先下去吧,我来看看,结果,php是真的有几个模块装不上,至于nginx,奇迹般的恢复到了默认版,导致老k还使用nginx恢复文件将他恢复了,而且还问我,你是不是中途断开过ssh,我说没办法啊,他总是犯病自己断开,后来有人给了我两个建议,第一是,以后用校园服务器连接ssh,第二是,最好全程用终端复用器做事情,更好玩的是,老k还问我,你备份文件是不是有问题,大小严重缩水,我说没问题啊,结果确实是老k看错了,这家伙只知道看校验内容,我让他自己去学生机看去,哈哈。
后来至于导入sql数据库啥的,我也不想做了,毕竟这已经是最后一部了,而且我换这个服务器的系统非常不顺利,算了交给老k,好,最后是,服务器顺利的换到了地板11。
本帖来自微秘
作者: 追梦人    时间: 2021-7-25 17:43
大脑有没有V2RAY啊?给我一个节点吧。我看看行不行?
来自 畅游助手
作者: 追梦人    时间: 2021-7-25 17:50
怎么搭建这是高难度的活,你们这些大佬才会。
来自 畅游助手




欢迎光临 爱盲论坛 (https://aimang.net/) Powered by Discuz! X3.2