我摊牌了,大厂面试Linux就这5个问题(二)
4.那如果CPU使用率达到100%呢?怎么排查?
1.通过top找到占用率高的进程。
2.通过top -Hp pid找到占用CPU高的线程ID。这里找到958的线程ID
3.再把线程ID转化为16进制,printf "0x%x\n" 958,得到线程ID0x3be
4.通过命令jstack 163 | grep '0x3be' -C5 --color 或者 jstack 163|vim +/0x3be - 找到有问题的代码
5.说说常见的Linux命令吧?
常用的文件、目录命令
ls:用户查看目录下的文件,ls -a可以用来查看隐藏文件,ls -l可以用于查看文件的详细信息,包括权限、大小、所有者等信息。
touch:用于创建文件。如果文件不存在,则创建一个新的文件,如果文件已存在,则会修改文件的时间戳。
cat:cat是英文concatenate的缩写,用于查看文件内容。使用cat查看文件的话,不管文件的内容有多少,都会一次性显示,所以他不适合查看太大的文件。
more:more和cat有点区别,more用于分屏显示文件内容。可以用空格键向下翻页,b键向上翻页
less:和more类似,less用于分行显示
tail:可能是平时用的最多的命令了,查看日志文件基本靠他了。一般用户tail -fn 100 xx.log查看最后的100行内容
常用的权限命令
chmod:修改权限命令。一般用+号添加权限,-号删除权限,x代表执行权限,r代表读取权限,w代表写入权限,常见写法比如chmod +x 文件名 添加执行权限。
还有另外一种写法,使用数字来授权,因为r=4,w=2,x=1,平时执行命令chmod 777 文件名这就是最高权限了。
第一个数字7=4+2+1代表着所有者的权限,第二个数字7代表所属组的权限,第三个数字代表其他人的权限。
常见的权限数字还有644,所有者有读写权限,其他人只有只读权限,755代表其他人有只读和执行权限。
chown:用于修改文件和目录的所有者和所属组。一般用法chown user 文件用于修改文件所有者,chown user:user 文件修改文件所有者和组,冒号前面是所有者,后面是组。
常用的压缩命令
zip:压缩zip文件命令,比如zip test.zip 文件可以把文件压缩成zip文件,如果压缩目录的话则需添加-r选项。
unzip:与zip对应,解压zip文件命令。unzip xxx.zip直接解压,还可以通过-d选项指定解压目录。
gzip:用于压缩.gz后缀文件,gzip命令不能打包目录。需要注意的是直接使用gzip 文件名源文件会消失,如果要保留源文件,可以使用gzip -c 文件名 > xx.gz,解压缩直接使用gzip -d xx.gz
tar:tar常用几个选项,-x解打包,-c打包,-f指定压缩包文件名,-v显示打包文件过程,一般常用tar -cvf xx.tar 文件来打包,解压则使用tar -xvf xx.tar。
Linux的打包和压缩是分开的操作,如果要打包并且压缩的话,按照前面的做法必须先用tar打包,然后再用gzip压缩。当然,还有更好的做法就是-z命令,打包并且压缩。
使用命令tar -zcvf xx.tar.gz 文件来打包压缩,使用命令tar -zxvf xx.tar.gz来解压缩
文章转自公众号:艾小仙