02. Linux操作系统、文件和目录介绍
2024年10月28日大约 7 分钟
02. Linux操作系统、文件和目录介绍
目标
了解Linux操作系统的概念
了解Linux操作系统的文件和目录结构
1. Linux操作系统介绍
1. 操作系统介绍
操作系统:管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石(所有硬件设备组装完成后的第⼀层软件, 能够使⽤户使⽤硬件设备的软件即为操作系统)。
2. 常见操作系统
- 桌面操作系统
- Windows系列
- Linux
- MacOS
- 移动设备操作系统
- Android(Linux)
- iOS(Unix)
- 服务器操作系统
- Linux
- Unix(收费)
- Windows Server
- 嵌入式操作系统
- Linux
3. Linux操作系统特点
Linux是一套免费使用和自由传播的操作系统。在服务器端最常⻅的操作系统类型。
Linux 内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。
Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。
Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
- 开源免费
- 安全稳定
- 可移植性好
- 高性能
4. Linux常见的发行版本
Linux 的发行版说简单点就是将 Linux 内核与应用软件做一个打包。目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。
- Debian
- Ubuntu
- Kali
- Redhat
- Centos(企业版)
- Oracle Linux(企业版)
- RHEL
- Open SUSE
5. Linux使用领域
今天各种场合都有使用各种 Linux 发行版,从嵌入式设备到超级计算机,并且在服务器领域确定了地位,通常服务器使用 LAMP(Linux + Apache + MySQL + PHP)或 LNMP(Linux + Nginx+ MySQL + PHP)组合
目前 Linux 不仅在家庭与企业中使用,并且在政府中也很受欢迎
巴西联邦政府由于支持 Linux 而世界闻名
有新闻报道俄罗斯军队自己制造的 Linux 发布版的,做为 G.H.ost 项目已经取得成果
印度的 Kerala 联邦计划在向全联邦的高中推广使用 Linux
中华人民共和国为取得技术独立,在龙芯处理器中排他性地使用 Linux
在西班牙的一些地区开发了自己的 Linux 发布版,并且在政府与教育领域广泛使用,如 Extremadura 地区的 gnuLinEx 和 Andalusia 地区的 Guadalinex
葡萄牙同样使用自己的 Linux 发布版 Caixa Mágica,用于 Magalh?es 笔记本电脑和 e-escola 政府软件
法国和德国同样开始逐步采用 Linux
应用服务器
数据库服务器
网络服务器
虚拟化云计算
嵌入式领域
个人PC
移动手机
6. Linux 与windos对比
目前国内 Linux 更多的是应用于服务器上,而桌面操作系统更多使用的是 Windows。主要区别如下
比较 | Windows | Linux |
---|---|---|
界面 | 界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同 | 图形界面风格依发布版不同而不同,可能互不兼容。GNU/Linux 的终端机是从 UNIX 传承下来,基本命令和操作方法也几乎一致。 |
驱动程序 | 驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有了原配的驱动有时很难支持。另外,有时硬件厂商未提供所需版本的 Windows 下的驱动,也会比较头痛。 | 由志愿者开发,由 Linux 核心开发小组发布,很多硬件厂商基于版权考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题(是否存在和安装方法)会一筹莫展。但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD 等硬件厂商逐步不同程度支持开源驱动,问题正在得到缓解。 |
使用 | 使用比较简单,容易入门。图形化界面对没有计算机背景知识的用户使用十分有利。 | 图形界面使用简单,容易入门。文字界面,需要学习才能掌握。 |
学习 | 系统构造复杂、变化频繁,且知识、技能淘汰快,深入学习困难。 | 系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易。 |
软件 | 每一种特定功能可能都需要商业软件的支持,需要购买相应的授权。 | 大部分软件都可以自由获取,同样功能的软件选择较少。 |
2. 文件和目录介绍
1. Linux文件系统
Windows 系统的⽂件路径的起点是盘符;
Linux是树形结构的文件系统,其中/是系统的根目录,其他所有目录都是它的子节点。
注意:
1. / 为根⽬录, 是所有⽂件的路径的起点
2. 根⽬录下的所有第⼀层级的⽂件夹, 均不能随意进⾏修改操作
3. 掌握常⽤⽬录的作⽤即可
4. / 根⽬录, /home 普通⽤户所在⽂件夹, /root 系统管理员所在⽂件夹
5. 其余⽬录, 可以现⽤现查即可
2. Linux主要目录介绍
- / : 根目录,唯一,一般根目录下只存放目录,在 Linux下有且只有一个根目录,所有的东西都是从这里开始;
- /home : 用户目录,系统普通用户的家目录;
- /root : 系统管理员root目录
- /usr : 应用程序,系统应用程序存放的目录,一般安装的软件在该目录下;
- /etc : 系统配置,系统配置文件存放的目录,不建议在此目录下存放可执行文件;
- /var : 放置系统执行过程中经常变化的文件,例如日志文件。
- /boot : 内核文件
- /tmp : 临时文件
3. Linux远程链接
1. 为什么要学习远程连接
- 实际的工作中,Linux服务器要么放在机房,要么用的是云服务器。要对Linux服务器进行相关操作,必须通过远程 连接的工具连接到Linux服务器。
- 远程连接Linux服务器之前,必须要知道Linux服务器的IP地址,以及SSH的端口(默认:22)、用户名、密码
- 可以通过 ifconfig 命令查看 ip地址
- 可以通过 netstat -anptu|grep sshd 查看ssh的端口
2. 远程工具介绍
1. 常用的远程连接工具:
- XShell :个人免费/商用收费
- FinalShell :功能强大、有颜值,好操作(高级功能需要订阅)
- Putty :免费开源
- SecureCRT :收费
输入ip地址,点击open后,再在提示窗口中输入用户名和密码即可
2. 命令行方式
# 查看ip地址
$ ifconfig
# 在本机上 ping 服务器 IP 地址检查连通性
ping ip地址
# 使用ssh连接远程主机:
$ ssh user@hostname/IP
# SSH 默认连接到目标主机的 22 端口上,可以使用 -p 选项指定端口号
$ ssh -p 10022 user@hostname/IP
# 退出
$ exit
3. 远程文件传输工具
XFtp / WinScp / lrzsz / FileZilla
4. linux ssh免密登录
生成本地SSH密钥对(如果你还没有的话)
# 基于ED25519算法,生成密钥对命令如下(推荐) ssh-keygen -t ed25519 -C "<注释内容>" # 基于RSA算法,生成密钥对命令如下: ssh-keygen -t rsa -C "<注释内容>" # 按照提示操作,你可以选择使用密码保护密钥,也可以直接留空不使用密码。 # 密钥默认生成路径:/home/user/.ssh/id_ed25519,公钥与之对应为:/home/user/.ssh/id_ed25519.pub。 # 密钥默认生成路径:/home/user/.ssh/id_rsa,公钥与之对应为:/home/user/.ssh/id_rsa.pub
将公钥复制到远程服务器
ssh-copy-id -i id_rsa.pub username@remote_host # 这里的-i 后指定公钥,user是远程服务器上的用户名,remote_host是远程服务器的地址。 # 查看: cat ~/.ssh/authorized_keys
登录远程服务器,验证免密登录是否成功
ssh root@192.168.10.31
4. 总结
- 知道Linux操作系统的特点和使用场
- 了解Linux系统的文件系统和目录结构
- 掌握Linux远程链接方式
有兴趣可以访问菜鸟教程 https://www.runoob.com/linux/linux-tutorial.html