實習期間擔任了實驗室的運維,管理四臺服務器揣云,學到了很多Linux管理的知識捕儒,現(xiàn)在整理如下
docker
安裝
docker.io是舊版本,不建議使用邓夕。一般使用docker-ce刘莹。官方安裝教程
啟動
sudo service docker start
docker中使用nvidia
注意其示意圖顯示cuda是需要安裝在容器中的,因此基礎鏡像最好從docker倉庫的nvidia-cuda拉取
注意其有兩個版本焚刚,兩個版本進入nvidia環(huán)境的命令參數(shù)不同
docker中使用opengl
基礎鏡像請從nvidia-opengl拉取
docker中開啟圖形界面
解除Xserver訪問限制
xhost +
運行鏡像時有兩種選擇
- 使用宿主機網(wǎng)絡
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
- 使用獨立網(wǎng)絡
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,此時若出現(xiàn)問題矿咕,可先關閉本地防火墻之后再行試驗抢肛。 注意 x11 remote access設置為full,去掉RANDR的勾選碳柱,如下圖
- 附測試下x11圖形界面的小程序捡絮,為
xclock
,xeyes
莲镣,若沒有這兩個小程序則安裝x11-apps
nfs系統(tǒng)相關命令
安裝配置
參考 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
設置系統(tǒng)掛載
為了使得系統(tǒng)能開機自動掛載福稳,需要設置系統(tǒng)掛載
編輯/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運行狀態(tài)
sudo service vsftpd status
配置文件
/etc/vsftpd.conf
Xrdp安裝設置
安裝xrdp
sudo apt-get install xrdp
安裝vnc4server
sudo apt-get install vnc4server
安裝xfce4
sudo apt-get install xubuntu-desktop
配置xfce4
sudo vi /etc/xrdp/startwm.sh
在. /etc/X11/Xsession
前一行插入xfce4-session
重啟xrdp `sudo service xrdp restart
防火墻設置
目前基本全都允許通過了剥悟,如果以后還需要進行網(wǎng)絡控制灵寺,則參考本節(jié)
設置內網(wǎng)允許通過
iptables -A INPUT -s 10.0.20.0/24 -j ACCEPT
設置特定IP(特定主機)可通過
iptables -A INPUT -s github.com -j ACCEPT
iptables -A INPUT -s 8.8.8.8 -j ACCEPT
......
-
最后,設置其他地址不可通過区岗,請注意略板,此步驟必須放在最后
iptables -A INPUT -s 0.0.0.0/0 -j DROP
服務器加裝硬盤(raid1)以及/home目錄遷移到新硬盤
lsblk
查看硬盤名稱sudo apt-get install mdadm
安裝mdadmsudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
制作raid1,最后兩個參數(shù)參看步驟1sudo mkfs.ext4 /dev/md0
格式化為ext4格式的文件系統(tǒng)sudo mkdir /media/md0
創(chuàng)建一個目錄以供掛載sudo mount /dev/md0 /media/md0
硬盤掛載在上一步的目錄中sudo rsync -avx /home/ /media/md0/
將home目錄備份到剛剛掛載的硬盤中(注:這一過程可能要很久慈缔,可以使用tmux管理這個進程)(可選)
sudo rm -rf /home/*
刪除home目錄下的所有文件sudo mount /dev/md0 /home
將硬盤掛載到home目錄sudo blkid
查看硬盤信息叮称,記錄UUID編輯
/etc/fstab
文件,添加如下(根據(jù)上一步的信息)
UUID=175ab25f-5190-4df7-8795-8a00a0f78fd6 /home ext4 defaults 0 2
df -h
查看掛載情況附:
findmnt
藐鹤, 以樹形結構圖的方式列出所有已掛載的文件系統(tǒng)
全新服務器配置環(huán)境
安裝docker-ce(官網(wǎng)教程)和nvidia-docker(https://github.com/NVIDIA/nvidia-docker)瓤檐,創(chuàng)建個人賬戶并加入visudo
硬盤分區(qū)(https://www.cnblogs.com/yinzhengjie/p/6844372.html),格式化娱节,掛載
安裝與設置FTP
安裝NFS
-
將硬盤掛載和NFS遠程掛載寫入/etc/fstab挠蛉,NFS掛載要注意協(xié)議為nfs:
10.0.20.30:/home /home/share_home **nfs** defaults 0 2
安裝nvidia驅動
-
按照官網(wǎng)教程進行cuda安裝(教程中少了最后一步 sudo apt-get install cuda)
附1:安裝完之后需要重啟,否則nvidia-smi會顯示錯誤
附2:查看cuda版本 nvcc -V肄满; 如果找不到nvcc -V就到/usr/local/cuda-10.1/bin/目錄尋找
按照官方教程安裝cudnn(Bird服務器因為cudnn下載不下來所以未安裝)
安裝vnc4server谴古,這里注意要安裝 ~/.vnc/xstartup 當中的依賴項
Opencv,下載之后按照官網(wǎng)教程稠歉,查看版本pkg-config --modversion opencv
瑣碎項
賬戶相關
創(chuàng)建用戶
首先 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--
有兩種方式
chomd 754 filename
,一個數(shù)字代表三位二進制怒炸,7 for rwx, 5 for r-x, 4 for r--
chomd u=rwx, g=rx, o=r filename
,u
for user,g
for group,o
for others
將某個文件改變擁有者的命令為 chown
進程相關
以依賴樹的形式展示進程
pstree
以文本匹配的方式kill進程
pkill
带饱。 注:匹配內容可以是用戶名,可以是命令以后臺形式運行
(cmd) &
查看某個進程詳細信息
ps pid
查看端口占用情況
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使得系統(tǒng)找不到scp:
mv /usr/bin/scp /usr/bin/scp_hidden
禁用USB存儲設備
編輯 /etc/modprobe.d/blacklist.conf阅羹,添加兩行勺疼,然后重啟電腦
black uas
black usb_storage
開機自動運行指令
將需要開機時執(zhí)行的指令寫入/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使用清華軟件源
查看該網(wǎng)址恢口,https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/