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--------
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