CentOS8服务器运维记录

最近需要在CentOS8中部署一个大型系统,因此记录一下CentOS8的运维过程。

环境配置

  • 联想图形工作站ThinkStation P720
  • CentOS 8.5.2111
  • NVIDIA-Linux-x86_64-535.113.01.run

CentOS8系统安装

请参考:

重点在磁盘分区那块。

Yum本地源配置

请参考:

具体步骤如下:

  • 准备yum本地源。yum源可以来自CentOS8的安装光盘,也可以通过工具 reposync 、createrepo 自建,并挪到本地。
1
2
3
4
5
6
7
8
9
[centos@yum-srv ~]$ sudo mkdir -p /repos/centos-8-x86_64
[centos@yum-srv ~]$ sudo dnf install yum-utils createrepo
[centos@yum-srv ~]$ sudo dnf repolist
[centos@yum-srv ~]$ sudo reposync --repoid=AppStream --repoid=BaseOS --repoid=extras -p /repos/centos-8-x86_64
[centos@yum-srv ~]$ sudo wget -O /repos/centos-8-x86_64/RPM-GPG-KEY-CentOS-Official http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official

[centos@yum-srv ~]$ sudo createrepo -p /repos/centos-8-x86_64/AppStream
[centos@yum-srv ~]$ sudo createrepo -p /repos/centos-8-x86_64/BaseOS
[centos@yum-srv ~]$ sudo createrepo -p /repos/centos-8-x86_64/extras
  • 配置本地yum源。
1
2
3
4
5
6
7
8
[root@yum-srv]# vim /etc/yum.repos.d/CentOS-Media.repo

[local]
name=local repo
baseurl=file:///mnt/cdrom/BaseOS
enable=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficia
  • 屏蔽默认的其他网络镜像
1
[root@yum-srv]# vim /etc/yum.repos.d/CentOS-Base.repo

在base,AppStream,Extra三个镜像源中分别添加enabled=0即可。

  • 更新yum源并验证结果
1
2
3
[root@yum-srv]# yum clean all
[root@yum-srv]# yum makecache
[root@yum-srv]# yum search java

Nvidia显卡驱动安装

请参考:

具体步骤如下:

1
2
[root@yum-srv]# yum install -y kernel-devel elfutils-libelf-devel
[root@yum-srv]# ./NVIDIA-Linux-x86_64-535.113.01.run

FTP服务配置

请参考:

具体步骤如下:

  • 安装vsftpd+ftp
1
2
sudo yum install -y vsftpd
sudo yum install -y ftp # 测试使用,搭建FTP服务器只需要vsftpd
  • 开启服务
1
systemctl start vsftpd
  • 设置开机启动
1
2
systemctl list-unit-files | grep vsftpd
chkconfig vsftpd on
  • ftp用户登录测试

在Windows资源管理器地址栏中输入ftp://ip,在弹出的登录窗口中输入用户名和密码登录,然后验证上传和下载文件功能是否正常。

VNC远程桌面配置

请参考:

具体步骤如下:

  • 安装VNC服务器和客户端
1
sudo yum install -y tigervnc-server tigervnc
  • 为本地用户设置 VNC 密码
1
2
[root@linuxtechi ~]# su - pkumar
[root@linuxtechi ~]$ vncpasswd
  • 配置VNC服务器

默认的配置文件在/lib/systemd/system/vncserver@.service,以及/etc/tigervnc/目录。

编辑用户配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
$ sudo vim /etc/tigervnc/vncserver.users

# TigerVNC User assignment
#
# This file assigns users to specific VNC display numbers.
# The syntax is <display>=<username>. E.g.:
#
# :1=andrew
# :2=lisa
# :1 表示这个启动的端口为。5901,之后一次类推 :2 为 5902;
# :2=pkumar 表示 5902 为 pkumar 用户的远程连接;
:2=pkumar
  • 设置VNC服务器开机自启动
1
2
3
4
# 将创建vncserver@:2.service符号链接到vncserver@.service
systemctl enable vncserver@:2.service
# 启动服务
systemctl start vncserver@:2.service

在 @: 后面的数字 2 定义了 VNC 服务将会监听的显示端口,我们将会使用 2 ,这意味着 VNC 服务器将会监听 5902端口。

  • 连接VNC服务器
1
vncviewer 192.168.11.11:5902

NFS文件共享配置

请参考:

具体步骤如下:

  • nfs服务器安装配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 安装启动nfs服务
$ sudo yum install nfs-utils
$ sudo systemctl enable rpcbind
$ sudo systemctl enable nfs-server.service
$ sudo systemctl start rpcbind
$ sudo systemctl start nfs-server.service

# 关闭防火墙
$ sudo systemctl stop firewalld
$ sudo systemctl disable firewalld

# 设置共享文件夹
$ sudo vi /etc/exports

# 重启nfs服务
$ sudo systemctl restart nfs-server

# 在多台机器之间复制文件
# 复制文件
$ scp ./source.txt user@192.168.11.11:/home/user/
$ scp user@192.168.11.11:/home/user/source.txt ./
# 复制目录
$ scp -r ./dataDir user@192.168.11.11:/home/user/
$ scp -r user@192.168.11.11:/home/user/dataDir/ ./
  • nfs客户端安装配置
1
2
3
4
5
6
7
8
# 安装NFS客户端
$ sudo yum install nfs-common

# 设置开机自动挂载
$ sudo vim /etc/fstab

# 添加如下内容
192.168.11.11:/home/share/ /mnt/share nfs rw,auto,nofail,noatime,nolock,intr,tcp,actimeo=1800,noac 0 0

常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# 查看进程
ps -ef | grep -i java

# 杀死进程
kill -9 2333

# 使用户具有sudo权限
# 添加用户到具有sudo权限的用户组
usermod -aG wheel username
# 将用户添加到sudoers文件
vim /et sudoers

# 查看用户输入那些组
groups username
getent group
cat /etc/group
cat /etc/passwd

# 查看系统信息
uname -a
uname -r

# 查看系统中设置的终端开启个数
cat /etc/sysconfig/init |egrep tty

# 查看可执行程序位置
which java

# 查看网络端口
netstat -antp
ifconfig

# 使目录下创建的文件属于某个特定的用户组
# 创建用户组
groupadd ateam
# 把用户加到该用户组
usermod -a -G ateam tom
usermod -a -G ateam jerry
# 修改目录为该用户组所有
chgrp -R ateam /srv/blah/
chmod -R g+srw /srv/blah/
setfacl -R -m group:ateam:rwx /srv/blah/

# 解决/var/run/docker.sock 属于 root:root的问题
usermod -aG docker <USER>
systemctl restart docker

参考链接

  1. CentOS 8 安装图解,by linux中国.
  2. Centos8配置本地yum源教程超详细,by yj2434.
  3. centos8 安装nvidia 显卡驱动(一路踩坑一路填),by robator.
  4. CentOS8搭建FTP服务器,by 氷泠.
  5. CentOS7 下 VNC 安装配置详细操作指引,by adong2838.
  6. Centos8挂载NFS共享文件夹,by 遗忘的迟来的风.
  7. 在 CentOS 上如何将用户添加到 Sudoers,by 雪梦科技.
  8. linux的系统版本查看和开启的终端个数,by weixin_34043301.
  9. tcp与tcp6的区别,by 开始认识.
  10. NVIDIA Driver Installation Quickstart Guide,by nvidia.
  11. Linux scp命令远程拷贝复制,by 我只是一个小白木木.
  12. Linux 下创建文件时指定用户组,by Jerry Shang.
  13. setfacl命令的基本用法,by yearing1017.
  14. /var/run/docker.sock socket is inconsistent with permissions (root:root | root:docker ),by github.
  15. docker.sock permission denied,by stackoverflow.