Linux面试题Top60
Linux面试题Top60
[TOC]
1)什么是Linux?
Linux是一种基于UNIX的操作系统,最初是由Linus Torvalds引入的。它基于Linux内核,可以运行在由Intel,MIPS,HP,IBM,SPARC和Motorola制造的不同硬件平台上。Linux中另一个受欢迎的元素是它的吉祥物,一个名叫Tux的企鹅形象。
2)UNIX和LINUX有什么区别?
Unix最初是作为Bell Laboratories的专有操作系统开始的,后来产生了不同的商业版本。另一方面,Linux是免费的,开源的,旨在为大众提供非适当的操作系统。
3)什么是BASH?
BASH是Bourne Again SHell的缩写。它由Steve Bourne编写,作为原始Bourne Shell(由/ bin / sh表示)的替代品。它结合了原始版本的Bourne Shell的所有功能,以及其他功能,使其更容易使用。从那以后,它已被改编为运行Linux的大多数系统的默认shell。
4)什么是Linux内核?
Linux内核是一种低级系统软件,其主要作用是为用户管理硬件资源。它还用于为用户级交互提供界面。
5)什么是LILO?
LILO是Linux的引导加载程序。它主要用于将Linux操作系统加载到主内存中,以便它可以开始运行。
6)什么是交换空间?
交换空间是Linux使用的一定空间,用于临时保存一些并发运行的程序。当RAM没有足够的内存来容纳正在执行的所有程序时,就会发生这种情况。
7)开源的优势是什么?
开源允许你将软件(包括源代码)免费分发给任何感兴趣的人。然后,人们可以添加功能,甚至可以调试和更正源代码中的错误。它们甚至可以让它运行得更好,然后再次自由地重新分配这些增强的源代码。这最终使社区中的每个人受益。
8)Linux的基本组件是什么?
就像任何其他典型的操作系统一样,Linux拥有所有这些组件:内核,shell和GUI,系统实用程序和应用程序。Linux比其他操作系统更具优势的是每个方面都附带其他功能,所有代码都可以免费下载。
9)Linux系统安装多个桌面环境有帮助吗?
通常,一个桌面环境,如KDE或Gnome,足以在没有问题的情况下运行。尽管系统允许从一个环境切换到另一个环境,但这对用户来说都是优先考虑的问题。有些程序在一个环境中工作而在另一个环境中无法工作,因此它也可以被视为选择使用哪个环境的一个因素。
10)BASH和DOS之间的基本区别是什么?
BASH和DOS控制台之间的主要区别在于3个方面:
- BASH命令区分大小写,而DOS命令则不区分;
- 在BASH下,/ character是目录分隔符,\作为转义字符。在DOS下,/用作命令参数分隔符,\是目录分隔符
- DOS遵循命名文件中的约定,即8个字符的文件名后跟一个点,扩展名为3个字符。BASH没有遵循这样的惯例。
11)GNU项目的重要性是什么?
这种所谓的自由软件运动具有多种优势,例如可以自由地运行程序以及根据你的需要自由学习和修改程序。它还允许你将软件副本重新分发给其他人,以及自由改进软件并将其发布给公众。
12)描述root帐户。
root帐户就像一个系统管理员帐户,允许你完全控制系统。你可以在此处创建和维护用户帐户,为每个帐户分配不同的权限。每次安装Linux时都是默认帐户。
13)什么是CLI?
CLI是命令行界面的缩写。此接口允许用户键入声明性命令以指示计算机执行操作。CLI提供更大的灵活性。但是,已经习惯使用GUI的其他用户发现很难记住包含随附属性的命令。
14)什么是GUI?
GUI或图形用户界面使用用户单击和操作的图像和图标作为与计算机通信的方式。使用图形元素不仅需要记住和键入命令,还可以更轻松地与系统交互,以及通过图像,图标和颜色添加更多吸引力。
15)如何在发出命令时打开命令提示符?
要打开默认shell(可以找到命令提示符的位置),请按Ctrl-Alt-F1。这将提供命令行界面(CLI),你可以根据需要从中运行命令。
16)如何知道Linux使用了多少内存?
在命令shell中,使用“concatenate”命令:cat / proc / meminfo获取内存使用信息。你应该看到一行开始像Mem:64655360等。这是Linux认为它可以使用的总内存。
你也可以使用命令
free - m
vmstat
top
htop
找到当前的内存使用情况
17)Linux系统下交换分区的典型大小是多少?
交换分区的首选大小是系统上可用物理内存量的两倍。如果无法做到这一点,则最小大小应与安装的内存量相同。
18)什么是符号链接?
符号链接的行为类似于Windows中的快捷方式。这些链接指向程序,文件或目录。它还允许你即时访问它,而无需直接转到整个路径名。
19)Ctrl + Alt + Del组合键是否适用于Linux?
是的,它确实。就像Windows一样,你可以使用此组合键来执行系统重启。一个区别是你不会收到任何确认消息,因此,立即重启。
20)如何引用连接打印机等设备的并行端口?
在Windows下,你将并行端口称为LPT端口,而在Linux下,你将其称为/ dev / lp。因此,LPT1,LPT2和LPT3在Linux下称为/ dev / lp0,/ dev / lp1或/ dev / lp2。
21)硬盘驱动器和软盘驱动器等驱动器是否用驱动器号表示?
在Linux中,每个驱动器和设备都有不同的名称。例如,软盘驱动器称为/ dev / fd0和/ dev / fd1。IDE / EIDE硬盘驱动器称为/ dev / hda,/ dev / hdb,/ dev / hdc等。
22)如何在Linux下更改权限?
假设你是系统管理员或文件或目录的所有者,则可以使用chmod命令授予权限。使用+符号添加权限或 - 符号拒绝权限,以及以下任何字母:u(用户),g(组),o(其他),a(所有),r(读取),w(写入)和x(执行)。例如,命令chmod go + rw FILE1.TXT授予对文件FILE1.TXT的读写访问权限,该文件分配给组和其他组。
23)在Linux中,为不同的串口分配了哪些名称?
串行端口标识为/ dev / ttyS0到/ dev / ttyS7。这些是Windows中COM1到COM8的等效名称。
24)如何在Linux下访问分区?
Linux在驱动器标识符的末尾分配数字。例如,如果第一个IDE硬盘驱动器有三个主分区,则它们将命名/编号,/ dev / hda1,/ dev / hda2和/ dev / hda3。
25)什么是硬链接?
硬链接直接指向磁盘上的物理文件,而不指向路径名。这意味着如果重命名或移动原始文件,链接将不会中断,因为链接是针对文件本身的,而不是文件所在的路径。
26)Linux下文件名的最大长度是多少?
任何文件名最多可包含255个字符。此限制不包括路径名,因此整个路径名和文件名可能会超过255个字符。
27)什么是以点开头的文件名?
通常,以点开头的文件名是隐藏文件。这些文件可以是包含重要数据或设置信息的配置文件。将这些文件设置为隐藏会使其不太可能被意外删除。
28)解释虚拟桌面。
这可以作为最小化和最大化当前桌面上不同窗口的替代方案。当你可以打开一个或多个程序时,使用虚拟桌面可以清除桌面。你可以简单地在虚拟桌面之间进行随机播放,而不是在每个程序中保持完整的程序,而不是最小化/恢复所有这些程序。
29)如何在Linux下跨不同的虚拟桌面共享程序?
要在不同的虚拟桌面之间共享程序,请在程序窗口的左上角查找看起来像图钉的图标。按此按钮将“固定”该应用程序到位,使其显示在所有虚拟桌面上,位于屏幕上的相同位置。
30)无名(空)目录代表什么?
此空目录名称用作Linux文件系统的无名基础。这用作所有其他目录,文件,驱动器和设备的附件。
31)什么是pwd命令?
pwd命令是print working directory命令的缩写。
PWD
/home/guru99/myDir
32)什么是守护进程?
守护进程是提供基本操作系统下可能无法使用的多种功能的服务。其主要任务是监听服务请求,同时对这些请求采取行动。服务完成后,它将断开连接并等待进一步的请求。
33)如何从一个桌面环境切换到另一个桌面环境,例如从KDE切换到Gnome?
假设你已安装这两个环境,只需从图形界面注销即可。然后在登录屏幕上,键入你的登录ID和密码,并选择要加载的会话类型。在你将其更改为其他选项之前,此选项将保持默认状态。
34)Linux下的权限有哪些?
Linux下有3种权限:
- 读取:用户可以读取文件或列出目录
- 写入:用户可以写入新文件到目录的文件
- 执行:用户可以运行文件或查找特定文件一个目录
35)区分大小写如何影响命令的使用方式?
当我们讨论区分大小写时,只有当每个字符按原样编码时,命令才被认为是相同的,包括小写和大写字母。这意味着CD,CD和Cd是三个不同的命令。使用大写字母输入命令,它应该是小写的,将产生不同的输出。
36)什么是环境变量?
环境变量是控制shell功能以及其他Linux程序功能的全局设置。环境变量的另一个常用术语是全局shell变量。
37)使用vi编辑器时有哪些不同的模式?
在vi下有3种模式:
- 命令模式: 这是你在编辑模式下开始的模式
- 编辑模式:这是允许你进行文本编辑的模式
- Ex模式:这是你用vi与vi交互的模式处理文件
38)是否可以使用快捷方式获取长路径名?
就在这里。称为文件名扩展的功能允许你使用TAB键执行此操作。例如,如果你有一个名为/ home / iceman / assignments目录的路径,则键入如下:/ ho [tab] / ice [tab] / assi [tab]。但是,这假设路径是唯一的,并且你正在使用的shell支持此功能。
39)什么是重定向?
重定向是将数据从一个输出定向到另一个输出的过程。它还可以用于将输出作为输入定向到另一个进程。
40)什么是grep命令?
grep使用基于模式的搜索的搜索命令。它使用与命令行一起指定的选项和参数,并在搜索所需的文件输出时应用此模式。
41)当发出的命令与上次使用时产生的结果不同时,会出现什么问题?
从看似相同的命令获得不同结果的一个非常可能的原因与区分大小写问题有关。由于Linux区分大小写,因此先前使用的命令可能以与当前格式不同的格式输入。例如,要列出目录中的所有文件,应键入命令ls,而不是LS。如果没有存在该确切名称的程序,则键入LS将导致错误消息,或者如果存在名为LS的程序执行另一个功能,则可能产生不同的输出。
42)/ usr / local的内容是什么?
它包含本地安装的文件。此目录在文件存储在网络上的环境中很重要。具体来说,本地安装的文件将转至/ usr / local / bin,/ usr / local / lib等。此目录的另一个应用是它用于从源安装的软件包,或未正式随分发一起提供的软件。
43)你如何终止正在进行的流程?
系统中的每个进程都由唯一的进程ID或pid标识。使用kill命令后跟pid来终止该进程。
要立即终止所有进程,请使用kill 0。
44)如何在命令行提示符中插入注释?
通过在实际注释文本之前键入#符号来创建注释。这告诉shell完全忽略后面的内容。例如“#这只是shell将忽略的注释。”
45)什么是命令分组以及它是如何工作的?
你可以使用括号对命令进行分组。例如,如果要将当前日期和时间以及名为OUTPUT的文件的内容发送到名为MYDATES的第二个文件,可以按如下方式应用命令分组:(date cat OUTPUT)> MYDATES
46)如何从单个命令行条目执行多个命令或程序?
你可以通过使用分号符号分隔每个命令或程序来组合多个命令。例如,你可以在单个条目中发出这样一系列命令:
ls –l cd .. ls –a MYWORK which is equivalent to 3 commands: ls -l cd.. ls -a MYWORK
**请注意,这将按指定的顺序依次执行。
47)编写一个命令,查找扩展名为“c”的文件,并在其中出现字符串“apple”。
Find ./ -name "*.c" | xargs grep –i "apple"
48)编写一个显示所有.txt文件的命令,包括其个人权限。
ls -al * .txt
49)编写将执行以下操作的命令:
查看当前和后续目录中扩展名为c的所有文件,v -strip,from结果中的v(可以使用sed命令)- 使用结果并使用grep命令搜索所有出现的单词ORANGE在文件中。
Find ./ -name "*.c,v" | sed 's/,v//g' | xargs grep "ORANGE"
50)以下每个命令有什么问题?
- a)ls -ls
- b)cat file1,file2
- c)ls - s Factdir
- a)两个选项之间应该有空格:ls -l -s
- b)不要使用逗号分隔参数:cat file1 file2
- c)连字符和选项标签之间应该没有空格:ls -s Factdir
51)计算文件夹大小的命令是什么?
要计算文件夹的大小,请使用命令
du -sh folder1
52)如何找到流程的状态?
ps ux
53)如何检查内存状态?
free -m 以MB为单位显示输出
free -g 以GB显示输出
54)解释如何为Git控制台着色?
要为Git控制台着色,可以使用命令git config-global color.ui auto。在命令中,color.ui变量设置变量的默认值,例如color.diff和color.grep。
55)如何在Linux中将一个文件附加到另一个文件?
要在Linux中将一个文件附加到另一个文件,你可以使用命令cat file2 >> file 1. operator >>附加指定文件的输出或创建文件(如果未创建)。而另一个命令cat文件1文件2>文件3将两个或多个文件附加到一个文件。
56)解释如何使用终端找到文件?
要查找文件,你必须使用命令,查找。-name“process.txt”。它将查找名为process.txt的文件的当前目录。
57)解释如何使用终端创建文件夹?
要创建文件夹,你必须使用命令mkdir。它将是这样的:〜$ mkdir Guru99
58)解释如何使用终端查看文本文件?
要查看文本文件,请使用命令cd转到文本文件所在的特定文件夹,然后键入less filename.txt。
59)解释如何在Ubuntu LAMP堆栈上启用curl?
要在Ubuntu上启用curl,首先安装libcurl,完成后使用以下命令sudo /etc/init .d / apache2 restart或sudo service apache2 restart。
60)解释如何在Ubuntu中启用root日志记录?
启用root日志记录的命令是
#sudo sh-c'echo“greater-show-manual-login = true”>> / etc / lightdm / lightdm.conf'
61)如何在启动Linux服务器的同时在后台运行Linux程序?
通过使用nohup。它将停止接收NOHUP信号的进程,从而终止它,你注销了调用的程序。并在后台运行该过程。
62)解释如何在Linux中卸载库?
要在Linux中卸载库,可以使用命令
sudo apt-get remove library_name