Linux入门第一讲

计算机系统涉及了太多分支和商业纠葛, 这节课我们不纠结正统的问题, 只从涉及的概念上进行分类

Unix和linux

  • Unix

    最古老的现代计算机系统, 始于60年代. 从商业上来讲, 只有unix认证的系统才是unix系统.

    • linux

      linux和unix不是单纯的继承关系, linux只是继承了unix的设计理念. 但是底层实现不同, 所以不完全兼容.

      linux不同的发行版, 只是侧重点不同. 本质是包管理不同.

      • ubuntu
        • 使用apt包管理工具
        • 对图形界面支持更加友好
        • 社区活跃, 更新更加积极
        • 更加侧重个人用户
      • centos
        • 使用yum包管理工具
        • 对底层硬件的兼容性更好
        • 使用yum包管理工具
    • mac os

      mac os可以看作和unix是继承关系, 完全符合unix规范.

  • Windows

    始于80年代, 强大的图形界面操作逻辑. 对用户更加友好.

win10安装linux

https://jingyan.baidu.com/article/ae97a64617a90bbbfd461d80.html

为什么使用linux做服务器

  • linux使用费用低
  • linux兼容性更好
  • linux是开源的
  • linux社区活跃
  • 很多新技术都是优先适配linux, 之后再移植到windows和mac os.
  • linux管理员拥有实际意义上的最高权限, windows和mac os很多时候没有办法修改

远程连接linux服务器

  • SSH连接

    • 什么是SSH

      SSH是一种网络协议, 用于计算机之间的加密登录

      // 使用ssh登录
      ssh user@host
      
      ssh [email protected]
      
    • ssh管理工具

      • windows

        mobaXterm

      • Mac OS

        shellcraft

      • Linux

        推荐公钥登录

    • ssh原理

      利用了非对称加密, 客户端和服务端互相发送了对方的公钥. 在传输的过程中用公钥对数据进行加密, 得到加密后的数据再通过私钥进行解密.

    • ssh是绝对安全的吗?

      是也不是, 通过ssh建立的连接一定是安全的. 但是有一个前提, 那就是第一次连接的时候需要确认连接服务器是安全的, 这个风险是由用户自己承担.

  • 公钥登录

    实际上就是对发送的公钥进行持久化, 这样就不用每一次都互相交换公钥

    • 生成私钥和公钥

      ssh-keygen
      
      # 查看当前公钥和私钥
      root@DESKTOP-PUHRNUT:~/.ssh# cd /root/.ssh
      root@DESKTOP-PUHRNUT:~/.ssh# ls
      
    • 将公钥发送到服务端

      ssh-copy-id user@host
      
      # 第一次发送公钥需要输入验证码验证
      
    • 取消公钥登录

      实际上就是再服务端删除持久化的公钥

      cd /home/用户/.ssh
      # 删除对应客户端的公钥
      vim .ssh/authorized_keys
      

linux目录树

linux没有像windows盘符这样的概念, 对于windows来说, 当前的根目录就是盘符. 而linux是/

在linux中, 一切皆文件, 访问硬盘和访问文件夹对linux来说没有任何区别.

  • /

    • bin

      我们执行的命令其实都是运行的可执行文件. 系统的基础可执行文件都在该目录下.

    • sbin

      跟/bin一致, 但是只有管理员权限才能执行

    • boot

      引导程序所在目录, 引导程序就是用来开机的时候引导进入系统, 多个系统就会有多个引导程序.

    • dev

      设备文件目录, 将对设备文件的访问转变为对设备的访问.

    • etc

      系统和程序配置文件存放的目录.

    • home

      一台机器可以有多个用户, 该用户配置和文件都存在home目录下

      一般我们代码会存在/home/用户/自定义目录 下

    • lib

      存放系统共享库的目录

    • sys

      存放内核文件的目录

    • var

      存放增量数据的目录

      日志一般都在/var/log 目录下

    • usr(unix shared resources)

      • bin

      • sbin

      • lib

      • local

        用户级别的程序目录, 用户自己编译的程序会默认安装到当前目录

你可能感兴趣的:(Linux,linux,服务器,运维)