美文网首页Linux
Linux服务器管理手册

Linux服务器管理手册

作者: 鲜橙 | 来源:发表于2019-08-07 14:45 被阅读1次

    实习期间担任了实验室的运维,管理四台服务器,学到了很多Linux管理的知识,现在整理如下

    docker


    安装

    docker.io是旧版本,不建议使用。一般使用docker-ce。官方安装教程

    启动

    sudo service docker start

    docker中使用nvidia

    安装nvidia-docker

    1. 注意其示意图显示cuda是需要安装在容器中的,因此基础镜像最好从docker仓库的nvidia-cuda拉取

    2. 注意其有两个版本,两个版本进入nvidia环境的命令参数不同

    docker中使用opengl

    基础镜像请从nvidia-opengl拉取

    docker中开启图形界面

    1. 解除Xserver访问限制 xhost +

    2. 运行镜像时有两种选择

    • 使用宿主机网络
    docker run --env="DISPLAY" --net=host \
    --volume="$HOME/.Xauthority:/root/.Xauthority:rw" \
    --env="QT_X11_NO_MITSHM=1" \
    -v /tmp/.X11-unix:/tmp/.X11-unix:ro -it \
    -v /home:/out_home --name ros_slam ros_slam_image:19-7-22 /bin/bash
    
    • 使用独立网络
    docker run -it     --env="DISPLAY"   \
    --env="QT_X11_NO_MITSHM=1"   \
     --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw"  \
    --volume="$HOME/.Xauthority:/root/.Xauthority:rw"   osrf/ros:indigo-desktop-full     /bin/bash
    

    进入容器后查看mobaxterm的x server的地址,将DISPLAY变量改为x_server_ip:0.0,此时若出现问题,可先关闭本地防火墙之后再行试验。 注意 x11 remote access设置为full,去掉RANDR的勾选,如下图


    mobaxterm设置
    1. 附测试下x11图形界面的小程序,为xclockxeyes,若没有这两个小程序则安装x11-apps

    nfs系统相关命令


    安装配置

    参考 https://blog.csdn.net/CSDN_duomaomao/article/details/77822883

    服务端操作

    启动

    sudo /etc/init.d/nfs-kernel-server start

    sudo /etc/init.d/nfs-kernel-server restart

    编辑共享文件夹

    sudo vim /etc/exports

    客户端操作

    手动挂载

    显示可挂载点 showmount -e 10.0.20.230

    客户端挂载 sudo mount 10.0.20.230:/home /home/share_home

    取消挂载 umount /root/remote_dir

    设置系统挂载

    为了使得系统能开机自动挂载,需要设置系统挂载

    编辑/etc/fstab文件,添加如下(注意nfs):

    10.0.20.30:/home /home/share_home nfs defaults 0 2

    FTP


    安装

    sudo apt-get install vsftpd

    启动

    sudo service vsftpd start

    查看ftp运行状态

    sudo service vsftpd status

    配置文件

    /etc/vsftpd.conf

    Xrdp安装设置


    1. 安装xrdp sudo apt-get install xrdp

    2. 安装vnc4server sudo apt-get install vnc4server

    3. 安装xfce4 sudo apt-get install xubuntu-desktop

    4. 配置xfce4 sudo vi /etc/xrdp/startwm.sh. /etc/X11/Xsession前一行插入 xfce4-session

    5. 重启xrdp `sudo service xrdp restart

    防火墙设置


    目前基本全都允许通过了,如果以后还需要进行网络控制,则参考本节

    1. 设置内网允许通过 iptables -A INPUT -s 10.0.20.0/24 -j ACCEPT

    2. 设置特定IP(特定主机)可通过

    iptables -A INPUT -s github.com -j ACCEPT
    iptables -A INPUT -s 8.8.8.8 -j ACCEPT
    ......
    
    1. 最后,设置其他地址不可通过,请注意,此步骤必须放在最后

      iptables -A INPUT -s 0.0.0.0/0 -j DROP

    服务器加装硬盘(raid1)以及/home目录迁移到新硬盘


    1. lsblk查看硬盘名称

    2. sudo apt-get install mdadm 安装mdadm

    3. sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc 制作raid1,最后两个参数参看步骤1

    4. sudo mkfs.ext4 /dev/md0 格式化为ext4格式的文件系统

    5. sudo mkdir /media/md0 创建一个目录以供挂载

    6. sudo mount /dev/md0 /media/md0 硬盘挂载在上一步的目录中

    7. sudo rsync -avx /home/ /media/md0/ 将home目录备份到刚刚挂载的硬盘中(注:这一过程可能要很久,可以使用tmux管理这个进程)

    8. (可选)sudo rm -rf /home/* 删除home目录下的所有文件

    9. sudo mount /dev/md0 /home 将硬盘挂载到home目录

    10. sudo blkid 查看硬盘信息,记录UUID

    11. 编辑/etc/fstab文件,添加如下(根据上一步的信息)

    UUID=175ab25f-5190-4df7-8795-8a00a0f78fd6 /home ext4 defaults 0 2

    1. df -h 查看挂载情况

    2. 附:findmnt, 以树形结构图的方式列出所有已挂载的文件系统

    全新服务器配置环境


    1. 安装docker-ce(官网教程)和nvidia-docker(https://github.com/NVIDIA/nvidia-docker),创建个人账户并加入visudo

    2. 硬盘分区(https://www.cnblogs.com/yinzhengjie/p/6844372.html),格式化,挂载

    3. 安装与设置FTP

    4. 安装NFS

    5. 将硬盘挂载和NFS远程挂载写入/etc/fstab,NFS挂载要注意协议为nfs:

      10.0.20.30:/home /home/share_home **nfs** defaults 0 2

    6. 安装nvidia驱动

    7. 按照官网教程进行cuda安装(教程中少了最后一步 sudo apt-get install cuda)

      附1:安装完之后需要重启,否则nvidia-smi会显示错误

      附2:查看cuda版本 nvcc -V; 如果找不到nvcc -V就到/usr/local/cuda-10.1/bin/目录寻找

    8. 按照官方教程安装cudnn(Bird服务器因为cudnn下载不下来所以未安装)

    9. 安装vnc4server,这里注意要安装 ~/.vnc/xstartup 当中的依赖项

    10. Opencv,下载之后按照官网教程,查看版本pkg-config --modversion opencv

    琐碎项


    账户相关

    创建用户

    首先 sudo useradd -m -d /home/someone -G docker someone -s /bin/bash

    然后 passwd someone

    用户加入用户组(以docker组为例)

    usermod -a -G docker someone

    权限操作

    sudo权限

    使用visudo进行修改,指定一部分用户拥有sudo权限

    文件权限修改

    将某个文件权限改为rwxr-xr--有两种方式

    1. chomd 754 filename,一个数字代表三位二进制,7 for rwx, 5 for r-x, 4 for r--

    2. chomd u=rwx, g=rx, o=r filename, u for user, g for group, o for others

    将某个文件改变拥有者的命令为 chown

    进程相关

    1. 以依赖树的形式展示进程 pstree

    2. 以文本匹配的方式kill进程 pkill。 注:匹配内容可以是用户名,可以是命令

    3. 以后台形式运行 (cmd) &

    4. 查看某个进程详细信息 ps pid

    5. 查看端口占用情况 lsof -i:port

    查看文件夹大小(以home为例)

    sudo du -h /home --max-depth=1

    禁用远程服务

    禁用sftp

    /etc/ssh/sshd_config中的

    Subsystem sftp ...替换为Subsystem sftp /bin/false

    禁用scp(tricks)

    重命名scp使得系统找不到scp:

    mv /usr/bin/scp /usr/bin/scp_hidden

    禁用USB存储设备

    编辑 /etc/modprobe.d/blacklist.conf,添加两行,然后重启电脑

    black uas
    black usb_storage
    

    开机自动运行指令

    将需要开机时执行的指令写入/etc/rc.local

    安装cmake

    安装cmake时,按照这里(https://askubuntu.com/a/610352)的第二种方法编译安装(选择make install而非checkinstall),之后再运行hash –r即可

    使用镜像加速

    pip安装时使用清华镜像

    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

    ubuntu使用清华软件源

    查看该网址,https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/

    相关文章

      网友评论

        本文标题:Linux服务器管理手册

        本文链接:https://www.haomeiwen.com/subject/uhmodctx.html