一、主流操作系统
windows
windows98、windows2000、windows2003、windows xp、windows 7、windows 8、windows 10
优点: 可视化界面、个人PC、操作简单
缺点: 稳定性不好、安全性不够Linux系统
Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。
优点: 稳定性好、安全性高
缺点: 操作复杂、没友好的可视化界面Mac系统
苹果公司为Mac系列产品开发的专属操作系统,例如苹果笔记本(MacBook、MacBook Pro、MacBook Air)、苹果台式电脑(iMac、iMac Pro、Mac Pro)。
特点: 专业化、待机时间长、手势操作强大...iOS系统
苹果手机(iPhone)、苹果平板(iPad)、苹果手表(iWatch)
特点: 闭源Android系统
Google开发,所看到的智能产品除了苹果的几乎都是Android系统
特点: 开源
二、Linux发展史
1990年,Linus Torvalds还是芬兰赫尔辛基大学的一名学生,最初是用汇编语言写了一个在80386保护模式下处理多任务切换的程序,后来从Minix(Andy Tanenbaum教授所写的很小的Unix操作系统,主要用于操作系统教学)得到灵感,进一步产生了自认为狂妄的想法——写一个比Minix更好的操作系统,于是开始写了一些硬件的设备驱动程序,一个小的文件系统。这样0.0.1版本的Linux就出来了,但是它只具有操作系统内核的雏形,甚至不能运行,你必须在有Minix的机器上编译以后才能玩。这时候Linus已经完全着迷了,决定踢开Minix。于是在1991年10 月5号发布Linux 0.0.2版本,在这个版本中已经可以运行bash 和gcc。
Linus就决定自由扩散Linux,包括原代码,随即Linux引起黑客们的注意,通过计算机网络加入了Linux的内核开发。Linux倾向于成为一个黑客的系统——直到今天,在Linux社区里内核的开发被认为是真正的编程。由于一批高水平黑客的加入,使Linux 发展迅猛,几乎一两个礼拜就有新版或修正版的出现,到1993年底94年初,Linux 1.0终于诞生了!
严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核而做出的操作系统。
现如今的Linux不但可以装在几乎所有的主流服务器上,当然也包括桌面的X86系统中。其还常常被用于嵌入式系统,机顶盒、手机、交换机、游戏机、PDA、网络交换机、路由器等等,都是因为Linux内核。
Linux是免费的不用花一分钱,能够节约大笔的成本;
Linux是开源的,你可以根据自已的需要修改源代码;
Linux是开放的,有广泛的社区,关于Linux的讨论要远远高于windows操作系统;
Linux的学习可以更好的掌握计算机技术;
Linux是未来发展的趋势,服务器,手机,掌上电脑,平板机很多都采用Linux操作系统;
Linux有非常多的发行版本,你可以根据需要做出不同的选择;
Linux让你多了一个选择,而且Linux下的病毒相比Window可以忽略不计;
Linux因为开源、免费、性能强大,例如新浪、百度、京东、阿里、腾讯的后台服务器都是Linux系统,另外世界上最快的超级计算机90%以上都是Linux系统或类似操作系统,足以说明Linux速度之快。
三、学习目标
- 服务器是运行在Linux平台,要搭建服务器的测试环境,必须懂Linux操作命令
- 监控服务器的系统资源
- 服务器运行在Linux平台中,运行日志信息,需要进行查看,并定位问题,分析问题
四、系统安装
- 虚拟机
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。 - CentOS
CentOS(Community Enterprise Operating System社区企业操作系统)是Linux发行版之一,CentOS 是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本。由于出自同样的源代码,因此有些要求高度稳定性服务器以CentOS替代商业版的Red Hat Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。
五、Linux系统访问方式
- 在Linux服务器中直接通过终端来访问(服务器在远程,所以工作都用不了)
- 通过远程连接工具来访问
Xshell
putty
-
Xshell的使用说明
文件--->新建--->连接--->确定----->输入用户名,密码
服务器都是远程,以后需要操作服务器时,只需要告诉IP地址,用户名和密码,就可以远程登录,远程操作系统。
六、Linux目录结构
- windows的目录结构
C盘
|
文件
| 文件
D盘
|
文件
| 文件
- Linux的目录结构
/ ---> 根目录
|
| -- bin --->系统放置执行档的目录(cat,chmod, chown, date, mv, mkdir, cp, bash)
| -- boot ---> 放置开机会使用到的档案目录
| -- etc ---> 各种配置文件目录
| -- home ---> 家目录(该目录不需要使用超级权限都可以操作)
| -- zhangsan ---> 用户目录(用户张三)
|
| -- Desktop ---> 桌面目录
| -- Downloads ---> 下载目录
| -- Music
| -- Public
| -- Templates
| -- Documents
| -- Pictures
| -- Vieos
| -- lib ---> 系统的函式库目录
| -- lost+found ---> 档案系统发生错误存放目录
| -- media ---> 挂载的就是可移除的装置目录(软盘、光盘..)
| -- mnt ---> 用来暂时挂载目录
| -- opt ---> 自行安装额外的软体目录
| -- proc ---> 目录本身是一个虚拟文件系统,存放系统日志文件
| -- root ---> 系统管理员(root)的家目录
| -- sbin ---> 设定系统环境的指令目录
| -- selinux ---> 提供了一个灵活的可配置的MAC机制目录
| -- srv ---> service的缩写,网络服务目录
| -- sys ---> 跟/proc非常类似,是虚拟的档案系统,记录与核心相关的资讯
| -- tmp ---> 使用者或者是正在执行的程序暂时放置档案的地方目录
| -- usr ---> 操作系统软件资源所放置的目录
| -- var ---> 系统一般运行时要改变的数据.每个系统是特定的,即不通过网络与其他计算机共享
七、命令的使用
-
ifconfig
查看ip地址
$ ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:C6:B7:61
inet addr:192.168.1.133 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fec6:b761/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:85087 errors:0 dropped:0 overruns:0 frame:0
TX packets:22977 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:57466641 (54.8 MiB) TX bytes:1760074 (1.6 MiB)
Interrupt:19 Base address:0x2024
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:145 errors:0 dropped:0 overruns:0 frame:0
TX packets:145 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:12476 (12.1 KiB) TX bytes:12476 (12.1 KiB)
-
ping
检查网络状态
$ ping www.baidu.com
PING www.baidu.com (163.177.151.109): 56 data bytes
64 bytes from 163.177.151.109: icmp_seq=0 ttl=56 time=11.193 ms
64 bytes from 163.177.151.109: icmp_seq=1 ttl=56 time=13.835 ms
64 bytes from 163.177.151.109: icmp_seq=2 ttl=56 time=12.289 ms
$ ping www.baidu.com
PING www.baidu.com (192.168.116.128): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
-
ls
查看文件
$ ls
$ ls -a // 显示所有文件,包括隐藏文件
$ ls -l // 列出文件的详细信息
扩展知识
drwxr-xr-x user1 group1 filename
第1位文件类型: d是文件目录,-是普通文件,l是链接文件(快捷方式);
第2~4位所属用户权限: r可读,w可写,x可执行;
第5~7位所属用户其所在用户组权限;
第8~10位其他用户权限;
上述即表示filename是个目录,user1拥有读写执行的权限,和user1所在同一个group1组里的用户拥有只读和执行权限,剩下其他用户拥有只读和执行权限。
-
cd
切换目录
$ cd 目录名
$ cd ../ // 返回上级目录
$ cd ../../ // 返回上上级目录
-
pwd
查看当前的路径
$ pwd
例如: /Users/zhagnshan/study/01-day
-
mkdir
创建目录
$ mkdir 目录名称
案例1: 请在'用户目录'下创建一个目录名为hello的
案例2: 请在'用户目录'下创建一个hehe和main目录
-
touch
创建文件
$ touch 路径/文件名称
案例1: 请在上述创建的hello目录下创建一个main.c文件
案例2: 当前所在位置是/etc目录,请在上述创建的hello目录下创建一个hello.c文件
-
rm
删除文件或目录
$ rm 文件名
$ rm -r 目录名 // 递归删除
$ rm -f 目录名 // 强制删除
-
cp
复制文件或者目录
$ cp 路径1/文件名 路径2
$ cp -r 路径1 路径2
案例: 在hello目录下的file目录下的创建一个main.c文件,并将其拷贝到Music目录下
-
mv
移动
$mv 路径1/文件名 路径2
案例: 在hehe目录下的test目录下的创建一个main.c文件,然后将其移动到Videos目录下
-
mv
重命名
$mv 文件名 新文件名
案例: 在hello目录下的file目录下的创建一个main.c文件,改名为file.c
- 其他
ctrl+c: 结束终端命令执行
ctrl+l: 清除屏幕
八、练习
1. 请在"用户目录下"创建一个cxy目录
2. 在cxy目录下创建file1,file2两个目录
3. 请在file1目录下创建一个main.c文件
4. 请删除file2目录
5. 删除file1及file1下面的所有文件
6. 删除cxy目录