Linux介绍与目录结构
1 - Linux介绍
1.1 Linux是什么?
linux是一个开源、免费的操作系统,其稳定性、安全性、处理多并发能力已经得到业界的认可,目前大多数企业级应用甚至是集群项目都部署运行在linux操作系统之上,很多软件公司考虑到开发成本都首选linux,在中国软件公司得到广泛的使用。
Linux 也是一款操作系统,免费,开源, 安全,高效,稳定, 处理高并发非常强悍,现在很多的企业级的项目都部署到 Linux/unix 服务器运行
1.2 Linux主要的发行版本
Ubuntu(乌班图)、RedHat(红帽)、CentOS、Debain[蝶变]、Fedora、SuSE、
OpenSUSE、红旗Linux(国产)
1.3 Linux的应用领域
服务器应用领域:
linux 在服务器领域的应用是最强的。
linux 免费、稳定、高效等特点在这里得到了很好的体现,近些年来 linux 服务器市场得到了飞速的提升,尤其在一些高端领域尤为广泛。
嵌入式应用领域:
近些年来 linux 在嵌入式领域的应用得到了飞速的提高
linux 运行稳定、对网络的良好支持性、低成本,且可以根据需要进行软件裁剪,内核最小可以达到几百 KB 等特点,使其近些年来在嵌入式领域的应用得到非常大的提高
主要应用:机顶盒、数字电视、网络电话、程控交换机、手机(安卓内核)、PDA、智能家居、智能硬件等都是其应用领域。以后再物联网中应用会更加广泛
1.4 Linux6大学习阶段
第 1 阶段:linux 环境下的基本操作命令,包括 文件操作命令(rm mkdir chmod, chown) 编辑工具使用(vi vim)linux 用户管理(useradd userdel usermod)等
第 2 阶段:linux 的各种配置(环境变量配置,网络配置,服务配置)
第 3 阶段:linux 下如何搭建对应语言的开发环境(大数据,JavaEE, Python 等)
第 4 阶段:能编写 shell 脚本,对 Linux 服务器进行维护
第 5 阶段:能进行安全设置,防止攻击,保障服务器正常运行,能对系统调优。
第 6 阶段:深入理解 Linux 系统(对内核有研究),熟练掌握大型网站应用架构组成、并熟悉各个环节的部署和维护方法
2 - Linux的安装(安装 vm 和 Centos)
学习 Linux 需要一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个 Centos 系统来学习
1)先安装 virtual machine ,vm12
2)再安装 Linux (CentOS 6.8)
3)原理示意图,说明VM与centOS的关系
3 - vmtools 安装
1.vmtool介绍
1)可以直接粘贴命令在 windows 和 centos 系统之间
2)可以设置 windows 和 centos 的共享文件夹
3)示意图
为了实现实现上面的功能,我们可以按照vmtools工具
2.vmtools的安装与使用
1)进入centOS
2)点击 vm 菜单的->install vmware tools
3)centos 会出现一个 vm 的安装包
4)点击右键解压, 得到一个安装文件
5)进入该 vm 解压的目录,/root/桌面/vmware-tools-distrib/下
6)安装 ./vmware-install.pl
7)全部使用默认设置即可
8)需要 reboot 重新启动即可生效
3.使用 vmtools 来设置 windows 和 linux 的共享文件夹
1) 菜单->vm->setting, 如图设置即可注意:设置选项为 always enable , 这样可以读写了
2) windows 和 centos 可共享 d:/share 目录可以读写文件了
3) 在 centos 的 /mnt/hgfs/ 下
4 - Linux目录结构
1.目录结构概述
Linux没有炫目的可视化操作界面,它的操作大部分都是直接执行命令,而可执行文件都是保存在相应的目录中的,所以我们对linux的操作大多数时候都是查找和执行这些可执行文件的。
linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。
在Linux世界里,一切皆文件。
2.具体文件目录
1) root : 该目录为系统管理员目录,root是具有超级权限的用户。
2) bin ->usr/bin : 存放系统预装的可执行程序,这里存放的可执行文件可以在系统的任何目录下执行。
3) usr:是linux的系统资源目录,里边存放的都是一些系统可执行文件或者系统以来的一些文件库。类似windows下的program files目录
4) usr/local/bin:存放用户自己的可执行文件,同样这里存放的可执行文件可以在系统的任何目录下执行。
5) lib->usr/lib: 这个目录存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件,几乎所有的应用程序都需要用到这些共享库。
6) boot : 这个目录存放启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
7) dev: dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,Linux中的设备也是以文件的形式存在。
8) etc: 这个目录存放所有的系统管理所需要的配置文件。类似windows下配置环境变量。
9) home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名以用户的账号命名,叫作用户的根目录;用户登录以后,默认打开自己的根目录。
10) var : 这个目录存放着在不断扩充着的东西,我们习惯将那些经常被修改的文件存放在该目录下,比如运行的各种日志文件。
11) mnt : 系统提供该目录是为了让用户临时挂载别的文件系统,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容
12) opt: 这是给linux额外安装软件所存放的目录。比如你安装一个Oracle数据库则就可以放到这个目录下,默认为空。
13)tmp: 这个目录是用来存放一些临时文件的
5 - Linux的远程操作工具
3.1 Linux的远程操作
在软件公司中,无论是测试服务器还是正式服务器都是部署在公司Linux系统上的,而Linux系统通常是各开发小组共享的,因此程序员需要远程登录到centos进行项目管理或者开发。远程登录客户端有Xshell、Xftp等多种工具 , 我们学习使用Xshell和Xftp , 其它的远程工具大同小异。
说明: 公司开发时候, 具体的情况是这样的
1) linux 服务器是开发小组共享的.
2) 正式上线的项目是运行在公网的.
3) 因此程序员需要远程登录到 centos 进行项目管理或者开发.
4) 画出简单的网络拓扑示意图(帮助理解)
5) 远程登录客户端有 Xshell, Xftp , 我们学习使用 Xshell 和 Xftp , 其它的远程工具大同小异
3.2 Xshell
-
简介:
Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。它通过互联网到远程系统的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。
Xshell 是目前最好的远程登录到Linux操作系统的软件,流畅的速度并且完美解决了中文乱码的问题,是目前程序员首选的软件。
特别说明:如果希望安装好 XShell 5 就可以远程访问 Linux 系统的话,需要有一个前提,就是Linux 启用了 SSHD 服务,该服务会监听 22 号端口
- 下载:https://www.netsarang.com/zh/downloading/?token=Z3duOUd2RWV1UmV5WFFhaWxJYV9JQUBvb3prUTE5ekpoOVd1dWd4WXFaTkdB
- 安装和使用:下一步即可
3.3 Xftp
- 简介:
是一个基于windows平台的功能强大的SFTP、FTP文件传输软件。使用了Xftp 以后,windows 用户能安全地在UNIX/Linux和Windows PC 之间传输文件。
- 下载:https://www.netsarang.com/zh/downloading/?token=dWpJN2xicmtaaENtMVdrdnFBYzhKUUBvb3prUTE5ekpoOVd1dWd4WXFaTkdB
- 安装和使用:下一步即可
- xftp解决中文乱码问题:打开此会话的属性,设置编码格式为UTF-8即可