>
> 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 ubuntu@121.5.18.188
-
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