下载、安装与配置
下载安装配置 软件安装与卸载
软件包说明命令学习
rpm下载安装(不推荐)yum管理(推荐) 常用软件下载与安装
ifconfigsshvimtreewget 克隆与网络连接
克隆网络连接
VM与物理机设置桥接模式NAT(地址转换)模式Host-Only模式 文件与目录
自带目录目录文件压缩与备份 用户与权限管理
用户用户组权限 系统管理
系统查看
系统版本内核版本cpu信息cpu和内存使用 时间日期任务调度进程管理 其他进阶
服务管理
service(不推荐)systemctl 文件
sed 磁盘
mountdffdisk 防火墙
iptables 参考
下载、安装与配置 下载
下载Centos镜像,网站见参考
点击大的版本,例如7,再选择isos进行下载
| 名称 | 描述 |
|---|---|
| CentOS-7-x86_64-DVD-1708.iso | 标准安装版,一般下载这个就可以了(推荐) |
| CentOS-7-x86_64-NetInstall-1708.iso | 网络安装镜像(从网络安装或者救援系统) |
| CentOS-7-x86_64-Everything-1708.iso | 对完整版安装盘的软件进行补充,集成所有软件。(包含centos7的一套完整的软件包,可以用来安装系统或者填充本地镜像) |
| CentOS-7-x86_64-LiveGNOME-1708.iso | GNOME桌面版 |
| CentOS-7-x86_64-LiveKDE-1708.iso | KDE桌面版 |
| CentOS-7-x86_64-Minimal-1708.iso | 精简版,自带的软件最少 |
这里使用的VMware 12 Pro,以Centos7为例,新建新的虚拟机-自定义-下一步
继续选择下一步,然后选择稍后安装-下一步
选择Linux-Red Hat Enterprise Linux 7 64位
填写名字,选好位置
核数和宿主机一致即可
内存,看个人要使用什么了,我一般是选择宿主机的一半,平时开虚拟机的话就不会在宿主机开太多软件了
网络都可以,看个人习惯
下一步直到分配磁盘大小,选择合适磁盘大小,改为单个文件如果你只会在自己的电脑上使用的话
可以删除没有的硬件,例如打印机,选择光驱
选择镜像,就是前面下载的.iso文件
处理器添加虚拟化(之后学习KVM需要)
之后点击完成即可
打开虚拟机,选择语言
软件选择,新手可以选择带GUI的,选择开发工具(带有gcc等),我就选择最小安装了
安装位置选择磁盘即可,我要配置分区
选择标准分区,添加挂载点/boot,选择1024,防止后序yum update空间不足
添加 / 挂载点
添加swap挂载点
完成,接收更改
之后添加网络,这里改为手动,步骤如下。注意网关最后是1还是2
主机名修改一下,这里就使用centos+ip最后一位,这样之后当有其他虚拟机,例如192.168.x.4访问这台主机的时候就不用记ip了,例如访问Web服务,http://centos3:80/index.html
点击开始安装,设置下密码
重启,之后你可以ping一下www.baidu.com,试一下网络
rpm包的获取方式
- Centos系统镜像光盘网站rpmfind.net软件官网centos yum源或rpm手动下载
rpm包安装后一般保存在/var/lib/rpm/目录下
命令学习 rpm下载安装(不推荐)命令
rpm [Option...]
常用参数
| 参数 | 含义 |
|---|---|
| -i | install,安装软件包 |
| -v | 显示附加信息 |
查询
rpm -q [Option...]
| 参数 | 含义 |
|---|---|
| -a | 查看所有安装的软件包 |
| -f | 系统文件名 |
| -i pkgname | 显示已安装的包pkgname的信息 |
| -l | 查询软件包中文件安装的位置 |
| -p name | 查询未安装软件包name的相关信息 |
| -R | 查询软件包的依赖性 |
举个例子:
卸载
rpm -e pkgname
建议添加–nodeps,不去卸载依赖关系包
yum管理(推荐)自动处理依赖性关系,一次性安装所有依赖的软件包
yum [options] COMMAND
常用命令
搜索:yum search xxx 安装:yum -y install xxx 卸载:yum -y remove xxx 更新:yum -y update xxx
-y省的交互输入y了
常用软件下载与安装 ifconfig网络查看
yum -y install net-tools.x86_64ssh
远程连接,安装服务端与客户端
yum -y install openssh-server openssh-clientsvim
比vi好像用的文本编辑器
yum -y install vimtree
目录树形结构查看
yum -y install treewget
文件下载
yum -y install wget
到了这里,差不多必备的软件就全了。接下来在练习命令的时候,你可能会创建一些文件、目录、用户等,也可能误操作导致系统损坏,网络不通等问题,因此,强烈建议不再动这个,而是以此为母版,克隆一些。
例如:
Centos7-test:练习Linux命令
Centos7-docker:练习Docker使用
Centos7-web:练习Web开发与部署
之后不需要了可以直接删除。
上了班一般设置自动快照,网络一般不用管,都是云服务器,有外网ip和VPC。这里还是简单配置一下。
克隆我不会动母版,所以都是使用链接克隆,可以节省空间
原来的是NAT的,克隆了一个Bridge的。之后NAT的不再开机,只做母版留着克隆。
| 类型 | ip | 子网掩码 | 网关 | DNS |
|---|---|---|---|---|
| 物理机/宿主机/主机 | 192.168.31.164 | 255.255.255.0 | 192.168.31.1 | 自动 |
| 桥接虚拟机 | 192.168.31.3 | 255.255.255.0 | 192.168.31.1 | 192.168.31.1 |
| NAT虚拟机 | 192.168.100.3 | 255.255.255.0 | 192.168.100.2 | 8.8.8.8;114.114.114.114 |
桥接设置
选择与物理机一直的网卡即可
NAT设置
设置网关
设置子网ip,子网掩码,dhcp
Host-Only设置
设置子网ip,子网掩码,dhcp
物理机/宿主机/主机设置
网络连接
ip自动
ipconfig查看
接下来设置虚拟机
主机网卡与虚拟机虚拟的网卡,利用网桥进行通信。类似于虚拟一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机中。
注意:虚拟机ip地址需要与主机在同一个网段,如果需要联网,网关与DNS保持一致。
虚拟机网络适配器设置为桥接模式
修改网络配置
cd /etc/sysconfig/network-scripts
文件一般为ifcfg-ensxx,你的可能不是33
修改为协议为static,设置静态ip,网关,dns
重启网络
/etc/init.d/network restart
测试网络
发现无法ping通宿主机,但是可以访问主机http服务(这里使用的python -m http.server开启的)
所以,应该是宿主机防火墙的问题
设置防火墙
启用上图所示的虚拟机监控,启用后前面会有绿色对勾
测试访问主机与外网
测试主机访问虚拟机
借助虚拟NAT设备和虚拟的DHCP,虚拟机和物理机共用一个IP。
注意:虚拟机使用NAT模式时,Linux系统要配置成dhcp。
虚拟机网络适配器设置为NAT模式
修改网络配置
cd /etc/sysconfig/network-scripts
文件一般为ifcfg-ensxx,你的可能不是33
修改为dhcp,设置个静态ip
重启网络
/etc/init.d/network restart
测试网络
测试主机访问虚拟机
将虚拟机与外网隔开,使得虚拟机成为一个独立的系统,只与主机互相通讯。相当于NAT模式去除了虚拟NAT地址转换功能。
这个我不用,就不展示了。
bin:二进制文件目录,/usr/bin的软链接boot:系统启动相关的文件dev:Device,设备文件目录,声卡、磁盘等etc:常用系统及二进制安装包配置文件默认路径 例如,/etc/passwd /etc/hostshome:普通用户家目录lib:库文件目录,/usr/lib的软链接lib64:库文件目录,/usr/lib64的软链接media、mnt:临时挂载存储设备的目录opt:有些软件会安装在这里proc:操作系统运行时,进程信息及内核信息存放在这里,例如,/proc/cpuinforoot:root用户家目录run:运行目录,存放系统运行时数据sbin:大部分系统管理命令存放目录,root可执行命令存放目录,/usr/sbin的软链接srv:服务目录,存放本地服务相关文件sys:系统目录,存放硬件信息tmp:临时文件目录usr:存放应用程序和文件 /usr/bin(普通用户的应用程序)、/usr/lib (库文件)var:系统和软件运行时产生的日志信息,例如,/var/log
进阶前的命令就不展示了,可以看参考的Linux基础
目录cd:change dirctorypwd:print working directoryls:listmkdir:make directoryrm:removermdir:remove directory,不推荐,可使用rm代替 文件
touchechomvcpheadtailcatmorelesslngrepfindlocate
>:用前面的内容覆盖掉后面文件的内容 >>:用前面的内容追加到后面的文件尾部 |:管道,前面的做后面的输入压缩与备份
zipunziptar 用户与权限管理 用户
whoamiiduseraddpasswduserdelusermodsu 用户组
groupaddgroupdel 权限
chownchgrp 系统管理 系统查看 系统版本
lsb_release -a
cat /etc/issue内核版本
uname -a
-r参数获取部分
cpu信息cat /proc/cpuinfocpu和内存使用
top时间日期
date:日期cal:日历 任务调度
crontab 进程管理
ps:进程查看kill:杀死进程 其他
history:历史命令runlevel:运行级别inithelpmanshutdown:关机poweroff:关机halt:关机reboot:重启 进阶 服务管理 service(不推荐)
service 服务名 [start | stop | restart | reload | status]
start:启动stop:停止restart:重启reload:重新载入status:状态
查询sshd服务状态
service sshd statussystemctl
systemctl [Options...] {COMMANDS...}
start:启动
stop:停止
status:状态
reload:重新载入
restart:重启
enable:开机启动
disable:取消开机启动
开机启动sshd服务
systemctl enable sshd文件 sed
这个命令最厉害的地方在于在文件中间进行插入,替换,删除
sed [-hnV][-e


