• 面试


    1. Linux基本指令有哪些?top、chmod、du/df、vim、head、tail、ps、kill、cat、ping、grep、cp、mv、rm、tar、diff、scp、ssh、more/less、mkdir、rmdir等等。

    2. 如何查看当前CPU/内存等系统资源的使用情况(动态查看内存占用)?top

      • top命令可以显示正在运行的进程列表以及正在使用的CPU数量。
    3. liunx下,如何用shell下查看cpu内存资源使用情况用什么命令?

    4. 查看一个程序是否运行的linux命令?比如如果我们想判断tomcat是否在运行中呢,怎么操作?

      ps -ef|grep tomcat 查看所有和tomcat有关的进程
      
    5. 如何查看当前所有进程(有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等)?

    6. Linux 查看某个进程内存泄漏的指令

    7. 如何查看一个进程内存使用的情况(查看某一进程所占用内存的方法)?

      • 比如我们查看kafka的进程内存使用的情况:

        1. 先用ps命令找到kafka这个程序进程的id,比如 ps -ef | grep kafka ,可以看到是 2913
        2. 查看内存:top -p 2913,可以动态实时的看到CPU和内存的占用率 可以看到%CPU和%MEM对应的数据是多少      
        ----------------------------------------------------------------------
        或	:	ps -aux | grep kafka 
        
      • https://blog.csdn.net/weixin_41228362/article/details/105161407

    8. 查看当前网络连接(查看网络连接情况/查看网络连接数和端口)的指令?

      netstat -anp
      
      补充:查看111端口被那个进程调用:netstat -anp | grep 111
      
    9. linux显示或配置网络设备的命令?ifconfig

    10. 查看当前内存使用状态的?free

    11. 如何查看linux中一个进程有什么资源?

      cat /proc/pid/status	打印出当前进程的详细情况
      
    12. 写一个Linux命令去查看远程进程连接本地主机的一个端口号?

    13. Linux中进程通信方式

    14. Linux不同主机(=两台linux服务器)之间传文件什么命令(scp、rcp、wget、rsync)

    15. Linux下载文件命令(wget)

    16. vim有几种工作模式:三种。命令模式、行末模式、编辑模式。

    17. 说一下SYNflood攻击,以及如何解决?

      • 你只是断开了连接,攻击还是在不断进行,你如何防止黑客的SYNflood攻击,如何在服务器端实现?
    18. 僵尸进程:有时候有些程序即使执行完了(完成了生命周期)也依然留在进程表中,这些进程就是僵尸进程

    19. Linux下我有一个日志,日志是格式化的,第一列是ip,第二列是时间,第三列是请求参数;现在找出请求次数最多的ip(用Linux命令)

    20. 如何查看进程:ps -e 显示所有进程,环境变量。ps命令用于查看当前正在运行的进程,最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,再对特定的进程进行操作。

      ps -ef | grep java	表示查看与JAVA相关进程的信息
      ps -aux | grep java	-aux 显示所有状态
      
    21. linux如何杀死进程?/如何终止进程?

      1. 根据进程id杀进程:kill PID
      2. kill掉所有进程名为指定参数值的进程:killall process_name
      3. 强制kill掉指定id/线程号的进程,如:kill -9 PID
      
    22. kill一个进程的过程是什么样子的

    23. 如何调试代码?代码中出现问题你会如何定位?

    24. 简述dns解析流程?/访问http://www.baidu.com的解析流程

      • 优先查找本地dns缓存,查找本地/etc/hosts文件,是否有强制解析。如果没有去/etc/resolv.conf指定的dns服务器中查找记录(需联网,在dns服务器中找到解析记录后,在本地dns中添加缓存,完成一次dns解析
    25. DNS查询的两种模式:递归模式、迭代模式。

    26. 如何复制一个文档/文件夹到指定路径下?

      • 复制文档:cp 被复制的文档路径 文档被复制到的路径

      • 复制文件夹:cp -r 被复制的文件夹路径 文件夹被复制到的路径

        • 文件夹复制时要加“ -r ”,否则文件夹就不复制了。“ -r ”表示递归的意思,把文件夹和里面的文件全部复制过去。
    27. touch命令干什么的?修改文件或目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。

    28. 如果想知道每个磁盘分区中的空间用什么命令?

      • df。默认千字节,可以加“ -m”更改为兆字节
    29. 零拷贝原理?使用直接 I/O 的数据传输、利用 mmap() 代替 read()、利用sendfile()、利用splice()

      系统吞吐量是指在单位时间内中央处理器(CPU)从存储设备读取、处理、存储信息的量。
      可以参考博客:<https://www.jianshu.com/p/580a14db9d77>
      
    30. epoll为什么用红黑树,和select相比有什么优劣势,epoll_wait的底层工作原理

    31. epoll相对于select有什么优点?epoll的垂直和水平触发方式?

      • Linux中IO复用的实现方式主要有select、poll和epoll

      • Select:注册IO、阻塞扫描,监听的IO最大连接数不能多于FD_SIZE

      • Poll:原理和Select相似,没有数量限制,但IO数量大扫描线性性能下降

      • Epoll :事件驱动不阻塞,mmap实现内核与用户空间的消息传递,数量很大,Linux2.6后内核支持

      • Level_triggered(水平触发):当被监控的文件描述符上有可读写事件发生时,epoll_wait()会通知处理程序去读写。如果这次没有把数据一次性全部读写完(如读写缓冲区太小),那么下次调用 epoll_wait()时,它还会通知你在上次没读写完的文件描述符上继续读写

      • Edge_triggered(边缘触发):当被监控的文件描述符上有可读写事件发生时,epoll_wait()会通知处理程序去读写。如果这次没有把数据全部读写完(如读写缓冲区太小),那么下次调用epoll_wait()时,它不会通知你,也就是它只会通知你一次,直到该文件描述符上出现第二次可读写事件才会通知你

    32. 软硬链接

      • Linux链接分两种,硬链接和软链接/符号链接。(默认情况,ln命令产生硬链接)

      • 硬连接的作用:允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止误删的功能。

      • 硬链接缺点:不能创建到目录的硬链接;只有在同一个文件系统的文件之间才能创建硬链接

      • 软链接/符号链接:软链接文件有类似于Windows的快捷方式,实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

  • 相关阅读:
    合并报表优化记录
    如何在后台代码中执行原生sql?
    eclipse从数据库逆向生成Hibernate实体类
    用Eclipse进行远程Debug代码
    hibernate自动生成数据库表
    hibernate自动生成数据库表
    php通过UNIX源码编译安装
    php设置方法
    php其他配制选项
    终于做出了目录认证!
  • 原文地址:https://www.cnblogs.com/OFSHK/p/14583400.html
Copyright © 2020-2023  润新知