1.学习心得
linux主要应用于服务器操作系统,windows则应用于桌面操作系统
linux系统的主要优点是相对安全,稳定,免费
Linux抛弃了图形操作系统,把有限的资源更多的用在了应用软件上
linux是一个命令行组成的操作系统,可以说命令是学习linux系统的基础,学习linux很大程度就是学习命令
2.Linux的发展史
l 1965 年左后由贝尔实验室加入了 麻省理工学院 以及 通用电气 合作的计划 —— 该计划要建立一套 多使用者(multi-user)、 多任务(multi-processor) 、 多层次(multi-level) 的 MULTICS 操作系统,想让大型主机支持 300 台终端
l 1969 年前后这个项目进度缓慢,资金短缺,贝尔实验室退出了研究
l 1969 年从这个项目中退出的 Ken Thompson 当时在实验室无聊时,为了让一台空闲的电脑上能够运行 "星际旅行(Space Travel)" 游戏,在 8 月份左右趁着其妻子探亲的时间, 用了 1 个月的时间 ,使用汇编写出了 Unix 操作系统的原型
l 1970 年,美国贝尔实验室的 Ken Thompson ,以 BCPL 语言为基础,设计出很简单且很接近硬件的 B 语言 (取BCPL的首字母),并且他用 B 语言 写了第一个 UNIX 操作系统
l 1971 年,同样酷爱 "星际旅行(Space Travel)" 的 Dennis M.Ritchie 为了能早点儿玩上游戏,加入了 Thompson 的开发项目,合作开发 UNIX,他的主要工作是改造 B 语言 ,因为 B 语言 的跨平台性较差
l 1972 年, Dennis M.Ritchie 在 B 语言 的基础上最终设计出了一种新的语言,他取了 BCPL 的第二个字母作为这种语言的名字,这就是 C 语言
l 1973 年初, C 语言 的主体完成, Thompson 和 Ritchie 迫不及待地开始用它完全重写了现在大名鼎鼎的 Unix 操作系统
3.centos6与centos7的区别
3.1 文件系统
Centos6.x:EXT4
Ext4的单个文件系统容量可以达到1EB,单个文件的大小可以达到16TB
Centos7.x:XFS
XFS默认支持的系统容量大小8EB减去1个字节的容量,最大支持的文件大小是9EB,
最大支持的文件系统尺寸是18EB
3.2 防火墙、内核版本、默认的数据库
Centos6.x
防火墙:iptables
内核版本:2.6
默认的数据库:Mysql
Centos7.x
防火墙:firewalld
内核版本:3.10
默认安装的数据库:MariaDB
3.3 时间同步命令、修改时区、修改语言
Centos6.x:
时间同步:ntpq -q
修改时区:vim /etc/sysconfig/clock
修改语言:vim /etc/sysconfig/i18n
Centos7.x:
时间同步:chronyc sources
修改时区:timedatectl set-timezone Asia/Shanghai
修改语言:localectl set-locale LANG=zh_CN.UTF-8
3.4 修改主机名
Centos6.x
修改的配置文件/etc/sysconfig/network 中的HOSTNAME (修改完成后永久成效)
Centos7.x (永久生效)
方式一:配置文件/etc/hostname 直接编辑vim /etc/hostname
方式二:采用命令的方式:hostnamectl sethostname 主机名
3.5 网络服务的管理方式
操作行为
Centos6.x
Centos7.x
启动服务
service 服务名 start
systemctl start 服务名
停止服务
service 服务名 stop
systemctl stop 服务名
查看服务状态
service 服务名 status
systemctl status 服务名
重启服务
service 服务名 restart
systemctl restart 服务名
设置服务的开机自启
chkconfig 服务名称 on
systemctl enable 服务名称
设置服务的开机非自启
chkconfig 服务名称 off
systemctl disable 服务名称
查看所有服务的自启状态
chkconfig --list
systemctl list-unit-files
3.6 网络设置的变化
名称
Centos6.x
Centos7.x
网卡名称
ifcfg-eth0
ifcfg-ens33
网络配置的命令
ifconfig
ip
网络服务
network服务
NetworkManager服务
3.7 yum的区别
Centos6.x:默认情况下会从国外的镜像源网站获取安装包,比较慢,如果想安装下载快的话,需要去修改CentOS6-Base.repo ,使用CentOS6-Base-163.repo替换。
Centos7.x版本中:就近原则,从离得比较近的镜像源服务器获取安装包并下载安装
4.常用命令
man命令
man命令是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。
man(选项)(参数):
-a:在所有的man帮助手册中搜索;
-f:等价于whatis指令,显示给定关键字的简短描述信息;
-P:指定内容时使用分页程序;
-M:指定man手册搜索的路径。
grep 命令
在文件中查找字符串(不区分大小写):grep -i "the" demo_file 。
输出成功匹配的行,以及该行之后的三行:grep -A 3 -i "example" demo_text 。
在一个文件夹中递归查询包含指定字符串的文件:grep -r "ramesh" 。
find命令
如何在 /var 目录下找出 90 天之内未被访问过的文件?
输入命令:find /var ! -atime -90 。
如何在 /home 目录下找出 120 天之前被修改过的文件?
输入命令:find /home -mtime +120 。
在整个目录树下查找文件 “core” ,如发现则无需提示直接删除它们?
输入命令:find / -name core -exec rm {} \; 。
rm命令
删除文件前先确认:rm -i filename.txt 。
在文件名中使用 shell 的元字符会非常有用。删除文件前先打印文件名并进行确认:rm -i file 。
递归删除文件夹下所有文件,并删除该文件夹:rm -r example 。
mkdir 命令
在 home 目录下创建一个名为 temp 的目录:mkdir ~/temp 。
使用 -p 选项可以创建一个路径上所有不存在的目录:mkdir -p dir1/dir2/dir3/dir4/ 。
less 命令
这个命名可以在不加载整个文件的前提下显示文件内容,在查看大型日志文件的时候这个命令会非常有用:
less huge-log-file.log 。
当你用 less 命令打开某个文件时,下面两个按键会给你带来很多帮助,他们用于向前和向后滚屏:
CTRL+F - forward one window
CTRL+B -backward one window
chmod 命令
chmod 用于改变文件和目录的权限。
给指定文件的属主和属组所有权限(包括读、写、执行):chmod ug+rwx file.txt 。
删除指定文件的属组的所有权限:chmod g-rwx file.txt 。
修改目录的权限,以及递归修改目录下面所有文件和子目录的权限:chmod -R ug+rwx file.txt 。
tar 命令
创建一个新的 tar 文件: tar cvf archive_name.tar dirname/ 。
解压 tar 文件:tar xvf archive_name.tar 。
查看 tar 文件:tar tvf archive_name.tar 。
系统命令
1.ps命令
任务管理器:ps -ef 查看当前所有进程(包括执行ps命令的那个时刻进程信息)
格式:ps 【参数】
-e 此参数的效果和指定“A”参数相同,显示所有程序
-f 显示UID,PPIP,C与STIME栏位
例如:ps -ef | grep -i mysql 过滤出mysql这个进程
2.kill命令
kill功能:删除执行中的程序或工作
语法:kill【参数】【程序】
-l 若不加选项,则-l参数会列出全部的信息名称。
kill -9 :表示强制终止
格式:kill -9 pid
可先通过ps -ef 查找出所要删除的进程pid,再通过kill -9 pid 终止进程
3.ifconfig命令
功能:显示网络设备
格式:ping 主机名或ip地址 (按ctrl+c停止ping)
5.一些面试题
说明:在ABCD中加黑的部分为正确答案。
1. cron 后台常驻程序 (daemon) 用于:
A. 负责文件在网络中的共享
B. 管理打印子系统
C. 跟踪管理系统信息和错误
D. 管理系统日常任务的调度
2. 在大多数Linux发行版本中,以下哪个属于块设备 (block devices) ?
A. 串行口
B. 硬盘
C. 虚拟终端
D. 打印机
3. 下面哪个Linux命令可以一次显示一页内容?
A. pause
B. cat
C. more
D. grep
4. 怎样了解您在当前目录下还有多大空间?
A. Use df
B. Use du /
C. Use du .
D. Use df .
5. 怎样更改一个文件的权限设置?
A. attrib
B. chmod
C. change
D. file
6. 假如您需要找出 /etc/my.conf 文件属于哪个包 (package) ,您可以执行:
A. rpm -q /etc/my.conf
B. rpm -requires /etc/my.conf
C. rpm -qf /etc/my.conf
D. rpm -q | grep /etc/my.conf
7. 假如当前系统是在 level 3 运行,怎样不重启系统就可转换到 level 5 运行?
A. Set level = 5
B. telinit 5
C. run 5
D. ALT-F7-5
8. 那个命令用于改变 IDE 硬盘的设置?
A. hdparam
B. ideconfig
C. hdparm
D. hddparm
9. 下面哪个命令可以列出定义在以后特定时间运行一次的所有任务?
A. atq
B. cron
C. batch
D. at
10.下面命令的作用是:set PS1="【\u\w\t】\$" ; export PS1
A. 改变错误信息提示
B. 改变命令提示符
C. 改变一些终端参数
D. 改变辅助命令提示符
11.作为一个管理员,你希望在每一个新用户的目录下放一个文件 .bashrc ,那么你应该在哪个目录下放这个文件,以便于新用户创建主目录时自动将这个文件复制到自己的目录下。
A. /etc/skel/
B. /etc/default/
C. /etc/defaults/
D. /etc/profile.d/
12.在bash中,export命令的作用是:
A. 在子shell中运行命令
B. 使在子shell中可以使用命令历史记录
C. 为其它应用程序设置环境变量
D. 提供NFS分区给网络中的其它系统使用
13.在使用了shadow口令的系统中,/etc/passwd和/etc/shadow两个文件的权限正确的是:
A. -rw-r----- , -r-----//代码效果参考:http://www.jhylw.com.cn/042736459.html
---B. -rw-r--r-- , -r--r--r--
C. -rw-r--r-- , -r--------
D. -rw-r--rw- , -r-----r--
14.下面哪个参数可以删除一个用户并同时删除用户的主目录?
A. rmuser -r
B. deluser -r
C. userdel -r
D. usermgr -r
15.有一个备份程序mybackup,需要在周一至周五下午1点和晚上8点各运行一次,下面哪条crontab的项可以完成这项工作?
A. 0 13,20 1,5 mybackup
B. 0 13,20 1,2,3,4,5 mybackup
C. 13,20 1,2,3,4,5 mybackup
D. 0 13,20 1,5 * mybackup
16.如何从当前系统中卸载一个已装载的文件系统
A. umount
B. dismount
C. mount -u
D. 从 /etc/fstab 中删除这个文件系统项
17.如果你的umask设置为022,缺省的你创建的文件的权限为:
A. ----w--w-
B. -w--w----
C. r-xr-x---
D. rw-r--r--
18.在一条命令中如何查找一个二进制命令 Xconfigurator 的路径?
A. apropos Xconfigurator
B. find Xconfigurator
C. where Xconfigurator
D. which Xconfigurator
19.哪一条命令用来装载所有在 /etc/fstab 中定义的文件系统?
A. amount
B. mount -a
C. fmount
D. mount -f
20.运行一个脚本,用户不需要什么样的权限?
A. read
B. write
C. execute
D. browse on the directory