首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >离职前他分享了阿里的核心面试题库

离职前他分享了阿里的核心面试题库

作者头像
互联网老辛
发布于 2020-05-26 05:13:45
发布于 2020-05-26 05:13:45
67000
代码可运行
举报
文章被收录于专栏:互联网老辛互联网老辛
运行总次数:0
代码可运行

大公司的面试,看中的是你对于基础知识的掌握程度, 因为大公司的产品基本是基于开源产品的二次开发,或者使用自动化平台,而这些二次开发的东西是你在其他公司所无法接触到的,更别提让你熟悉阿里的产品或者工具。所以只能通过面试基础知识来考核你的学习能力

1.netstat -antlp中t表示什么意思?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
netstat用来查看系统当前系统网络状态信息,包括端口,连接情况等
netstat -atunlp,各参数含义如下:

-t : 指明显示TCP端口
-u : 指明显示UDP端口
-l : 仅显示监听套接字(LISTEN状态的套接字)
-p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序
-n : 不进行DNS解析
-a 显示所有连接的端口

2.怎么查看内存?

方法一:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# cat /proc/meminfo 
MemTotal:        3861320 kB
MemFree:         2972532 kB
MemAvailable:    3134304 kB

方法二:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:           3.7G        478M        2.8G         14M        389M        3.0G
Swap:          2.0G          0B        2.0G

方法三:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# vmstat  -s |head -n 3
      3861320 K total memory
       487792 K used memory
       347428 K active memory

3. ss 命令可以用来做什么?

显示所有的TCP端口和使用它们的进程

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# ss -tnap
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port
LISTEN      0      128    127.0.0.1:631                     *:*                   users:(("cupsd",pid=1280,fd=12))
LISTEN      0      128    192.168.1.63:3000                    *:*

4. shell命令中# 分别表示什么意思

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$0 当前脚本的文件名;
$n 传递给脚本的第n个参数值(n为1~9);
$* 传递给脚本的所有参数;
$# 传递给脚本的参数个数;
$? 显示最后命令的退出状态(0表示没有错误,其他任何值表明有错误);
$$ 当前脚本运行的进程ID;
$@ 与$*功能类似;
$!执行上一个背景指令的PID(后台运行的最后一个进程的进程ID)
$$ 这个程式的PID(脚本运行的当前进程ID)
$- 显示shell使用的当前选项,与set命令功能相同

5. shell随机产生20位数字和字母的密码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# echo $(date +%t%N)$RANDOM|md5sum|cut -c 2-21
bc1234b5b0276c4db48b

6.如何查看动态日志?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# tail -f /var/log/messages-20200427 
Apr 27 02:00:01 xinsz08-63 systemd: Started Session 26 of user root.
Apr 27 02:01:01 xinsz08-63 systemd: Started Session 27 of user roo

备注:打印最后4条日志信息 tail -n 4 /var/log/messages-20200427

7.如何通过SSH在远程linux系统上运行命令?首先确保设置了ssh无秘钥登陆,然后使用命令ssh进行远程执行命令,例如我们要查看的是磁盘信息

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ssh 192.168.1.63 df -h

8.如何查看系统版本号?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# cat /etc/centos-release
CentOS Linux release 7.7.1908 (Core)

9.查看系统内核?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# uname -r
3.10.0-1062.12.1.el7.x86_64

10.统计网页/inde.html的uv

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
grep "/index.html" /var/log/nginx/access.log | cut –d “ ” –f 4| sort | uniq | wc –l

备注:统计整站的独立IP

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cat /var/log/nginx/access.log | cut –d “ ” –f 1 | sort| uniq | wc -l

11.linux下使用find查找/var/log/目录下修改时间超过7天且文件名字带. 的文件,找到并删除

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# find /var/log/ -mtime +7 -name "*.*" -exec rm  {} \;

备注:+7 查找7天前的文件 exec {} \; 固定写法

注意:此命令不要轻易用

12.查看某个端口的网络连接情况

[root@xinsz08-63 ~]# lsof -i:22 (查看22号端口被占用情况)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    1283 root    3u  IPv4  27704      0t0  TCP *:ssh (LISTEN)
sshd    1283 root    4u  IPv6  27713      0t0  TCP *:ssh (LISTEN)
sshd    3046 root    3u  IPv4  44272      0t0  TCP xinsz08-63:ssh->192.168.1.4:sm-pas-5 (ESTABLISHED)

13.列出当前机器监听的端口

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# lsof -i -s TCP:LISTEN
COMMAND    PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
systemd      1    root   48u  IPv4  19237      0t0  TCP *:sunrpc (LISTEN)
systemd      1    root   50u  IPv6  19239      0t0  TCP *:sunrpc (LISTEN)
(LISTEN)
sshd      1283    root    3u  IPv4  27704      0t0  TCP *:ssh (LISTEN)
sshd      1283    root    4u  IPv6  27713      0t0  TCP *:ssh (LISTEN)
grafana-s 1287 grafana    6u  IPv4  30239      0t0  TCP xinsz08-63:hbci (LISTEN)
master    1488    root   13u  IPv4  28558      0t0  TCP localhost:smtp (LISTEN)

14.能够查看端口信息的命令

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ss:可以用于转储套接字统计信息。
netstat:可以显示打开的套接字列表。
lsof:可以列出打开的文件。
fuser:可以列出那些打开了文件的进程的进程 ID。
nmap:是网络检测工具和端口扫描程序。

方法一:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# ss -tnlp |grep ssh
LISTEN     0      128          *:22                       *:*                   users:(("sshd",pid=1283,fd=3))
LISTEN     0      128       [::]:22                    [::]:*                   users:(("sshd",pid=1283,fd=4))
[root@xinsz08-63 ~]#

方法二:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# ss -tnlp |grep :22
LISTEN     0      128          *:22                       *:*                   users:(("sshd",pid=1283,fd=3))
LISTEN     0      128       [::]:22                    [::]:*                   users:(("sshd",pid=1283,fd=4))
[root@xinsz08-63 ~]#

方法三:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# netstat -tnlp |grep ssh
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1283/sshd
tcp6       0      0 :::22                   :::*                    LISTEN      1283/sshd
[root@xinsz08-63 ~]#
[root@xinsz08-63 ~]# netstat -tnlp |grep ":22"
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1283/sshd
tcp6       0      0 :::22                   :::*                    LISTEN      1283/sshd
[root@xinsz08-63 ~]#

方法四:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# lsof -i -P |grep ssh
sshd      1283    root    3u  IPv4  27704      0t0  TCP *:22 (LISTEN)
sshd      1283    root    4u  IPv6  27713      0t0  TCP *:22 (LISTEN)
sshd      3046    root    3u  IPv4  44272      0t0  TCP xinsz08-63:22->192.168.1.4:2942 (ESTABLISHED)

方法五:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# fuser -v 22/tcp
                     用户     进程号 权限   命令
22/tcp:              root       1283 F.... sshd
                     root       3046 F.... sshd
[root@xinsz08-63 ~]#

方法六:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08-63 ~]# nmap -sV -p 22 localhost

Starting Nmap 6.40 ( http://nmap.org ) at 2020-04-27 23:08 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000073s latency).
Other addresses for localhost (not scanned): 127.0.0.1
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.4 (protocol 2.0)

15.一条命令防范ddos攻击

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@xinsz08 logs]# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
      1 100.100.30.25
      1 Address
      1 servers)
      2 120.244.154.106

此套面试题,已经经过阿里学员,百度学员亲身体验,电话面试直接问基础命令。有时候,最基础的反而是最能体现你工作能力的地方,也往往是很多人最薄弱的地方。

基础不牢,地动山摇,小伙伴们还是要把基础掌握牢固啊。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-05-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据架构师专家 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
如何使用netstat,lsof和nmap检查Linux中的开放端口
目录 使用 netstat 检查开放端口 使用 lsof 检查开放端口 使用 nmap 检查开放端口 在对网络连接或特定于应用程序的问题进行故障排除时,首先要检查的事情之一应该是系统上实际使用的端口以及哪个应用程序正在侦听特定端口。 网络端口由其编号、关联的 IP 地址和通信协议类型(例如 TCP 或 UDP)标识。最重要的是,开放端口是应用程序或进程侦听的网络端口,充当通信端点。 可以使用防火墙打开或关闭(过滤)每个侦听端口。一般而言,开放端口是接受来自远程位置的传入数据包的网络端口。 使用 netsta
入门笔记
2022/06/02
2.7K0
每天学一个 Linux 命令(68):lsof
lsof 命令用于显示 Linux 系统当前已打开的所有文件列表。查看进程或系统打开的文件会给调试带来极大的帮助。下面简单地介绍 lsof 常使用的功能。
民工哥
2021/03/30
5210
Linux 命令神器:lsof 入门
lsof是系统管理/安全的尤伯工具。我大多数时候用它来从系统获得与网络连接相关的信息,但那只是这个强大而又鲜为人知的应用的第一步。将这个工具称之为lsof真实名副其实,因为它是指“列出打开文件(lis
小小科
2018/05/03
1.2K0
Linux系统之lsof命令的基本使用
TYPE列:打开文件的类型,如REG(常规文件)、DIR(目录)、CHR(字符设备)、FIFO(管道)、SOCK(套接字)等。
江湖有缘
2023/11/23
9150
Linux系统之lsof命令的基本使用
06·Shell编程-企业级实战练习
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
DriverZeng
2022/09/26
3650
06·Shell编程-企业级实战练习
深入探索Linux的lsof命令
在Linux系统中,了解哪些文件被哪些进程打开对于系统管理和问题诊断是极其重要的。这正是lsof命令,即List Open Files,发挥其强大功能的场景。本文旨在详细介绍lsof的起源、底层原理、参数意义,常见用法,并详解其返回结果的每个字段含义。此外,我们将讨论在使用lsof命令时需要注意的事项。
GousterCloud
2024/04/02
4680
深入探索Linux的lsof命令
linux每日命令(39):lsof命令
lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过lsof工具能够查看这个列表对系统监测以及排错将是很有帮助的。
用户1214487
2018/12/25
1.1K0
linux中10个lsof命令示例
lsof意义LiSt Open Files用于找出哪些文件被哪个进程打开。众所周知Linux/Unix将所有内容都视为文件(pipes,sockets,directories,devices等等)。使用的原因之一lsof命令是当磁盘无法卸载时,因为它表示正在使用文件。借助此命令,我们可以轻松识别正在使用的文件。 1. 使用 lsof 命令列出所有打开的文件 在下面的示例中,它将显示打开文件的长列表,其中一些被提取出来以便更好地理解哪些显示列Command,PID,USER,FD,TYPE等等。 # lsof
入门笔记
2022/06/02
6760
LINUX常用100条命令总结【三】
# lsof -i@192.168.100.106 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME chronyd 558 chrony 3u IPv4 61445 0t0 UDP 192.168.100.106:51617->107.76.76.144.in-addr.arpa:ntp sshd 3456 root 3u IPv4 32140 0t0 TCP 192.168.100.106:ssh->192.168.100.103:62943 (ESTABLISHED)
好派笔记
2021/09/13
6420
Linux常用网络工具总结(一)
本文整理了在实践过程中使用的Linux网络工具,这些工具提供的功能非常强大,我们平时使用的只是冰山一角,比如、、、等。 本文不会深入研究这些命令的强大用法,因为每个命令都足以写一篇文章,本文只是简单地介绍并辅以几个简单demo实例,旨在大脑中留个印象,平时遇到问题时能够快速搜索出这些工具,利用强大的工具,提供一定的思路解决问题。 ping 使用这个命令判断网络的连通性以及网速,偶尔还顺带当做域名解析使用(查看域名的IP): ping google.com 默认使用该命令会一直发送ICMP包直到用户手动中止,
企鹅号小编
2018/01/31
1.4K0
Linux常用网络工具总结(一)
CPU占用率爆满,服务器遭遇挖矿如何排查
「太用力的人跑不远, 真正坚持到最后的人靠的不是激情,而是恰到好处的喜欢和投入。」
山河已无恙
2023/03/02
6.1K0
CPU占用率爆满,服务器遭遇挖矿如何排查
CentOS7 监控进程网络流量工具安装
服务器在做测试的时候,需要监控网络流量,用来了解在不同人数的时候服务器的网络使用量。
拓荒者
2019/03/15
2K0
Linux命令行:查看服务器开放的端口号
在网络技术中,端口(Port)包括逻辑端口和物理端口两种类型。物理端口指的是物理存在的端口,如ADSL Modem、集线器、交换机、路由器上用 于连接其他网络设备的接口,如RJ-45端口、SC端口等等。逻辑端口是指逻辑意义上用于区分服务的端口,如TCP/IP协议中的服务端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等。由于物理端口和逻辑端口数量较多,为了对端口进行区分,将每个端口进行了编号,这就是端口号
用户5640963
2019/07/26
27.9K0
Linux命令行:查看服务器开放的端口号
linux查看端口占用的命令_端口占用查看命令
大家好,又见面了,我是你们的朋友全栈君。 在Linux使用过程中,需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询 netstat命令各个参数说明如下:   -t : 指明显示TCP端口   -u : 指明显示UDP端口   -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)   -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。   -n : 不进行DNS轮询,显示IP(可以加速操作) 即可显示当前服务器上所有端口及进程服务,于grep结合可查看某个具体端口及服务情况·· netstat -ntlp //查看当前所有tcp端口· netstat -ntulp |grep 80 //查看所有80端口使用情况·
全栈程序员站长
2022/09/18
89.6K0
linux 系统监控、诊断工具之 lsof 用法简介
1、lsof 简介 lsof 是 linux 下的一个非常实用的系统级的监控、诊断工具。 它的意思是 List Open Files,很容易你就记住了它是 “ls + of”的组合~ 它可以用来列出被各种进程打开的文件信息,记住:linux 下 “一切皆文件”, 包括但不限于 pipes, sockets, directories, devices, 等等。 因此,使用 lsof,你可以获取任何被打开文件的各种信息。 只需输入 lsof 就可以生成大量的信息,因为 lsof 需要访问核心内存和各种文
用户1177713
2018/02/24
2.4K0
Linux日志取证
(2)发现隐匿的ssh登录行为 如果是隐匿的ssh正在进行可以通过lsof 或者 netstat 或者ps 命令发现
全栈工程师修炼指南
2022/09/28
1.9K0
Linux 测试远程服务器端口开放命令&测试本地端口占用命令
1.测试远程服务器端口开放命令 1.1.TCP telnet 42.11.12.13 123 1.2.UDP nc -vuz 42.11.12.13 123 2.测试本地服务器端口占用命令 [root@localhost nwom]#  netstat -tunlp |grep 22 tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      38844/sshd tcp        0
用户2836074
2018/08/15
3.3K0
Linux日志取证
(2)发现隐匿的ssh登录行为 如果是隐匿的ssh正在进行可以通过lsof 或者 netstat 或者ps 命令发现
全栈工程师修炼指南
2020/10/23
2.2K0
Linux 进程管理
进程是 UNIX/Linux 用来表示正在运行的程序的一种抽象概念,所有系统上面运行的的数据都会以进程的形态存在。
用户1679793
2020/05/06
7.2K0
linux查看端口占用情况的命令是什么_查看端口状态命令
2.使用 lsof -nP -iTCP -sTCP:LISTEN 查看占用端口的程序
全栈程序员站长
2022/11/01
18.3K0
相关推荐
如何使用netstat,lsof和nmap检查Linux中的开放端口
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档