第1章
1.1 企业面试题1:你用过的服务器型号有哪些?
1U |
2U |
|
2010年以前 |
1850、1950 |
2850、2950 |
2010---2013 |
R410、R610 |
R710 |
2014---2016 |
R420/430、R620/630 |
R720/730 |
1.2 程序进程守护进程的区别
程序:静态的数据,放在磁盘中的软件
进程:运行着的软件
守护进程:持续运行的软件
1.3 蛋、人、人、人
Linux诞生 1969
1984谭宁邦,Minix开发者用于教学使用
1984斯托曼,希望创造出一个和Unix一样优秀的,但开源的软件。成立了*软件基金会,建立了gnu项目
1991托瓦兹,写出了Linux内核
GNU:项目,优秀的gnu软件有bash,gawk,emacs,gcc
GPL:通用公共许可协议,开放源代码,如果你对开源内容作了修改,必须发布出来
1.4 企业面试题2:程序、进程和守护进程的区别
1. 程序:放在磁盘中不动的软件(静态文件、放在磁盘中的数据)
2. 进程:正在运行的软件 (是在内存中运行的程序)
3. 守护进程:一直在运行的软件 (持续运行的程序)
1.5 企业面试题3:提升用户体验的网站解决方案
一、大并发:当用户访问量特别大的时候,先把一部分数据存在内存中,过一段时间或是内存中的数据到达一定数量再存到磁盘中。
二、中小型企业读取写入:用户数量不多时直接把数据存到磁盘中,等到需要的时候先把数据存到内存中然后用户通过软件从内存中读取。
1.6 企业面试题4:buffer与cache区别?
buffer:写入数据到内存,这个数据的内存空间称为缓冲区
cache:从内存中读取数据,这个数据的内存空间称为缓存区
1.7 企业面试题5:描述Raid 0 1的特点?
RAID0速度是最快的,因为数据是分开存放在每个组成阵列的硬盘,所以一旦其中一块硬盘有问题就会导致所有数据损坏。优点:速度快、成本低缺点数据容易丢失,一旦损坏无法恢复。 |
1.8 常见的几种分区方式:
1.8.1 方式一:用户电脑中没有重要的信息
/boot |
200m |
Swap |
768 |
/ |
剩余全部 |
1.8.2 方式二:用户电脑有重要信息
/boot |
100――200M |
Swap |
768M |
/data |
20――200M |
/ |
剩余多少给多少 |
1.8.3 方式三:企业中常见的
/boot |
100――200M |
Swap |
768M |
/data |
20――200M |
剩余不分(是谁用谁分) |
如果你的内存小于8个G,swap=内存一点五倍
如果你的内存大于8个G,swap=8个G
1.9 往文件中添加内容?
1.9.1 方法一:vi、vim
1.9.2 方法二:echo 'I am studying'>>/data/oldboy.txt
1.9.3 方法三:cat>>/data/oldboy.txt<<eof
a
b
c
d
> eof
1.10 删除一个目录下的所有文件,但保留一个指定文件。
find /data/ -type f ! -name"oldboy.txt"|xargs rm -r
1.11
(1)创建 一个目录/data
Mkdir /data
1.11.1 在/data 下面建立一个文件oldboy.txt
Touch oldboy.txt
1.11.2 为oldboy.txt增加内容为“I am studying liinux”
Vim oldboy===echo ‘I am studying liinux’>oldboy.txt
1.11.3 把oldboy.txt文件拷贝到/tmp下
Cp oldboy.txt /tmp
1.11.4 把data目录移到root下
Mv /data /root
1.11.5 进入/root下的data,删除oldboy.Txt
Mv /root/data/oldboy.txt
1.11.6 删除data目录
Rm �Cr /root/data
1.12 已知文件test.txt内容为test liyao oldboy,请给出输出test.txt是,不包含oldboy的字符串命令?
方法一:head
head �Cn2 test.txt
方法二:grep
grep “oldboy” test.txt
grep -v “oldboy” test.txt
方法三:sed
Sed ‘/oldboy/d’ test.txt
Sed -n‘/oldboy/d’ test.txt
1.13 请用一条命令完成创建/oldboy/test创建两个目录
Mkdir �Cp /oldboy/test
1.14 已知/tmp下已经存在test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp下覆盖/tmp/test.txt,而让系统不提示。
Which cp
/bin/cp /mnt/test.txt /tmp/test.txt
1.15 如何查看ett.txt文件(共一百行)内第20到30行的内容?
seq 100 >>/tmp/oldboy.txt
方法一:head
思路:先用head取出前三十行(head �Cn30 ett.txt)然后再无法操作了,利用管道(前面的命令无法完成时交给后面的命令)tail -11 ett.txt
head -30 /data/ett.txt |tail -11
head -30 /data/liti |tail-11
方法二:Sed
Sed �Cn ’20,30p’ ett.txt======è(一到一百中二十和三十出现两次)sed 命令的默认输出=====》-n临时取消默认参数与p配合
P====》(功能)显示出来
sed '20,30p' /data/liti
sed -n '20,30p' /data/liti
方法三:Awk
Awk ‘NR==20,NR==30’ ett.txt== Awk‘NR>=20&&NR<=30’ ett.txt
NR(大写):行号 Number of record
awk 'NR==20,NR==30'/data/liti
方法四:Grep(巧合)这一行的内容20 与这一行的行号一样
Grep �CA10 ‘20’ ett.txt
显示包含20数字的这一行,以及接下来的十行()
1.16 把/oldboy 目录及其子目录下的所有已扩展名.sh结尾的文件中,文件包括./hostlosts.txt(oldboy)的字符串全部替换为../idctest_iplist(oldgirl)后面讲
1.16.1 方法一:创建测试环境
Mkdir �Cp /oldboy/test
Cd /oldboy
Echo “oldboy”>test/del.sh
Echo “oldboy”>test/.sh
Echo “oldboy”>t.sh
Touch oldboy.txt
Touch alex.txt
ò 《============》
/oldboy/oldboy.txt
/oldboy/test/del.sh
/oldboy/test/.sh
/oldboy/alex.txt
/oldboy/t.sh
1.16.1.1 找到你要处理的东西
Find /oldboy/-type f
Find /oldboy/-type f �Cname “*.sh”
1.16.1.2 把一个文件中的oldboy替换为oldgirl
Sed ‘s#找谁#替换成啥#g’ /oldboy/ett.txt
Sed ‘s#oldboy#oldgirl#g’/oldboy/ett.txt (先看看结果对不对,否则错了就改不过来了)
Sed �Ci ‘s#oldboy#oldgirl#g’/oldboy/ett.txt
Cat /oldboy/test.sh
1.16.1.3 用find命令找到文件,然后用sed修改文件内容
Find /oldboy/ -type f �Cname “*.sh”
Find /oldboy/ -type f �Cname “*.sh”|xargs sed ‘s#oldboy#oldgirl#g’
Find /oldboy/ -type f �Cname “*.sh”|xargs sed �Ci ‘s#oldboy#oldgirl#g’
cat /oldboy/test.sh
1.16.2 方法二
$()====``(反引号)
功能:先运行里面的命令把结果,输出留下来
ò 前两步相同,不同点在这
让 sed命令处理find找到的结果
sed ‘s#oldboy#oldgirl#g’ $( Find /oldboy/ -type f �Cname “*.sh”)
sed -i ‘s#oldboy#oldgirl#g’ $( Find /oldboy/ -type f �Cname “*.sh”)
cat $( Find /oldboy/ -type f �Cname “*.sh”)
1.16.3 第三种方法:
-esec
find/oldboy/ -type f -name"*.sh" -exec ls -l {} \;
find/oldboy/ -type f -name"*.sh" -exec sed -i 's#oldboy#oldgirl#g' {} \;
1.17
修改配置文件,使关闭===>永久关闭 SELinux 写合同
cat /etc/selinux/config
#:注释符号
disable 关闭
permissive 警告
enforcing 开启
sed‘s#SELinux= enforcing#SELinux=disabled #g’ /etc/selinux/config
备份:
cp/etc/SELinux/config /etc/SELinux/config.ori
sed-i‘s#SELinux= enforcing#SELinux=disabled #g’ /etc/selinux/config
再查看 cat/grep
cat /etc/selinux/config
grep " disabled " /etc/selinux/config
1.17.1 临时的修改方式
setenforce
usage:setenforce 【Enforcing】permissive | 1 | 0 |
setenforce 0
getenforce
====》permissive
总结:SELinux关闭
第一个里程碑-操作前备份 cat、cp、sed �Ci.bak
第二个里程碑�C永久的修改
cat/vim先看一眼-找目标
sed ‘s#SELinux= enforcing#SELinux=disabled #g’/etc/selinux/config
执行成功了 再加上-i参数
再查看 cat/grep
第三个里程碑-临时生效
Setenforce
1.17.2 第二种方法,利用sed -i.bak 先备份再修改
sed ‘s#SELinux= enforcing#SELinux=disabled#g’ /etc/selinux/config
cat /etc/selinux/config
sed-i.bak‘s#SELinux= enforcing#SELinux=disabled #g’ /etc/selinux/config
(这一块懵了)
1.18 【Y】关闭iptables防火墙
1.18.1 临时关闭
/etc/init.d/iptablesstop (关闭命令)
再次关闭====》/etc/init.d/iptables stop (关闭命令)
/etc/init.d/iptablesstatus(查询时候关闭)
Iptables:firewall is not running
/etc/init.d/iptables【stop status等怎么来的】
chkconfig
1.18.2 永久的关闭
Chkconfig|grep ipt 查看防火墙是否关闭
Chkconfigiptables off 关闭防火墙
另一种关闭防火墙的方式:
serviceiptables stop (了解)
1.1创建 一个目录/data
Mkdir /data
1.2在/data 下面建立一个文件oldboy.txt
Touch oldboy.txt
1.3为oldboy.txt增加内容为“I am studying liinux”
Vim oldboy===echo ‘I am studying liinux’>oldboy.txt
1.4把oldboy.txt文件拷贝到/tmp下
Cp oldboy.txt /tmp
1.5把data目录移到root下
Mv /data /root
1.6进入/root下的data,删除oldboy.Txt
Mv /root/data/oldboy.txt
1.7删除data目录
Rm �Cr data
1.8已知文件test.txt内容为test liyao oldboy,请给出输出test.txt是,不包含oldboy的字符串命令?
方法一:head
Head �Cn2 test.txt
方法二:grep
Grep “oldboy” test.txt
Grep -v “oldboy” test.txt
方法三:sed
Sed ‘/oldboy/d’ test.txt
Sed -n‘/oldboy/d’ test.txt
1.9请用一条命令完成创建/oldboy/test创建两个目录
Mkdir �Cp /oldboy/test
1.10已知/tmp下已经存在test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp下覆盖/tmp/test.txt,而让系统不提示。
Which cp
/bin/cp /mnt/test.txt /tmp/test.txt
1.11只查看ett.txt文件(共一百行)内20到30 行
方法一:head和tail
Head �Cn30 ett.txt |tail -11
方法二 awk
Awk ‘NR==20,NR==30’ ett.txt
方法三 sed
sed ’20,30p’ ett.txt
sed -n ’20,30p’ ett.txt
本文出自 “13121275” 博客,请务必保留此出处http://13131275.blog.51cto.com/13121275/1958139