linux入门
Linux介绍
- Linux怎么读:利尼克斯、里纽克斯、里纳克斯
- Linux是一款操作系统,免费、开源,安全、高效、稳定、处理高并发非常强悍,现在很多企业级的项目都部署到Linux/unix服务器上运行
- Linux创始人是林纳斯
- Linux的吉祥物是一只小企鹅,叫Tux
- Linux主要发行版本
我们平时说的Linux主要是Linux内核,有很多厂商利用该Linux内核装应用软件进行二次开发,因此就有很多发行版本,用户可以直接使用。
(CentOSE、Redhat)(Redhat公司)、ubuntu、Suse、红旗Linux。 - 目前主要操作系统
Windows、Andriod、车载系统、ios、Mac、Linux等
Linux和Unix的关系
- Unix是怎么来的
Unix是在贝尔实验室下由两个外国人用C语言完成的。
- Linux是怎么来的
Reichard Stallman的伟大的GNU计划
人->软件应用层->shell层->操作系统Linux->硬件 - Linux和Unix关系一览图
目录结构
目录结构介绍
- Linux系统只有一个根目录 ‘/’,在此目录下再创建其他目录,在根目录下有bin目录、home目录、root目录、boot目录等等,就像一课倒着的大树,在Linux世界里,一切皆文件,比如/dev
- 管理设备;/media Linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后, linux会把识别的设备挂载到这个目录下。 /opt 存放软件,到虚拟机中实践一下。
目录介绍
- /mnt[重点]
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了。比如在windows系统下创建的共享文件夹(与linux进行共享)d:/ myshare,该文件夹就会挂载到CentOS的根目录下 /mnt文件夹下。 - /media
Linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后, linux会把识别的设备挂载到这个目录下。 - /bin:
bin是Binary的缩写, 这个目录存放着最经常使用的命令。 - /boot:
这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。 - /dev :
dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。 - /etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录。 - /home:
用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。 - /lib:
这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。 - lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 - /media:
linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。 - /opt:
这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。一般不安装在这个目录下,而是安装在/user/local - /proc:
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all - /root:
该目录为系统管理员,也称作超级权限者的用户主目录。 - /sbin:
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。 - /selinux:
这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。 - /srv:
该目录存放一些服务启动之后需要提取的数据。 - /sys:
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。 - /tmp:
这个目录是用来存放一些临时文件的。 - /usr:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。 - /usr/bin:
系统用户使用的应用程序。 - /usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。 - /usr/src:
内核源代码默认的放置目录。 - /var:
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 - /run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。
在 Linux 系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
/etc: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的。
值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给root使用的指令。
/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里。
注意:/proc /src /sys 属于系统文件夹,一般Linux高手才动,其他人不要动,否则系统极有可能崩溃。
我们自己下载的应用程序必须放在/user/local目录下,其他地方不准放
总结一下
- Linux下有且只有一个根目录
- Linux的各个目录存放的内容是规划好的,不要乱放文件
- Linux是以文件的形式管理我们的设备,因此Linux系统,一切皆文件
- Linux的各个文件目录下存放什么内容,大家要有一个认识
CentOS终端使用与联网
- 桌面上单击右键,选择打开终端
- 自己配色:在菜单栏中选中编辑/首选相/颜色,内置方案根据你的喜好进行选择,这里选择黑底白字
- 配置联网
点击右上角的开机/关机键,选择有线连接中的连接,即可连接网络。
VM和Linux(CentOS)系统安装
安装VM和CentOS
学习 Linux需要一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个CentOS系统来学习
- 先安装 virtual machine(VM15)
- 再安装 Linux(CentOS7.6)
- 原理示意图,这里我们画图说明一下VM虚拟机和CentOS的关系
- 原理图解释
安装VM15软件
通过VM软件创建一个虚拟机空间
通过VM软件在我们创建好的虚拟机空间上,安装CentOS操作系统
使用CentOS - CentOS下载地址:
http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso - VM下载地址:
https://my.vmware.com/cn/web/vmware/info/slug/desktop_end_user_computing/vmware_workstation_pro/15_0
VM软件的安装
- 去BIOS里修改设置开启虚拟化支持(一般为F2)
- 安装虚拟机软件VM ,修改安装路径,推荐选择D盘
- 将如下红框内的全部取消勾选
- 选择只在桌面创建快捷方式即可,根据自己需求进行抉择
- 最后选择安装
- 等待安装完成
- 输入许可证后点击输入,最后点击完成,软件安装完成
- VM软件15.1版本的许可证密匙如下,一共有6个,只输入一个即可,如果不好使就换另一个进行输入。
YG5H2-ANZ0H-M8ERY-TXZZZ-YKRV8
UG5J2-0ME12-M89WY-NPWXX-WQH88
UA5DR-2ZD4H-089FY-6YQ5T-YPRX6
GA590-86Y05-4806Y-X4PEE-ZV8E0
ZF582-0NW5N-H8D2P-0XZEE-Z22VA
YA18K-0WY8P-H85DY-L4NZG-X7RAD
创建虚拟机空间
- 创建新的虚拟机
- 选择典型安装
- 选择稍后安装操作系统
- 选择Linux系统,版本选择CentOS7 64位
- 虚拟机名称自定义,这里区CentOS7 64位。安装位置推荐安装在VM软件的根目录下,便于管理
- 最大磁盘大小推荐20GB,选择将虚拟磁盘拆分成多个文件
- 最后点击完成
- 回到软件界面点击编辑虚拟机设置
- 内存推荐选择2GB
- 处理器数量选2个,内核数量4,处理器内核总数为8个,处理器内核数量最大不能超过自己本电脑的内核数量
- 查看自己电脑的处理器数量和每个处理器内核数量,打开任务管理器->性能,这时我们会看大一个处理器的内核为4个,逻辑处理器就是表示一共的内核数量为8,因此可以得出有两个CPU,也可以点击资源管理器->CPU,在右侧可以看到有多少个CPU,这里的一个CPU表示一个内核,可得一共有8个内核,为了Linux系统性能最好,选择使用2个处理器,4个内核。
- 硬盘空间设置,这里已经设置好了,为20GB
- 网络适配器选择NAT模式
难点:虚拟机的网络连接三种形式说明
- 桥连接:好处是Linux可以与其他系统通信,缺点,IP地址容易冲突;
桥连接表示在同一个网络中,如果有一个叫张三的同学使用Windows系统电脑创建一个虚拟机并且安装Linux系统,如果Windows系统的IP为192.168.0.12,那Linux系统的IP地址就是192.168.0.17(17是自己取得),在同一个网络下IP地址的前缀192.168.0都一样,只是后缀不一样。
这时在相同网络下又有一名叫李四的同学,利用Windows系统中VM虚拟机软件创建一个Linux系统,设Windows系统的IP为192.168.0.13.Linux系统的IP为192.168.0.89。
由于IP地址的前缀一样,李四Windows以及Linux系统可以和张三的Windows和Linux系统相互通信,这有一个缺点,比如在一个网络中有200个同学,每个同学都创建一个Linux系统,然而在同一个网络中192.168.0.xxx,xxx的范围是1~254,因此这就造成IP地址的冲突。(见下图关系) - NAT模式:网络地址转换方式,Linux可以访问外网,不会造成IP冲突;
与桥连接完全不同,采用NAT模式时,如过李二利用他的Windows电脑创建一个Linux系统。设Windows系统在没有创建Linux时的IP为192.168.0.16,创建后的另一个IP为192.168.200.78,Windows一共有两个IP地址,那此时Linux系统的IP为192.168.200.23。
李二电脑的Linux可以通过与本机Windows进行通信,也可以通过192.168.200.78->192.168.0.16与张三电脑的Windows和Linux进行通信,但是张三不能通过windows直接访问李二的Linux系统。 - 仅主机模式:Linux系统是一个独立的主机,不能访问外网;
推荐选择NAT模式
网络连接三种形式说明图
CentOS安装
- 点击编辑虚拟机设置
- 选择CD/DVD,再选择使用ISO映像文件,点击浏览找到CentOS映像文件,推荐将映像文件放在软件目录下的CentOS 7.1 64bit文件夹下,有利于管理
- 回到主页点击开启此虚拟机
- 等待CentOS安装……
- 选择语言,选择中文
- 时间默认上海就可以,开始配置分区,点击安装位置,再点击我要配置分区,最后点击完成,接下开就是开始添加分区,一共需要添加3个分区,/boot分区,/swap分区,/(根分区).大小分别推荐为200MB,2048MB,使用剩下的全部空间。
- 选择标准分区(现在改成Lvm,这是一个磁盘扩容技术)
- 添加分区
- /boot分区,一般200MB就够用了
- Swap分区,推荐大小是2048MB->2GB
- 根分区,使用剩下的全部空间
- 点击左上角的完成,分区创建完成。
- 软件选择,每一个环境下都有相应的选项(右侧栏)
- 最小安装
选择调试工具和兼容性程序库,其余先不用选择 - 计算节点
选择调试工具和兼容性程序库,其余先不用选择 - 基础设施服务
选择调试工具和兼容性程序库,其余先不用选择 - 文件及打印服务器
选择调试工具和兼容性程序库,其余先不用选择 - 基本网页服务器
选择调试工具和兼容性程序库,其余先不用选择 - 虚拟化主机
选择调试工具和兼容性程序库,其余先不用选择 - 带有GUI的服务器
选择兼容性程序库,其余先不用选择 - GNOME桌面
选择GHOME应用程序和兼容性程序库,其余先不用选择 - KDE Plasma Workspaces
选择兼容性程序库,其余先不用选择 - 开发及生成工作站
选择兼容性程序库,其余先不用选择
最后点击左上角的完成……
- 由于是学习阶段,将kdump关闭,因为其会占用一些内存,在实际中必须打开。
- 等待安装源和软件选择检查完事后,点击开始安装
- 当安装完成后,设置ROOT密码,最后单击完成配置
- 等待配置完成后,点击重启
- 重启后要接受许可证,并点击右下角的完成配置
- 根据提示完成一些简单的配置
- 安装完成
安装vmtools
简介
- Vmtools安装后,可以让我们在windows下更好的管理VM虚拟机;
可以直接使用粘贴命令在windows和centos系统之间
可以设置windows和centos的共享文件夹
vmtools工具安装
- 在虚拟机中点击菜单栏的虚拟机选项->重新安装Vmware tools,如果你的Linux安装过,就会显示重新安装Vmware tools,点击即可,系统自动安装的Vmware tools,在进行共享文件夹时出现问题。
- 这时在桌面上点击Vmware Tools会查看到VMwareTools-10.3.10-12406962.tar.gz压缩包,先将该文件复制到桌面上。
- 然后将该压缩包复制到根目录下的opt文件夹,但是我们不能直接复制,因为需要权限,我们可以打开终端,获取root权限后复制到opt目录下。
- 获取root权限,打开终端输入sudo su 回车,然后输入自己的密码回车即可。
- 复制桌面文件到opt目录下,桌面也是一个文件,同样在根目录下,具体目录是 /home/用户名/桌面/VMwareTools-10.3.10-12406962.tar.gz,因此拷贝该文件到opt目录的指令如下:
cp /home/crazyyang/桌面/VMwareTools-10.3.10-12406962.tar.gz /opt
- 注意:源文件的路径结束后不能直接输入目标目录,应该加一个空格。
- 进入opt目录,在终端中输入cd /opt
- 输入ll指令查看,opt目录下的所有文件
- 解压Vmware tools压缩包,在终端中输入tar -zxvf VMwareTools-10.3.10-12406962.tar.gz,回车后输入ll,再次查看所有文件。
- 在终端中输入cd vmware-tools-distrib/,进入vmware-tools-distrib
- :在终端中输入./vmware-install.pl,开始安装vmware tools工具。
- 在后缀有[no]的输入y再回车,其余直接回车即可
- 安装成功标志
- 重新启动CentOS后vmware tools工具才能生效,在终端中输入reboot回车即可使Linux重新启动。
Vmware tools启动脚本未能正常运行
打开终端,获取root权限,在终端中输入sudo su回车,然后输入你的密码并回车,最后在终端中输入vmware-uninstall-tools.pl回车卸载Vmware tools工具,最后重新安装。
这种办法有时也不好使,仅供参考。
共享文件夹的创建
基本介绍
为了方便,可以设置一个共享文件夹,比如D:/MyShare,这样Windows和CentOS就可以共享文件了,但是在实际的公司开发中,文件的上传下载是需要使用远程方式实现的。
具体步骤
- 在VM软件下点击虚拟机/设置
- 点击选项,在左侧栏中选择共享文件夹,在右侧栏中勾选总是启用,然后把再点击添加,选择Windows下的共享文件夹的路径,并且起一个名称。
- 进入CentOS系统,进入到根目录下的mnt目录,再进入hgfs->MyShare,这个就是我刚才新建的共享文件夹,现在在Windows下的D:/MyShare中新建一个文本,并且输入Hello Linux!,保存后进入到CentOS中的/mnt/hgfs/MyShare,打开文本即可看到Hello Linux!
命令行下设置共享文件夹
首先,将虚拟机关掉,设置共享文件夹
- 启动虚拟机, 点击菜单栏中的虚拟机选中的”安装VMware Tools…”(如果已安装则显示重新”安装VMware Tools…”)
- 输入”mkdir /mnt/cdrom”在/mnt目录下新建一个名为cdrom的文件夹用来挂载光驱
- 输入“mount /dev/cdrom /mnt/cdrom”将cdrom挂载到/mnt/cdrom目录下
- 创建
/usr/local/vmwaretools
,目录 - 输入ls /mnt/cdrom, 查看/mnt/cdrom目录下的文件,输入cp /mnt/cdrom/VMwareTools-10.1.6-5214329.tar.gz
/usr/local/vmwaretools
,复制VMwareTools-10.1.6-5214329.tar.gz到/usr/local/vmwaretools
目录下 - 切换到
/usr/local/vmwaretools
目录下,输入tar -zxvf VMwareTools-10.1.6-5214329.tar.gz
解压VMwareTools-10.1.6-5214329.tar.gz, 此时目录下会多出一个vmware-tools-distrb文件夹 - 输入“cd vmware-tools-distrib/”进入”vmware-tools-distri”目录,输入“./vmware-install.pl”安装,
注意:在安装的过程中,默认值有的是[no],不能直接回车,要修改成yes再回车,否则/mnt/hgfs/目录下不会出现自己设置的共享文件夹,其余一路回车即可
一些终端命令
- sudo su获取root权限
- rm -rvf /usr/lib/vmware-tools 删除vmware tools
- cp 源文件路径及文件全名(加后缀) 目标目录路径 拷贝一个文件到指定目录。
- reboot 重新启动Linux系统