Ubuntu服务器更换系统磁盘重装系统笔记(非教程)

重装系统

1、Ubuntu系统的版本选择22.04;

2、用U盘制作安装启动盘;

3、安装过程中选择“精简安装”;

4、如果是专线,安装完成之后首次进入系统设置固定IP(重启生效);

5、进行一次“sudo apt update”和“sudo apt upgrade”;

系统设置

安装和启用ssh

确保SSH服务器已安装:

sudo apt-get install openssh-server

启动SSH服务:

sudo systemctl start ssh

SSH 服务在开机时自动启动:

sudo systemctl enable ssh

检查服务状态:

sudo systemctl status ssh

确保防火墙允许SSH:

sudo ufw allow ssh

更换apt软件源

为了apt安装程序的下载速度更快,我们可以在安装了Ubuntu操作系统之后将Ubuntu的apt源替换为腾讯的软件源,要将 Ubuntu 的 apt 更新源更换为腾讯的软件源,可以按照以下步骤操作:

由于这个步骤我们需要编辑文本文件,所以我们需要先按照一个vim的编辑器

sudo apt install vim

然后运行如下的命令编辑源列表文件:

sudo vim /etc/apt/sources.list

将文件内容替换为以下内容:

deb https://mirrors.cloud.tencent.com/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.cloud.tencent.com/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.cloud.tencent.com/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.cloud.tencent.com/ubuntu/ jammy-security main restricted universe multiverse

保存并退出

再次更新软件包列表:

sudo apt update

完成这些步骤后,系统就会使用腾讯的软件源进行更新和安装。

挂载磁盘(略)

详见《Ubuntu硬盘分区、挂载、修改用户权限

安装必要程序

安装nvidia驱动

运行下面的命令,安装nvidia的驱动

sudo apt install nvidia-driver-535

安装完成之后重启服务器

 sudo reboot

检查驱动是否安装成功

nvidia-smi

如果可以看到显卡的列表,就表明驱动已经安装成功了!

显卡优化

打开终端并编辑/etc/rc.local文件:

sudo vim /etc/rc.local

将下面的内容粘贴到文件里面

#!/bin/sh -e
/usr/bin/nvidia-smi -pm 1
/usr/bin/nvidia-smi -lgc 1400
/usr/bin/nvidia-smi -pl 200
exit 0

按“ESC”键,输入“:wq”保存并退出编辑模式

为文件赋予执行权限:

sudo chmod +x /etc/rc.local

重启服务器

sudo reboot

安装CUDA

运行如下两行命令:

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run

安装的时候记得去掉安装 driver 的选项,因为上面已经装过了

如果在安装的过程中提示如下的错误:

Failed to verify gcc version. See log at /var/log/cuda-installer.log for details.

可以先安装gcc,再安装cuda

sudo apt install gcc

是否安装gcc成功,可以通过下面的命令查看:

gcc --version

添加CUDA到环境变量

编辑下面的文件

sudo vim ~/.bashrc

将下面三行命令添加到文件的末尾:

export PATH=$PATH:/usr/local/cuda-11.8/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.8/lib64
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda-11.8/lib64

最后运行以下命令使更改生效:

source ~/.bashrc

然后通过运行下面的命令就可以查看cuda的版本了!

nvcc --version

安装MySQL

更新到最新版本

sudo apt update

安装mysql-server

sudo apt-get install mysql-server

检查MySQL状态

sudo systemctl status mysql

为root用户设置密码

因为是全新安装的 MySQL,可能不需要密码即可使用 sudo 登录

sudo mysql

切换到 MySQL 数据库:

USE mysql;

在 MySQL 5.7 及更高版本

ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

刷新权限表

FLUSH PRIVILEGES;

设置密码之后如果root用户依然可以通过mysql -u root命令无密码登陆,我们可以检查是否由 auth_socket 插件导致的

mysql -u root
USE mysql;
SELECT user, host, plugin FROM user WHERE user = 'root';

输出中,如果 plugin 列显示的是 auth_socket,说明 root 用户通过 auth_socket 插件进行身份验证,不需要密码。
这时候为了安全,我们需要将身份验证插件改为 mysql_native_password 或 caching_sha2_password。执行以下命令:

ALTER USER 'root'@'localhost' IDENTIFIED WITH 'mysql_native_password' BY '你的密码';

重新刷新权限

FLUSH PRIVILEGES;

新建非root用户

CREATE USER 'newUser'@'localhost' IDENTIFIED BY 'newPassword';
GRANT ALL PRIVILEGES ON *.* TO 'newUser'@'localhost';
FLUSH PRIVILEGES;

其中:newUser是你新用户的名字,newPassword是你新用户的密码;日常使用可以用该用户进行操作,增强安全性;

退出登陆数据库

EXIT;

指定数据库保存路径

在目标位置新建目录(如果是重装系统,则之前已经有该目录和数据,此步骤省略

sudo mkdir /mnt/disk2/mysqldata

为新目录赋予权限

sudo chmod 755 /mnt/disk2/mysqldata

设置目录的拥有者

sudo chown -R mysql:mysql /mnt/disk2/mysqldata

移动数据库文件到新目录

停止MySQL服务,在移动数据库文件之前,需要先停掉MySQL的服务,避免数据库文件发生损坏

sudo systemctl stop mysql

复制文件到新目录(如果是重装系统,则之前已经有该目录和数据,此步骤省略

sudo rsync -av /var/lib/mysql/ /mnt/disk2/mysqldata/

删除原目录

sudo rm -rf /var/lib/mysql

初始化数据库(如果是重装系统,则之前已经有该目录和数据,此步骤省略

sudo mysqld --initialize --user=mysql --datadir=/mnt/disk2/mysqldata

修改配置文件

修改mysqld.cnf配置文件

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

Ubuntu服务器更换系统磁盘重装系统笔记(非教程)

将 # datadir取消注释,并且将等号后面的路径修改为你实际的路径

datadir = /mnt/disk2/mysqldata

修改apparmor文件

sudo vim /etc/apparmor.d/usr.sbin.mysqld

Ubuntu服务器更换系统磁盘重装系统笔记(非教程)

将下面的代码

# Allow data dir access
/var/lib/mysql/ r,
/var/lib/mysql/** rwk,

修改为

# Allow data dir access
/mnt/disk2/mysqldata/ r,
/mnt/disk2/mysqldata/** rwk,

安装apparmor

sudo apt install apparmor

重新加载 AppArmor 配置

sudo apparmor_parser -r /etc/apparmor.d/usr.sbin.mysqld

重启apparmor服务

sudo service apparmor restart

后续操作

重新启动MySQL服务

sudo service mysql restart

重新登录MySQL

mysql -u root -p

登录之后可以通过下面的命令查看自定义的数据库路径是否正确

SHOW VARIABLES LIKE 'datadir';
+---------------+-----------------------+
| Variable_name | Value |
+---------------+-----------------------+
| datadir | /mnt/disk2/mysqldata/ |
+---------------+-----------------------+
1 row in set (0.01 sec)

安装Nginx

可以通过以下命令进行安装:

sudo apt install nginx

安装完成后,启动Nginx并使其开机自启动:

sudo systemctl start nginx
sudo systemctl enable nginx

安装PHP

安装PHP相关的库

phpMyAdmin需要PHP的支持,使用以下命令安装PHP及其相关模块:

sudo apt install php-fpm php-mysql

根据需要安装其他PHP模块,比如:

sudo apt install php-cli php-zip php-gd php-json php-curl

查看 PHP-FPM 版本号

要查看 PHP-FPM 的版本可以通过如下的命令:

sudo ls /run/php/

Ubuntu服务器更换系统磁盘重装系统笔记(非教程)

这里我们查看到的PHP-FPM的版本是8.1,我们记住这个版本号,后面用得到!

确保 PHP-FPM 正常运行

确认 PHP-FPM 正在运行,并且匹配我们上面检测到的版本:

sudo systemctl status php8.1-fpm

如果 PHP-FPM 没有运行,启动它:

sudo systemctl start php8.1-fpm

安装phpMyAdmin

现在安装phpMyAdmin:

sudo apt install phpmyadmin

安装过程中会提示选择Web服务器,默认不提供Nginx的选项。你可以选择“Apache2”(但不会实际配置Apache),然后在配置完成后,我们手动配置Nginx。

接着,会提示你选择是否配置数据库并提供phpmyadmin数据库的管理员用户和密码,因为我们已经介绍过安装MySQL,这里就可以直接在安装phpmyadmin的过程中设置phpmyadmin的账号和密码

手动配置phpMyAdmin与Nginx

phpMyAdmin的安装文件通常会放在 /usr/share/phpmyadmin 目录中。我们需要为 phpMyAdmin创建 Nginx的配置文件。

修改Nginx的配置文件

首先,编辑Nginx的虚拟主机配置文件(这里以default为例,具体路径可能因配置不同而变化):

sudo vim /etc/nginx/sites-available/default

具体内容(省略)

也可以直接从原磁盘中用文本编辑器打开原来的default文件,再用终端通过上面的命令编辑现在的default文件,然后将原default文件中的内容完整替换掉新的default文件中的内容!

测试 Nginx 配置

修改完配置文件后,使用以下命令检查 Nginx 配置文件的语法是否正确:

sudo nginx -t

如果配置文件正确,会看到类似于以下输出:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

重启服务

在修改配置后,确保重启 Nginx 和 PHP-FPM:

sudo systemctl restart nginx
sudo systemctl restart php8.1-fpm

复制原磁盘中的程序

可以直接将原磁盘中的重要程序复制到新磁盘同样的路径

复制miniconda

直接将“miniconda3”这个文件夹全部拷贝到新磁盘的同路径下,比如原来磁盘中这个文件夹在根目录中“/home/你的名称/miniconda3”,拷贝过来依然放在“/home/你的名称/miniconda3”的位置

更新路径:确保 PATH 环境变量中包含 Miniconda 的路径。可以在终端中运行以下命令:

echo 'export PATH="/home/caovan/miniconda3/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc

初始化 Miniconda:如果之前没有进行过初始化,可以使用以下命令:

conda init

然后重启终端,或者运行 source ~/.bashrc

验证安装:可以通过运行以下命令来验证 Miniconda 是否正常工作:

conda --version

检查环境:如果你有多个环境,确保在新路径下能够访问这些环境:

conda env list

完成以上步骤后,Miniconda 应该能够正常使用。

更换pip源

要将Miniconda的pip源更换为腾讯的源,可以按照以下步骤操作:

创建或编辑全局pip配置文件

打开终端,输入以下命令以创建或编辑全局pip配置文件:

mkdir -p ~/.config/pip
vim ~/.config/pip/pip.conf

添加腾讯源配置

在打开的pip.conf文件中,添加以下内容:

[global]
index-url = https://mirrors.cloud.tencent.com/pypi/simple

保存并退出

运行以下命令以确认pip的配置:

pip config list

复制其他程序

如果没有牵涉到修改环境变量的,都可以直接将整个文件夹复制到同路径完事!如果需要修改环境变量的,参考miniconda的方法!

其他设置

禁止显示版本升级信息

作为以稳定运行为前提的Ubuntu服务器,版本升级往往会带来不可预估的风险,在日常工作功能都能正常满足的前提下,我们要尽量避免给升级进行版本升级,如下的步骤可以屏蔽登录时候的版本升级提示

切换到如下的目录

cd /etc/update-motd.d/

对91-release-upgrade文件进行改名

sudo mv /etc/update-motd.d/91-release-upgrade /etc/update-motd.d/91-release-upgrade.bak

这样在打开终端或者登录ssh的时候,就不会提示版本升级信息了,避免手贱的员工对服务器进行版本升级

修改release-upgrades文件

sudo vim /etc/update-manager/release-upgrades

将该文件中的prompt设置为never

Prompt=never

这样可以禁用版本升级提示

禁止自动进入base虚拟环境

在我们安装了miniconda3之后,我们再次登录ssh的时候会发现总是自动进入到base虚拟环境中,运行如下的命令可以禁止自动进入到base虚拟环境:

conda config --set auto_activate_base false

这样我们再次打开ssh进行登录的时候,就不会自动进入到以(base)开头的虚拟环境了!

原创文章,作者:朋远方,如若转载,请注明出处:https://caovan.com/ubuntufuwuqizhongzhuangxitongbijifeijiaocheng/.html

Like (0)
Donate 微信扫一扫 微信扫一扫
朋远方的头像朋远方
Previous 2024年10月19日 下午10:42
Next 2024年10月24日 上午8:58

相关推荐

发表回复

Please Login to Comment