1.什么是linux?
Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统
2.为什么 Linux 体系结构要分为用户空间和内核空间的原因?
Linux 为了保护内核的安全,把系统分成了两部分。
3.BASH和DOS之间的基本区别是什么?
- BASH命令区分大小写,而DOS命令则不区分;
- 在BASH下,/ character是目录分隔符,\作为转义字符。在DOS下,/用作命令参数分隔符,\是目录分隔符
- DOS遵循命名文件中的约定,即8个字符的文件名后跟一个点,扩展名为3个字符。BASH没有遵循这样的惯例
4.Linux一切皆文件
在Linux中,"一切皆文件"的思想被实现的两个关键要素是:设备文件和虚拟文件系统(VFS)。
设备文件
在Linux中,硬件设备被表示为设备文件,通过在文件系统中创建设备节点,使得用户和应用程序可以通过标准的文件I/O接口来访问这些设备。例如,硬盘驱动器可以表示为/dev/sda,串口可以表示为/dev/ttyS0。这样,用户可以像读写普通文件一样来操作硬件设备。
虚拟文件系统
Linux内核实现了虚拟文件系统层,它是Linux系统实现"一切皆文件"思想的重要组成部分。虚拟文件系统将不同的文件系统(如ext4、NTFS、procfs等)抽象为统一的接口,使得用户和应用程序可以使用相同的文件I/O系统调用来访问不同的文件系统。/proc文件系统提供了对进程信息的访问,而/sys文件系统允许对设备和内核参数进行动态配置和查看。无论是操作硬盘文件,读取进程信息还是访问内核参数,用户都可以使用相同的标准文件I/O系统调用。这样的设计使得系统接口更加一致和统一。
优点:
****简化权限管理
在Linux系统中,文件和目录都有相应的权限,如读、写、执行等。通过使用文件系统的权限机制,可以更方便地管理用户对设备、进程和其他资源的访问权限。这种统一的权限管理机制让管理员更加容易配置和控制用户的权限,提高了系统的安全性。
****统一的接口
"一切皆文件"的设计哲学使得Linux系统提供了统一的接口,无论是硬件设备、进程信息还是网络接口,都可以使用相同的文件I/O接口进行访问和操作。这样的设计简化了系统编程,减少了编程的复杂性。开发人员可以通过简单的文件I/O接口来访问各种资源,而不需要特定的API和驱动程序。
****易于扩展
由于Linux系统一切皆文件的设计思想,任何新的资源或设备只需要在文件系统中创建对应的设备文件,就可以通过标准的文件I/O接口来访问和操作。这使得Linux系统非常灵活和易于扩展。同时,用户也可以根据自己的需求创建自定义的设备文件,实现个性化的功能。
5.硬链接
硬链接可以认为是一个指针,指向文件索引节点的指针,只有超级用户才可以为目录创建硬链接。
6.软连接
软链接克服了硬链接的不足,没有任何文件系统的限制,任何用户可以创建指向目录的符号链接,故实际场景中使用的都是软连接。
7.Shell 脚本是什么?
一个 Shell 脚本是一个文本文件,包含一个或多个命令。作为系统管理员,我们经常需要使用多个命令来完成一项任务,我们可以添加这些所有命令在一个文本文件(Shell 脚本)来完成这些日常工作任务。
8.如何选择 Linux 操作系统版本?
桌面用户首选 Ubuntu ,服务器首选 CentOS
9.cat命令
cat 命令用于连接文件并打印到标准输出设备上。
cat 主要有三大功能:
1.一次显示整个文件;
2.从键盘创建一个文件;
3.将几个文件合并为一个文件;