Linux
简介
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
特点
Linux不仅系统性能稳定,而且是开源软件。其核心防火墙组件性能高效、配置简单,保证了系统的安全。在很多企业网络中,为了追求速度和安全,Linux不仅仅是被网络运维人员当作服务器使用,甚至当作网络防火墙,这是Linux的一大亮点。
Linux具有开放源码、没有版权、技术社区用户多等特点,开放源码使得用户可以自由裁剪,灵活性高,功能强大,成本低。尤其系统中内嵌网络协议栈,经过适当的配置就可实现路由器的功能。这些特点使得Linux成为开发路由交换设备的理想开发平台。
内核
Linux内核是操作系统内部操作和控制硬件设备的核心程序。内核负责管理计算机的硬件资源,包括处理器、内存、输入输出设备等。它提供了一个抽象层,使得应用程序可以与硬件交互,而不需要直接操作硬件。
Linux内核最初由芬兰的林纳斯·托瓦兹(Linus Torvalds)编写,并于1991年首次发布。自那时以来,Linux内核经过了许多版本的迭代和改进,并成为了最流行的操作系统内核之一。
Linux内核支持多种硬件架构,可以运行在包括个人电脑、服务器、嵌入式设备等多种平台上。它具有高度的可移植性和灵活性,可以根据用户的需求进行定制和扩展。
Linux内核是开源的,这意味着任何人都可以查看、修改和分发它的源代码。这种开放性和透明度使得Linux内核能够吸引全球开发者的参与和贡献,并不断改进和完善。
内核效果图:
说明:
真正操作和控制硬件是由内核来完成的,操作系统是基于内核开发出来的。
Linux发行版
是Linux内核与各种常用软件的组合产品,通俗来说就是我们常说的Linux操作系统。目前有很多不同的Linux发行版可供选择,每个发行版都有自己的特点和目标用户群。
常用的Linux发行版:
- Ubuntu:一个基于Debian的发行版,以易用性和用户友好性而闻名。
- CentOS:基于Red Hat Enterprise Linux (RHEL) 的开源克隆版,也广泛用于服务器环境中。
- Redhat:由Red Hat公司支持,面向技术用户,注重先进的软件和最新的开源技术。
Linux发行版效果图:
组成
Ubuntu操作系统
Ubuntu操作系统是一个基于Linux的开源操作系统,它是Debian发行版的一个分支。Ubuntu的目标是提供一个易于使用的操作系统,同时也是一个免费的操作系统。它提供了一个友好的图形用户界面和大量的预装软件包,适用于桌面和服务器上的使用。
Ubuntu操作系统特点
-
免费和开源:用户可以免费获取和使用Ubuntu,同时也可以自由地查看、修改和分发Ubuntu的源代码。
-
易于使用:Ubuntu提供了一个直观和用户友好的图形用户界面,使得用户可以轻松地进行常见的操作,如上网、发送电子邮件、办公和娱乐等。
-
安全可靠:Ubuntu操作系统有着强大的安全性,它通过默认启用防火墙和定期更新补丁来保护用户的计算机免受网络攻击。
-
大量软件支持:Ubuntu有一个庞大的软件仓库,包含了几乎所有常见的软件应用程序。用户可以通过软件中心或命令行安装他们需要的软件。
-
社区支持:Ubuntu拥有一个庞大的用户社区和开发者社区,用户可以在社区中获取支持和解决问题,也可以加入开发团队为Ubuntu做贡献。
Windows与Linux的比较
Linux主要目录介绍效果图:
主要目录说明:
- /:根目录
- /bin:可执行二进制文件的目录
- /etc:系统配置文件存放的目录
- /home:用户家目录
Linux常用命令
Ls:列出目录
cd:切换目录
Pwd:显示目前的目录
Mkdir:创建一个空的目录
Rmdir:删除一个空的目录
Cp:复制文件或目录
Rm:移除文件或目录
Mv:移动文件与目录,或修改文件与目录的名称
Shell 基础
shell可以同linux内核进行交互
常见shell
Bourne Shell (/usr/bin/sh或bin/sh)
Bourne Again Shell(/bin/bash)——常用特点,免费,易用
C Shell(/usr/bin/csh)
K Shell(/usr/bin/ksh)
Shell for Root(/sbin/sh)
运行shell
第一种方法
Chmod + x ./test.sh # 是脚本具有执行权限
./test.sh # 执行脚本
第二种方法:
/bin/sh test.sh
运行该方法是,第一行代码失效
代码实现:
root@ubuntu184-virtual-machine:~# ls
snap
root@ubuntu184-virtual-machine:~# cd test.sh
-bash: cd: test.sh: No such file or directory
root@ubuntu184-virtual-machine:~# vim test.sh
root@ubuntu184-virtual-machine:~# cat test.sh
#!/bin/bash
echo "hello"
root@ubuntu184-virtual-machine:~# ./test.sh
-bash: ./test.sh: Permission denied
root@ubuntu184-virtual-machine:~# chmod +x test.sh
root@ubuntu184-virtual-machine:~# ./test.sh
hello
root@ubuntu184-virtual-machine:~# /bin/sh test.sh
hello