1、解释下什么是GPL,GNU,自由软件?
创新互联建站长期为数千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为兖州企业提供专业的网站建设、成都网站建设,兖州网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
GPL:(通用公共许可证):一种授权,任何人有权取得、修改、重新发布自由软件的权力。
GNU:(革奴计划):目标是创建一套完全自由、开放的的操作系统。
自由软件:是一种可以不受限制地自由使用、复制、研究、修改和分发的软件。主要许可证有GPL和BSD许可证两种。
2、linux系统里,buffer和cache如何区分?
buffer和cache都是内存中的一块区域,
当CPU需要写数据到磁盘时,由于磁盘速度比较慢,所以CPU先把数据存进buffer,
然后CPU去执行其他任务,buffer中的数据会定期写入磁盘;
当CPU需要从磁盘读入数据时,由于磁盘速度比较慢,
可以把即将用到的数据提前存入cache,CPU直接从Cache中拿数据要快的多。
3、描述Linux运行级别0-6的各自含义
0:关机模式
1:单用户模式==破解root密码
2:无网络支持的多用户模式
3:有网络支持的多用户模式(文本模式,工作中最常用的模式)
4:保留,未使用
5:有网络支持的X-windows支持多用户模式(桌面)
6: 重新引导系统,即重启
4、描述Linux系统从开机到登陆界面的启动过程
⑴开机BIOS自检,加载硬盘。
⑵读取MBR,MBR引导。
⑶grub引导菜单(Boot Loader)。
⑷加载内核kernel。
⑸启动init进程,依据inittab文件设定运行级别
⑹init进程,执行rc.sysinit文件。
⑺启动内核模块,执行不同级别的脚本程序。
⑻执行/etc/rc.d/rc.local
⑼启动mingetty,进入系统登陆界面。
5、描述Linux下软链接和硬链接的区别
在Linux系统中,链接分为两种,一种是硬链接(Hard link),另一种称为符号链接或软链接(Symbolic Link)。
①默认不带参数的情况下,ln创建的是硬链接,带-s参数的ln命令创建的是软链接。
②硬链接文件与源文件的inode节点号相同,而软链接文件的inode节点号,与源文件不同,
③ln命令不能对目录创建硬链接,但可以创建软链接。对目录的软链接会经常使用到。
④删除软链接文件,对源文件和硬链接文件无任何影响。
⑤删除文件的硬链接文件,对源文件及软链接文件无任何影响。
⑥删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状)。
⑦同时删除源文件及其硬链接文件,整个文件才会被真正的删除。
⑧很多硬件设备的快照功能,使用的就是类似硬链接的原理。
⑨软链接可以跨文件系统,硬链接不可以跨文件系统。
6、shell脚本中“$?”标记的用途是什么?
在写一个shell脚本时,如果你想要检查前一命令是否执行成功,在if条件中使用“ ?
如果结束状态是0,说明前一个命令执行成功。
root@localhost:~# ls /usr/bin/share
ls: cannot access /usr/bin/share: No such file or directory
root@localhost:~# echo $?
2
如果结束状态不是0,说明命令执行失败。
7、如何让history命令显示具体时间?
$ HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S"
$ export HISTTIMEFORMAT
重新开机后会还原,可以写/etc/profile
8、用shell统计ip访问情况,要求分析nginx访问日志,找出访问页面数量在前10位的IP数。以下是nginx的访问日志节选
202.101.129.218- - [26/Mar/2006:23:59:55 +0800] "GET /online/stat_inst.php?pid=d065HTTP/1.1" 302 20-"-" "-" "Mozilla/4.0(compatible; MSIE 6.0; Windows NT 5.1)"
1}' access.log |sort|uniq -c |head -n 10
31 202.101.129.218
21 123.93.29.11
11 13.92.19.31
9、将本地的80端口的请求转发到8080端口,本机地址10.0.0.254,写出命令
$ iptables -t nat -A PREROUTING -d 10.0.0.254 -p tcp --dprot 80 -j DNAT --to-destination 10.0.0.254:8080
10、Load过高的可能性有哪些?
排查思路:
其他经验:
cpu load的飙升,一方面可能和full gc的次数增大有关,一方面可能和死循环有关
11、描述/etc/fstab 文件中每个字段的含义?
(1)第一列:将被加载的文件系统名;
(2)第二列:该文件系统的安装点;
(3)第三列:文件系统的类型;
(4)第四列:设置参数;
(5)第五列:供备份程序确定上次备份距现在的天数;
(6)第六列:在系统引导时检测文件系统的顺序。
12、 如何在打包时排除指定目录?
$ tar --exclude=/home/dmtsai --exclude= .tar -zcvf myfile.tar.gz /home/ /etc
mysql update user set password=password('123123') where user='root';
如下:
1.查找文件
find / -name filename.txt
根据名称查找/目录下的filename.txt文件
2.查看一个程序是否运行
ps _ef|grep tomcat
查看所有有关tomcat的进程。
3.终止线程
kill -9 19979
终止线程号位19979的线程
4.查看文件,包含隐藏文件
ls -al
5.当前工作目录
pwd
6.复制文件包括其子文件到自定目录
cp -r sourceFolder targetFolder
7.创建目录
mkdir newfolder
8.删除目录(此目录是空目录)
rmdir deleteEmptyFolder
9.删除文件包括其子文件
rm -rf deleteFile
10.移动文件
mv /temp/movefile /targetFolder
扩展重命名 mv oldNameFile newNameFile
11.切换用户
su -username
12.修改文件权限
chmod 777 file.java
//file.java的权限-rwxrwxrwx,r表示读、w表示写、x表示可执行
13.压缩文件
tar -czf test.tar.gz /test1 /test2
14.列出压缩文件列表
tar -tzf test.tar.gz
15.解压文件
tar -xvzf test.tar.gz
16.查看文件头10行
head -n 10 example.txt
17.查看文件尾10行
tail -n 10 example.txt
18.查看日志文件
tail -f exmaple.log
//这个命令会自动显示新增内容,屏幕只显示10行内容的(可设置)
19.启动Vi编辑器
vi
20.查看系统当前时间
date
命令会输出 周几 几月 几日 时间 和 时间显示格式和年份
Sat Jan 20 04:39:49 CST 2018
date +"%Y-%m-%d"
linux常用命令有:
1、cp命令,作用复制,参数如下:
-a:将文件的特性一起复制。
-p:连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份。
-i:若目标文件已经存在时,在覆盖时会先询问操作的进行。
-r:递归持续复制,用于目录的复制行为。
-u:目标文件与源文件有差异时才会复制。
2、rm命令作用为删除,参数:
-f:就是force的意思,忽略不存在的文件,不会出现警告消息。
-i:互动模式,在删除前会询问用户是否操作。
-r:递归删除,最常用于目录删除,它是一个非常危险的参数。
3、mv命令作用为移动文件:
-f:force强制的意思,如果目标文件已经存在,不会询问而直接覆盖。
-i:若目标文件已经存在,就会询问是否覆盖。
-u:若目标文件已经存在,且比目标文件新,才会更新。
4、pwd命令,作用为查看”当前工作目录“的完整路径。
pwd-P#显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径。
5、rmdir命令删除目录:
rmdir [选项]... 目录...
-p:递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息。
-v:verbose显示指令执行过程。