liunx面试题目
如何看当前Linux系统有几颗物理CPU和每颗CPU的核数?
查看物理cup:
cat /proc/cpuinfo|grep -c ‘physical id’
查看每颗cup核数
cat /proc/cpuinfo|grep -c ‘processor’
若希望自动实现软件包的更新,可以使用yum-cron并启动该服务 yum -y install yum-cron systemctl enable yum-cron.service systemctl start yum-cron.service systemctl enable yum-cron.service 命令会将 yum-cron 服务设置为开机启动,但不会立即启动该服务 下载此命令会有/etc/yum/yum-cron.conf来控制每日更新行为, /etc/yum/yum-cron-hourly.conf来控制每小时更新行为
免受攻击的最好的方式就是安装尽量少的服务软件,尽可能关闭不必要的服务守护进程
systemctl list-unit-files| grep enabled|grep .service
开源查看到已经启动的,如果有你不需要的就disbale来关闭不需要的服务,也可以写一个脚本来停止服务
systemctl mask control-alt-delete.service禁用按键重启
CA certificate authority,ca签署的证书是需要收费的
pki public key infrastructure
证书签名是用于验证和确保数字证书的真实性和完整性。数字证书在网络通信中扮演着至关重要的角色,特别是在SSL/TLS加密通信、电子邮件安全、代码签名等方面
r:表示running,表示正在跑的任务数 b:表示blocked,表示被阻塞的任务数 si:表示有多少数据从交换分区读入内存 so:表示有多少数据从内存写入交换分区 bi:表示有多少数据从磁盘读入内存 bo:表示有多少数据从内存写入磁盘
linux系统里,您知道buffer和cache如何区分吗?
buffer和cache都是内存中的一块区域,当CPU需要写数据到磁盘时,由于磁盘速度比较慢,所以CPU先把数据存进buffer,然后CPU去执行其他任务,buffer中的数据会定期写入磁盘;cache把即将用到的数据提前存入cache,CPU直接从Cache中拿数据要快的多。
多线程压缩文件是什么
在这过程中,又发现了pigz这个支持多线程压缩的软件,所以一并将相关内容放这里。
sudo apt install pigz
与tar配合使用
# 打包压缩
tar --use-compress-program=pigz -cvpf XXX.tgz path/files
# 解压
tar --use-compress-program=pigz -xvpf XXX.tgz
rsync和lsyncd的区别是什么
rsync 通过比较两边文件是否相同,不相同才进行更新。
但是rsync无法知道“什么时候同步”,因为rsync只有执行同步命令的时候,才会去扫描文件判断哪些文件被修改了,只能建立一个定时任务,每隔一定的时间(比如5分钟,10分钟等等)去执行一次同步,这样虽然能同步,但却“不实时”。
lsyncd实际上是lua语言封装了 inotify 和 rsync 工具,采用了 Linux 内核(2.6.13 及以后)里的 inotify 触发机制,然后通过rsync去差异同步,达到实时的效果。
免登录资源服务器 备份服务器将公钥复制到资源服务器
首先要从 Linux 的 init 程序说起。Linux 系统在启动过程中,内核完成初始化以后,由内核第一个启动的程序便是 init 程序,路径为 /sbin/init(为一个软连接,链接到真实的 init 进程),其 PID 为1,它为系统里所有进程的“祖先”,Linux 中所有的进程都由 init 进程直接或间接进行创建并运行
init 程序的发展,大体上可分为三个阶段:sysvinit->upstart->systemd,根据 init 进程的发展特性
如何实时查看网卡流量为多少?如何查看历史网卡流量?
yum install -y sysstat 安装sysstat包,获得sar命令 sar -n DEV 查看网卡流量,默认10分钟更新一次 sar -n DEV -f /var/log/sa/sa22 查看指定日期的流量日志
ps 查看系统进程时,有一列为STAT, 如果当前进程的stat为Ss 表示什么含义?如果为Z表示什么含义?
S表示正在休眠;s表示主进程;Z表示僵尸进程。
能否给一个网卡配置多个IP? 如果能,怎么配置?
cp /etc/sysconfig/network-scripts/ifcfg-eth33 /etc/sysconfig/network-scripts/ifcfg-eth33:1
再将它们的配置改一下ip就行了
rsync 同步命令中,下面两种方式有什么不同呢?
(1) rsync -av /xiaoxiao/ ip:/xiaoxiao/
(2) rsync -av /xiaoxiao/ ip::xiaoxiao
其中(1)是通过ssh方式同步的,(2)后者是通过rsync服务的方式同步的。
rsync 同步时,如果要同步的源中有软连接,如何把软连接的目标文件或者目录同步?
同步源文件需要加-L选项
某个账号登陆linux后,系统会在哪些日志文件中记录相关信息?
用户身份验证过程记录在/var/log/secure中,登录成功的信息记录在/var/log/wtmp。
网卡或者硬盘有问题时,我们可以通过使用哪个命令查看相关信息?
使用命令dmesg
分别使用xargs和exec实现这样的需求,把当前目录下所有后缀名为.txt的文件的权限修改为777
使用xargs :
find ./ -type f -name "*.txt" |xargs chmod 777
使用exec :
find ./ -type f -name "*.txt" -exec chmod 777 {} \;
rsync 同步数据时,如何过滤出所有.txt的文件不同步?
加上–exclude选项:–exclude=“*.txt”
自定义解析域名的时候,我们可以编辑哪个文件?是否可以一个ip对应多个域名?是否一个域名对应多个ip?
编辑 /etc/hosts 文件,可以一个ip对应多个域名,不可以一个域名对多个ip。
有一天你突然发现公司网站访问速度变的很慢很慢,你该怎么办呢?
可以从系统负载和网卡流量方面入手分析。分析系统负载,使用w命令或者uptime命令查看系统负载,如果负载很高,则使用top命令查看CPU,MEM等占用情况,要么是CPU繁忙,要么是内存不够,如果这二者都正常,再去使用sar命令分析网卡流量,分析是不是遭到了攻击。一旦分析出问题的原因,采取对应的措施解决,如决定要不要杀死一些进程,或者禁止一些访问等。
如果一个linux新手想要知道当前系统支持的所有命令的列表,他需要怎么做?
使用命令compgen -c,可以打印出所有支持的命令列表。
ps aux 中的 VSZ 代表什么意思,RSS 代表什么意思
VSZ:虚拟内存集,进程占用的虚拟内存空间
RSS:物理内存集,进程战用实际物理内存空间
FTP 协议有两种工作方式,PORT 方式和 PASV 方式,中文意思为主动式和被动式。
PORT(主动)方式的连接过程是:
客户端向服务器的 FTP 端口(默认是 21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用 PORT 命令告诉服务器:“我打开了 XX 端口,你过来连接我”。于是服务器从 20 端口向客户端的 XX 端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的 XX 端口 发送连接请求,建立一条数据链路来传送数据。
一个EXT3的文件分区,当使用touch test.file命令创建一个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况,说说你的理由。
两种情况,一种是磁盘配额问题,另外一种就是EXT3文件系统的设计不适合很多小文件跟大文件的一种文件格式,出现很多小文件时,容易导致inode耗尽了。
简述DDOS攻击的原理
黑客劫持大量傀儡主机,对目标服务器进行合理的资源请求,导致服务器资源耗尽而不能进行正常的服务。由于傀儡主机数量众多,而每个主机都向目标服务器发送大量的请求,导致服务器资源(如 CPU、内存、磁盘等)被迅速耗尽。服务器无法处理这些过量的请求,最终崩溃或无法正常运行,导致服务中断。
Tomcat和Resin有什么区别,工作中你怎么选择?
区别:
Tomcat用户数多,可参考文档多,Resin用户数少,可考虑文档少
Tomcat是标准的java容器,不过性能方面比resin的要差一些
但稳定性和java程序的兼容性,应该是比resin的要好
什么叫网站灰度发布?
灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式。
AB test就是一种灰度发布方式,让一部用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。
Linux系统中病毒怎么解决?
(1)最简单有效的方法就是重装系统。
(2)要查的话就是找到病毒文件然后删除。中毒之后一般机器cpu、内存使用率会比较高。可以先用top 命令找到cpu使用率最高的进程,一般病毒文件命名都比较乱,可以用 ps aux命令找到病毒文件位置,然后执行rm -f命令删除病毒文件,最后检查计划任务、开机启动项和病毒文件目录有无其他可以文件等。
(3)由于即使删除病毒文件不排除有潜伏病毒,所以最好是把机器备份数据之后重装一下。