linux面试题

Linux面试题

推荐终端工具

  • SecureCRT(远程连接linux的工具)
  • xshell(远程连接linux的工具)
  • winscp(windows和linux文件相互拷贝软件)

挂载的含义

Linux下,mount挂载的作用,就是将一个设备(通常是存储设备)挂接到一个已存在的目录(此目录必须是空目录)上。访问这个目录就是访问该存储设备。linux操作系统将所有的设备都看作文件,它将整个计算机的资源都整合成一个大的文件目录。我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上,然后通过访问这个目录来访问存储设备。挂载就是把设备放在一个目录下,让系统知道怎么管理这个设备里的文件,了解这个存储设备的可读写特性之类的过程。

linux小细节

  • 区分大小写(包括文件名称,目录名称)
  • tab建可以自动补全
  • 所有内容以文件形式保存,包括硬件
  • linux不考拓展名区分文件,有的扩展名可能只是为看着方便,不写linux也认识。所以很多window下的病毒linux不认识,也就安全点,这也是很多软件需要单独面向linux开发的原因吧。
  • 所有的存储设备都必须挂载之后用户才能使用,包括硬盘、u盘和光盘。(挂载的概念简单说就是,u盘的文件目录是属于u盘本身的,在挂载命令行是找不到的,因此linux会将开辟一个属于自己的文件目录(相当于分了一块区域),将u盘目录放进去,可以理解为合二为一。此过程即挂载。)
  • windows 下的程序不能直接在linux中安装和运行。
  • 远程服务器不允许关机,只能重启。(关机了只能去服务器当地启动,可能你就被开了)
  • 重启时应该关闭服务。
  • 设置防火墙不要把自己踢出去了(可以设置个定时器,五分钟取消防火墙,等自己测试好了再取消这个定时器)
  • 合理分配权限。
  • 定期备份重要数据和日志(不要把鸡蛋放在同一个篮子,比如在一个房间里备份就不太好,隔的近容易一块丢失)。

常用命令(重要)

ls/ll

注意:

  1. ls查看当前目录下的”显示“文件,ls -a 是查看当前目录所有文件,也就是把.开头的文件,也就是隐藏文件查找出来了,隐藏文件主要是系统文件,藏起来的意义就是告诉用户没有什么重要修改不要随意修改。ls -l的l可以理解为long,显示鲜目录下所有文件更长的信息,如下图。 ls -ld是查看当前目录的长信息。d可以理解为directory。 ls -i 查看该目录的inode(i节点)信息。

在这里插入图片描述

上图一共有7列,解释一下部分列。

第一列 文件类型 。 - 代表文件,d代表是目录,l代表软链接。

在这里插入图片描述

第二列是文件引用次数

第三列是文件所有者(创建者)

第四列是文件所属组(使用者,很多人)

第五列是文件大小,默认是k单位,可以用ls -lh来显示文件大小 , h可以理解为human,人性化显示

第六列是文件最新修改时间

cd

mkdir(创建目录,此命令不能越级创建比如/tmp/test/test1.因为没有test这个目录,但使用mkdir可以)、rmdir (remove)删除某一个目录,这个一般目录下有子目录就不能删除,一般不用这个。一般用rm -rf来进行递归无限制的删除。

rm 删除文件。rm -f 强制删除,没有删除提示。

cp、 文件复制 .形如 cp /xx /xx /xx

cp -r 复制目录

mv 剪切和改名。 用来为文件或目录改名、或将文件或目录移入其它位置。

touch 创建文件

cat 查看文件内容。 cat -n (number)内容有行号。tac倒着显示

ps -ef | grep xxx、 检查某进程是否存在

kill、free-m、

tar -zcvf 文件名.tar.gz 先打包后压缩 (.tar.gz文件) ,一般使用这个。v是显示压缩信息,可要可不要

tar -zxvf file.tar.gz 解压

gzip 文件名 压缩文件生成.gz压缩包

gunzip 解压.gz文件

ping ip地址 实现连通。 可以加 -c 3 指定值通信三次

chmod 权限管理命令 chmod 640 意思是rw r - 分别代表读写 写 无权限。4是读,2是写,1是执行(如果是文件的话执行可以理解为可以cd进去某个目录,一般有执行就有读。因为进去不能读没有意义,能读不能进去也没有意义)。 6就是读写,0就是没有权限。(注意的是即使你拥有某个文件的全部权限,但你只拥有该文件所属目录的查看和执行权限,那也不能删除这个文件,但可以查看和修改该文件。总结一下就是杀狗看主人,而不是打,打相当于修改,杀代表删除

查看进程:(例:如何查看所有xx进程)

ps -ef | grep xxx

​ ps -aux | grep xxx(-aux显示所有状态)

**编辑 vi/vim : **

vi x.log 编辑你的日志文件

i 写入

:wq 保存退出

:q! 或者 ctrl+c 退出不保存

Shift+g 跳至当前文本最后一行,看最新的日志,都在最下面

useradd 添加用户

passwd lcl 为lcl修改密码

who 查看所有用户信息

top⭐

显示系统中各个进程的资源占用状况,可以看是否有 CPU 占用过大的进程。

less 和 more

less(读奈斯) 与 more 类似,但使用 less 可以随意浏览文件(pageup向上翻页),并且可以在页面使用 “/关键字” 来显示要搜索的词。而 more (用空格来翻页)仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。

tail⭐

head -n 查看前几行 tail -n查看末尾几行(默认是10行)。

tail -f 动态显示末尾几行

查看日志:

tail -f *.log : 适用于实时查看日志,开发环境还行,生产就算了,日志会很多。

tail -f error.log :生产中一般用这个实时看异常日志

-f :循环读取 ,用于查阅正在改变的日志文件。

netstat⭐

用于显示网络状态。

netstat -tlun 查看本机监听的端口

-a (all)显示所有选项,netstat默认不显示LISTEN相关
-n 拒绝显示别名,能显示数字的全部转化成数字。(重要)
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计 (重要)

grep 查找⭐

grep 是必备日志分析命令

grep -r ‘关键字如商品ID’ *.log (使用频率最高)

**grep ‘关键字如商品ID’ *.log | grep 免费商品(在管道符前条件结果中,在加条件筛选下) **

grep ‘关键字如商品ID’ *.log >> anan.txt 【相关日志输入到一个txt中,下载到本地慢慢看,我最喜欢】

grep “被查找的字符串” 文件名
grep -n 2019-10-24 00:01:11' *.log
可以查找 *.log文件中,查到时间内的所有信息

查找特定文件 find

find 路径 -name "需要查找的文件名"

比如:find / -name “xxx.txt” 就可以得到文件名所在的目录

*是通配符在这里插入图片描述

管道操作符 |

可将指令连接起来,前一个指令的输出作为后一个指令的输入

杀僵尸进程

什么是僵尸进程(todo)(产生原因以及解决办法)

僵尸进程是当子进程比父进程先结束,而父进程又没有回收子进程,释放子进程占用的资源,此时子进程将成为一个僵尸进程。如果父进程先退出 ,子进程被init接管,子进程退出后init会回收其占用的相关资源

我们都知道进程的工作原理。我们启动一个程序,开始我们的任务,然后等任务结束了,我们就停止这个进程。 进程停止后, 该进程就会从进程表中移除。

部分程序员,肯定喜欢下面命令

ps -ef | grep java 【先查java进程ID】

kill -9 java进程ID 【生产环境谨慎使用】

对文件内容做统计 awk ⭐

依次处理文件的每一行,并读取里面的每一个字段,可用作统计。

$ awk 动作 文件名

批量替换 sed

sed 配合正则表达式批量替换文本内容

rpm 和yum包管理工具

rpm是命令管理工具 yum是在线管理工具

rpm -ivh xxx 安装某包(但前提是要有 xxx.rpm包了)

你经常使用哪些 Linux 命令,主要用来解决什么问题?

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值