当前位置: 首页 >> 面试题 >> 技术 >> 运维 >> 运维工程师 >>

Linux常见命令相关的面试题,运维、Linux管理员面试必备

1. man 对你熟悉或不熟悉的命令提供帮助解释

 

eg:man ls 就可以查看ls相关的用法

 

注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。

 

2. ls 查看目录或者文件的属*,列举出任一目录下面的文件

 

eg: ls /usr/man

 

ls -l

 

a.d表示目录(directory),如果是一个”-“表示是文件,如果是l则表示是一个连接文件(link)

 

b.表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x)。

 

3. cp 拷贝文件

 

eg: cp filename1 filename2 //把filename1拷贝成filename2

 

cp 1.c netseek/2.c //将1.c拷到netseek目录下命名为2.c

 

4. rm 删除文件和目录

 

eg: rm 1.c //将1.c这个文件删除

 

5. mv 移走目录或者改文件名

 

eg: mv filename1 filename2 //将filename1 改名为filename2

 

mv qib.tgz ../qib.tgz //移到上一级目录

 

6. cd 改变当前目录 pwd 查看当前所在目录完整路径

 

eg: pwd //查看当前所在目录路径

 

cd netseek //进入netseek这个目录

 

cd //退出当前目录

 

7. cat,more命令

 

将某个文件的内容显示出来。两个命令所不同的是:cat把文件内容一直打印出来,而 more则分屏显示

 

eg; cat>1.c //就可以把代码粘帖到1.c文件里,按ctrl+d 保存代码。

 

cat 1.c 或more 1.c //都可以查看里面的内容。

 

gcc -o 1 1.c //将1.c编译成.exe文件,我们可以用此命编译出代码。

 

8.chmod 命令 权限修改 用法:chmod 一位8进制数 filename。

 

eg: chmod u+x filenmame //只想给自己运行,别人只能读

 

//u表示文件主人, g 表示文件文件所在组。 o 表示其他人 ;r 表可读,w 表可写,x 表可以运行

 

chmod g+x filename //同组的人来执行

 

9. clear,date命令

 

clear:清屏,相当与DOS下的cls;date:显示当前时间。

 

10. mount 加载一个硬件设备

 

用法:mount [参数] 要加载的设备 载入点

 

eg: mount /dev/cdrom

 

cd /mnt/cdrom //进入光盘目录

 

11. su 在不退出登陆的情况下,切换到另外一个人的身份

 

用法: su -l 用户名(如果用户名缺省,则切换到root状态)

 

eg:su -l netseek (切换到netseek这个用户,将提示输入密码)

 

12.whoami,whereis,which,id

 

//whoami:确认自己身份

 

//whereis:查询命令所在目录以及帮助文档所在目录

 

//which:查询该命令所在目录(类似whereis)

 

//id:打印出自己的UID以及GID。(UID:用户身份唯一标识。GID:用户组身份唯一标识。每一个用户只能有一个唯一的UID和 GID)

 

eg: whoami //显示你自已登陆的用户名

 

whereis bin 显示bin所在的目录,将显示为:/usr/local/bin

 

which bin

 

13. grep,find

 

grep:文本内容搜索;find:文件或者目录名以及权限属主等匹配搜索

 

eg: grep success *    /*查找当前目录下面所有文件里面含有success字符的文件

 

14. kill 可以杀死某个正在进行或者已经是dest状态的进程

 

eg; ps ax

 

15. passwd 可以设置口令

 

16. history 用户用过的命令

 

eg: history //可以显示用户过去使用的命令

 

17. !! 执行最近一次的命令

 

18. mkdir命令

 

eg: mkdir netseek //创建netseek这个目录

 

19. tar 解压命令

 

eg: tar -zxvf nmap-3.45.tgz //将这个解压到nmap-3.45这个目录里

 

20. finger 可以让使用者查询一些其他使用者的资料

 

eg: finger //查看所用用户的使用资料

 

finger root //查看root的资料

 

linux下一些主要目录的功用

/bin 二进制可执行命令

/dev 设备特殊文件

/etc 系统管理和配置文件

/etc/rc.d 启动的配置文件和脚本

/home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示

/lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件

/sbin 系统管理命令,这里存放的是系统管理员使用的管理程序

/tmp 公用的临时文件存储点

/root 系统管理员的主目录(呵呵,特权阶级)

/mnt 系统提供这个目录是让用户临时挂载其他的文件系统。

/lost+found 这个目录平时是空的,系统非正常关机而留下”无家可归”的文件(windows下叫什么.chk)就在这里

/proc 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。

/var 某些大文件的溢出区,比方说各种服务的日志文件

/usr 最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含:

/usr/X11R6 存放X window的目录

/usr/bin 众多的应用程序

/usr/sbin 超级用户的一些管理程序

/usr/doc linux文档

/usr/include linux下开发和编译应用程序所需要的头文件

/usr/lib 常用的动态链接库和软件包的配置文件

/usr/man 帮助文档

/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里

/usr/local/bin 本地增加的命令

/usr/local/lib 本地增加的库

 

二 、linux文件系统

文件系统指文件存在的物理空间,linux系统中每个分区都是一个文件系统,都有自己的目录层次结构。linux会将这些分属不同分区的、单独的文件系统按一定的方式形成一个系统的总的目录层次结构。一个操作系统的运行离不开对文件的操作,因此必然要拥有并维护自己的文件系统。

linux文件系统使用索引节点来记录文件信息,作用像windows的文件分配表。

索引节点是一个结构,它包含了一个文件的长度、创建及修改时间、权限、所属关系、磁盘中的位置等信息。一个文件系统维护了一个索引节点的数组,每个文件或目录都与索引节点数组中的唯一一个元素对应。系统给每个索引节点分配了一个号码,也就是该节点在数组中的索引号,称为索引节点号。

linux文件系统将文件索引节点号和文件名同时保存在目录中。所以,目录只是将文件的名称和它的索引节点号结合在一起的一张表,目录中每一对文件名称和索引节点号称为一个连接。

对于一个文件来说有唯一的索引节点号与之对应,对于一个索引节点号,却可以有多个文件名与之对应。因此,在磁盘上的同一个文件可以通过不同的路径去访问它。

可以用ln命令对一个已经存在的文件再建立一个新的连接,而不复制文件的内容。

连接有软连接和硬连接之分,软连接又叫符号连接。它们各自的特点是:

 

硬连接:原文件名和连接文件名都指向相同的物理地址。

目录不能有硬连接;硬连接不能跨越文件系统(不能跨越不同的分区)

文件在磁盘中只有一个拷贝,节省硬盘空间;

由于删除文件要在同一个索引节点属于唯一的连接时才能成功,因此可以防止不必要的误删除。

 

符号连接:用ln -s命令建立文件的符号连接

符号连接是linux特殊文件的一种,作为一个文件,它的数据是它所连接的文件的路径名。类似windows下的快捷方式。

可以删除原有的文件而保存连接文件,没有防止误删除功能。

 

这一段的的内容过于抽象,又是节点又是数组的,我已经尽量通俗再通俗了,又不好加例子作演示。大家如果还是云里雾里的话,我也没有什么办法了,只有先记住,日后在实际应用中慢慢体会、理解了。这也是我学习的一个方法吧。

 

三 、挂载文件系统

由上一节知道,linux系统中每个分区都是一个文件系统,都有自己的目录层次结构。linux会将这些分属不同分区的、单独的文件系统按一定的方式形成一个系统的总的目录层次结构。这里所说的”按一定方式”就是指的挂载。

将一个文件系统的顶层目录挂到另一个文件系统的子目录上,使它们成为一个整体,称为挂载。把该子目录称为挂载点。

举个例子吧:

 

 

根分区:

 

 

/根目录

┏━━━━┳━━━━━┳━━━━━┳━━━━━╋━━━━━┳━━━━━┳━━━━━┳━━━━━┓

┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃

bin home dev etc lib sbin tmp usr var

┏━┻━┓

┃ ┃

rc.d cron.d

┏━━━┳━━━┳━┻━┳━━━━┓

┃ ┃ ┃ ┃ ┃

init.d rc0.d rc1.d rc2.d ……

 

 

 

 

/usr分区 :

 

usr

┏━━━━┳━━━╋━━━┳━━━┳━━━┓

┃ ┃ ┃ ┃ ┃ ┃

X11R6 src lib local man bin

┃ ┃

┃ ┏━━━╋━━━┓

┃ ┃ ┃ ┃

linux bin lib src

Loading