Ubuntu-个人操作锦集

基础命令

  1. 查看cpu 信息

    1
    cat /proc/cpuinfo
  2. 查看Ubuntu 版本

    1
    cat /etc/issue
  3. 查看剩余磁盘空间

    1
    df -h
  4. 查看当前内存使用情况

    1
    free -m
  5. 查看当前所有的进程

    1
    ps -A [| grep PsName]
  6. 终止进程运行

    1
    2
    kill PID
    kill -9 PID // 强制终止一个进程
  7. 查看当前进程得实际情况

    1
    top
  8. 启动服务

    1
    service start serviceName 
  9. 查看本机ip地址信息

    1
    ifconfig
  10. 压缩文件

    1
    2
    tar -cvf test.tar test // 压缩test目录以下的所有东西为test.tar
    tar xvfz *.tar.gz // 解压缩*.tar.gz
  11. 后台运行脚本

    1
    nohup Command &!

    最近一直登录ssh 登录服务器,老是发现ssh 断了之后,登录期间启动的服务会莫名其妙的停止,所以就查了一下,原来如此。

  12. 查看无线网卡信息

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    iwconfig

    auto 自动模式
    essid 设置ESSID
    nwid 设置网络ID
    freq 设置无线网络通信频段
    chanel 设置无线网络通信频段
    sens 设置无线网络设备的感知阀值
    mode 设置无线网络设备的通信设备
    ap 强迫无线网卡向给定地址的接入点注册
    nick<名字> 为网卡设定别名
    rate<速率> 设定无线网卡的速率
    rts<阀值> 在传输数据包之前增加一次握手,确信信道在正常的
    power 无线网卡的功率设置
  13. 查看对外访问的端口

    1
    ss -lntup
  14. 查看目录结构

    1
    tree dir
  15. 查看路由表

    1
    netstat -rn
  16. 添加(删除)路由

    1
    route add (del) -net 127.0.0.1 -netmask 255.255.255.0 gw 127.0.0.2
  17. 跟踪路由轨迹

    1
    traceroute 127.0.0.1
  18. 查看已使用的端口

    1
    netstat -an
  19. 日志分割、去重、统计

    1
    cat a.log | awk -F "," '{print $3}' | uniq | wc -l

    cat: 读取日志。awk: 依据分隔符进行分割,然后打印出需要的部分。uniq: 去重。 wc -l: 统计数目。

  20. 查看占用端口的进程

    1
    lsof -i:port

安装软件

WSL Ubuntu 18.04 安装Docker

安装Docker for Windows

主要步骤:

  • 开启Hyper -v
  • 伪装成专业版Win 10
  • 下载Docker for Windows
  • 修改Docker for Windows 配置
  1. 开启Hyper -v
    在启用或关闭Windows功能开启Hyper -v 。
    1.png

在Windows 搜索框中即可快速打开。

  1. 伪装成专业版Win 10
    此步骤仅限于Windows 版本为家庭版的Win 10 系统。专业版Win 10 不需要操作此步骤。
    以管理员身份打开CMD,执行以下命令:

    1
    REG ADD "HKEY_LOCAL_MACHINE\software\Microsoft\Windows NT\CurrentVersion" /v EditionId /T REG_EXPAND_SZ /d Professional /F
  2. 下载Docker for Windows
    官方下载路径(需要fq):https://store.docker.com/editions/community/docker -ce-desktop-windows
    国内镜像:https://mirrors.ustc.edu.cn/docker-ce/
    下载完成后,直接安装,Docker 安装成功后,执行cmd 命令检测安装。

    1
    docker version

    2.png

  3. 修改Docker for Windows 配置
    安装Docker 成功后,修改Docker 配置,勾选Expose daemon 做为Docker client 的守护线程。
    3.png

安装Ubuntu 18.04

Microsoft Store 搜索Ubuntu 即可找到并安装。

Ubuntu 18.04 安装Docker

主要步骤:

  • 更新包索引
  • 安装apt 依赖
  • 添加Docker 官方的GPG 密钥
  • 验证密钥
  • 设置稳定版仓库
  • 安装Docker
  1. 更新包索引

    1
    sudo apt-get update
  2. 安装apt 依赖

    1
    2
    3
    4
    5
    6
    sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg-agent \
    software-properties-common
  3. 添加Docker 官方的GPG 密钥

    1
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  4. 验证密钥

    1
    2
    3
    4
    5
    6
    sudo apt-key fingerprint 0EBFCD88

    pub rsa4096 2017-02-22 [SCEA]
    9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
    uid [ unknown] Docker Release (CE deb) <docker@docker.com>
    sub rsa4096 2017-02-22 [S]
  5. 设置稳定版仓库

    1
    2
    3
    4
    sudo add-apt-repository \
    "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
    $(lsb_release -cs) \
    stable"
  6. 安装Docker

    1
    sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli

基础配置变量

主要步骤:

  • 设置变量
  1. 设置变量
    1
    export DOCKER_HOST=tcp://0.0.0.0:2375

使用Docker

主要步骤:

  • Ubuntu 启动Docker
  • docker 测试
  1. Ubuntu 启动Docker

    1
    sudo service docker start
  2. docker 测试

    1
    docker run hello-world

    4.png

外部链接

https://www.cnblogs.com/xiaoliangge/p/9134585.html
https://www.cnblogs.com/samwu/p/10360943.html
https://www.runoob.com/docker/ubuntu-docker-install.html

使用问题

  1. 无法连接docker damone
    1.png
    此问题是由在设置变量时,未执行成功而导致的,需要再重新设置即可。

    1
    export DOCKER_HOST=tcp://0.0.0.0:2375
  2. Docker for Desktop 启动检测系统版本失败
    万能解决大法,重启电脑即可。

WSL Ubuntu 安装Nginx

1.

Ubuntu 安装docker-compose

  1. 简介
    Docker Compose是一个用来定义和运行复杂应用的Docker工具。一个使用Docker容器的应用,通常由多个容器组成。使用Docker Compose不再需要使用shell脚本来启动容器。
    Compose 通过一个配置文件来管理多个Docker容器,在配置文件中,所有的容器通过services来定义,然后使用docker-compose脚本来启动,停止和重启应用,和应用中的服务以及所有依赖服务的容器,非常适合组合使用多个容器进行开发的场景。

  2. 前提
    安装docker-compose 的前提是已经安装好了docker ,并且已经测试可以运行。

  3. 步骤
    下载docker-compose

    1
    sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

为docker-compose 添加运行权限

1
sudo chmod +x /usr/local/bin/docker-compose

测试

1
docker-compose --version

好玩的东西

oneko

  1. 展示
    java5-1561083630.gif

  2. 安装

    1
    sudo apt-get install oneke
  3. 问题

moo

  1. 安装
    1
    apt-get moo

Steam Locomotive(sl)

  1. 展示
    Паровоз2.gif

  2. 安装

    1
    2
    sudo apt-get install sl
    sl

rev(翻转)

  1. 使用
    1
    2
    3
    4
    $rev

    111222
    222111

fortune

试试你未知的运气,终端里有时也有好玩的。

  1. 安装

    1
    $sudo apt-get install fortune
  2. 使用

    1
    2
    3
    4
    5
    $fortune
    You mentioned your name as if I should recognize it, but beyond the
    obvious facts that you are a bachelor, a solicitor, a freemason, and
    an asthmatic, I know nothing whatever about you.
    -- Sherlock Holmes, "The Norwood Builder"

cowsay (xcowsay)

  1. 安装

    1
    $sudo apt-get install cowsay
  2. 使用

    1
    $ cowsay i like cow!
  3. 好玩的

    1
    fortune | cowsay

factor

这个命令可以帮助你求解某个数字的所有因子。

  1. 使用
    1
    2
    3
    $factor
    33
    33: 3 11

建议

更加安全

  1. ssh 密钥
    在你远程登录服务器时,一般需要账号对应的密码或者密钥,但是有账号和密码登录存在一定的风险,可以被黑客暴力尝试登录,但是使用密钥就不会存在这种问题。

  2. 实时更新系统时间
    为什么要说这个呢,如果你知道著名的千年虫问题,那你就会觉得我没有瞎说。

  3. 端口
    定期检查服务器可对外访问的端口,你会发现很多不一样的乐趣。

这也是为了防范别人给你服务器留下后门和暴力破坏你的服务器的一种防御措施。

  1. 防火墙
    服务器其本质就跟个人电脑一样,但是个人电脑你会时刻守在面前,但服务器你没有办法24 小时都守着吧,所以适用你的防火墙条目是很有必要的。通常使用的都是 UFW ,感兴趣的可以动手去了解一下。

  2. 自动攻击
    通常情况下,一个必有用心的人想要入侵你的服务器,那妈他的第一步肯定时全端口扫面开放端口,再根据开放端口执行不同的尝试破解。 所以为此你就需要 Fail2BanPSAD

  3. 日志
    日志的作用其实是都很明白,所以还是建议安装一下,很有用处的。 “logwatch”

  4. 安全审核
    官方发布的漏洞补丁,如果你明白这个的重要性,我想你肯定会安装的,好处在于自己感受。 Lynis


后记

引用

https://medium.com/servers-101/how-to-secure-your-linux-server-6026cfcdefd8

总结


个人备注

此博客内容均为作者学习所做笔记,侵删!
若转作其他用途,请注明来源!