一些简单的认识:


  • Linux是操作系统

  • 像Windows一样,完全可以做一样的事情,但是相对更加稳定。世界上80%以上服务器都是Linux

  • andriod系统就是Linux,其实mac系统是unix



Linux起源:

  • Unix------>Minx----->Linus Torvalds 1991年开发了Linux内核

  • GNU(GNU IS NOT UNIX) a PLAN that to fight Unix that can better than Unix 但是使用之后要发布自己的源码且不能用于商业  


Linux发行版

  • Debian 1993- Ubuntu 2004

  • Slackware 1993 - SUSE 1994

  • RedHat 1994- CentOS 2003

  • RedHat - Redflag 1999

  • Redhat Fedora 社区版 RHEL 2002 商业版

CentOS 是redhat的基础上进行的改进,但是相对于商业版来说没有那么好的售后维护等。


虚拟机上安装Centos

  • 正常下一步下一步

  • 网络适配器的选择有三种,NAT的理解是可以理解为vm是作为一个路由器来给虚拟机分配ip来实现上网,而VM和windows就是主系统是相互独立,互不影响的,网段是不一样的。桥接是把物理机和虚拟机看成是并列关系,是同一个网段。这样的话万一物理机更改网络环境,虚拟机就不行了。仅主机是只和主机通信。NAT是分享的是主机的网络。

  • 在磁盘安装的时候要使用自定义安装|LVM是可以在以后无损数据扩充的一种方式,把磁盘虚拟成一个大的磁盘,可以实现扩容和缩容|

  • 选择标准分区然后进行分区以及挂载|挂载点可以简单理解为盘符 a name


具体说一说挂载点的分配

  • /boot 是启动相关的目录 不需要太多的空间 几百兆足以

  • swap是交换分区,windows里的虚拟内存就是交换分区,目的是内存不够的时候把物理空间用来存储内存不够的时候临时放置东西 但是速度肯定没有内存快|通常是按照内存的2倍来设定。如果内存大于4G就放8个G足以

  • 剩下的都给根---这是aming老师的做法,我之前是把home等都进行了挂载。But not big deal

  • 磁盘的表达是sda1 sda指的是一个磁盘,如果有俩磁盘会有sdb sda1就是第一个目录 以此类推


图形化界面默认是用户登陆(之前物理机直接安装就出现问题,没有添加用户但是root又无法登陆)所以最小化安装,无图形界面就没有关系了。


配置IP

目的就是可以通过远程连接更好的操作系统,同时也可以模拟出来一个实际的场景

因此就需要配置一个静态ip


dhclient 命令就是自动获取一个ip的命令,在这个命令未执行前是看不到IP的,只有执行后才会有ip等信息出现。所以需要先执行一下这条命令。


dhclient命令使用动态主机配置协议动态的配置网络接口的网络参数。

dhclient -r     #释放                              
IPdhclient      #获取IP

 ip add 

Linux学习- 1 初始Linux 20180407_第1张图片


linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者。使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务。ifconfig是net-tools中已被废弃使用的一个命令,许多年前就已经没有维护了。iproute2套件里提供了许多增强功能的命令,ip命令即是其中之一。” search result


根据vm虚拟网络设置可以看到子网地址为192.168.202.0


Linux学习- 1 初始Linux 20180407_第2张图片Linux学习- 1 初始Linux 20180407_第3张图片

网关就相当于是路由器,因为重启的话,会再分配一个ip地址,所以需要固定下来ip地址是多少

静态IP

接下来就是要找到网卡的配置文件了。一切皆文件嘛!

Linux学习- 1 初始Linux 20180407_第4张图片


由于需要配置成静态ip所以同时也要配置子网掩码,dns,网关等,同时需要onboot改成yes 开机使用

Linux学习- 1 初始Linux 20180407_第5张图片此处有一个错误就是DNS1应该设置为119.29.29.29也就是这个原因导致的错误


systemctl 重启服务

systemctl restart network.service

Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。


但是发现配置完之后无法上网,也就是ping不到东西,咋整?

--------------------排错

这个时候可以讲虚拟机设置为桥接,看看是否符合桥接的特征。

桥接

    桥接网络是指本地物理网卡和虚拟网卡通过VMnet0虚拟交换机进行桥接,物理网卡和虚拟网卡在拓扑图上处于同等地位,那么物理网卡和虚拟网卡就相当于处于同一个网段,虚拟交换机就相当于一台现实网络中的交换机,所以两个网卡的IP地址也要设置为同一网段。

   所以当我们要在局域网使用虚拟机,对局域网其他pc提供服务时,例如提供ftp,提供ssh,提供http服务,那么就要选择桥接模式。

   例如大学宿舍里有一个路由器,宿舍里四个人连接这个路由器,路由器的wanip就不理会了,这个ip是动态获取的,而lanip默认是192.168.1.1,子网掩码是255.255.255.0。而其他四个人是自动获取ip,假设四个人的ip是:

   A:192.168.1.100/255.255.255.0,  B:192.168.1.101/255.255.255.0,  C:192.168.1.102/255.255.255.0,  D:192.168.1.103/255.255.255.0

   那么虚拟机的ip可以设置的ip地址是192.168.1.2-192.168.1.99,192.168.1.104-192.168.1.254(网络地址全0和全1的除外,再除去ABCD四个人的ip地址)

  那么虚拟机的ip地址可以设置为192.168.1.98/255.255.255.0,设置了这个ip地址,ABCD这四个人就可以通过192.168.1.98访问虚拟机了,如果虚拟机需要上外网,那么还需要配置虚拟机的路由地址,就是192.168.1.1了,这样,虚拟机就可以上外网了,但是,上网我们一般是通过域名去访问外网的,所以我们还需要为虚拟机配置一个dns服务器,我们可以简单点,把dns服务器地址配置为google的dns服务器:8.8.8.8,到此,虚拟机就可以上网了。

”  search result


也就是桥接的话,虚拟机的ip应该是和本机是在一个网段内。


Linux学习- 1 初始Linux 20180407_第6张图片Linux学习- 1 初始Linux 20180407_第7张图片


测试完之后其实也没啥。

按照上面最初设置静态ip的办法重新设置一遍,最后重启网络服务。再ping就好了。现在就是静态IP了

Linux学习- 1 初始Linux 20180407_第8张图片



yum是啥?安装软件


vmware快照,就是相当于windows备份

how?

虚拟机上点击右键,选择快照,备注好。



接下来就是安装putty以及xshell

没有什么可说的


在接下来就是使用,记得保存session下来。相比之下呢,xshell会更灵活而且功能更加丰富。尤其是可以开几个窗口根据需要进行排列,非常方便。



接下来就是设置密钥


客户端 私钥

服务器 公钥

只要配对成功就可以认证通过


putty

Linux学习- 1 初始Linux 20180407_第9张图片点击puttygen

Linux学习- 1 初始Linux 20180407_第10张图片生成公钥私钥,公钥就是一长串字符串,保存好。私钥也需要在本机保存好。


Linux学习- 1 初始Linux 20180407_第11张图片接下来到Linux中创建一个目录

mkdir /root/.ssh


改权限

chmod 700 /root/.ssh


创建文件,把公钥粘贴进来

vi /root/.ssh/authorized_keys


保存退出


关闭防火墙

setenforce 0


然后退出登陆。


接下里是在putty端,也就是客户端的设置。 先load进session,然后到ssh中找到auth把电脑上的私钥导入后保存。在连接主机,一切搞定。

Linux学习- 1 初始Linux 20180407_第12张图片 因为之前为私钥配对加上了一个密码,所以需要输入密码才可以。也就是说别人万一拿到这个文件也需要密码登陆。有点意思。

可以在其他电脑再配置一台客户端登陆。


接下里是用Xshell来连接Linux


原理是一样的,只是步骤区别。


Linux学习- 1 初始Linux 20180407_第13张图片


从新建的地方进去

Linux学习- 1 初始Linux 20180407_第14张图片



Linux学习- 1 初始Linux 20180407_第15张图片

将公钥复制好,因为需要在主机里使用


登陆进去主机,打开/root/.ssh下的密钥文件,另起一行(已经存在的是putty生产的公钥)

Linux学习- 1 初始Linux 20180407_第16张图片

Linux学习- 1 初始Linux 20180407_第17张图片

再登陆的时候,需要将password登陆改成密钥登陆

Linux学习- 1 初始Linux 20180407_第18张图片

再连接的时候,选择公钥配对,然后就可以直接登陆了。

Linux学习- 1 初始Linux 20180407_第19张图片



单用户模式


忘记root密码?

1. 单用户模式

2.救援模式

单用户模式首先需要重启linux (reboot, init 6, shutdown -r now 都可以重启)

Linux学习- 1 初始Linux 20180407_第20张图片

e-edit

Linux学习- 1 初始Linux 20180407_第21张图片

Linux学习- 1 初始Linux 20180407_第22张图片

然后按 ctrl x 就会进入紧急/安全模式 

进去之后实际上还没有进入本来的系统,有点像是在BIOS里面,需要进入/sysroot,这里面才是系统真正的目录。这个时候需要用chroot 进入系统 之后就可以使用passwd root改密码了

chroot/sysroot/之后 passwd root

如果乱码,就LANG=en定义一下语言。

Linux学习- 1 初始Linux 20180407_第23张图片

接下里很重要的一步

touch /.autorelabel 只有这个存在才能登陆系统

Linux学习- 1 初始Linux 20180407_第24张图片

还需要蛮长时间的,就好了。




centos 7的不同级别,其实是和centos6一样的

Linux学习- 1 初始Linux 20180407_第25张图片


救援模式 -万一Grub密码忘记了?设置Grub密码http://ask.apelearn.com/question/14743

首先要进入BIOS把cd改成第一启动

然后读取光盘-rescue 



克隆虚拟机

在需要多台机器但是不想重新安装的话,怎么办?

首先把虚拟机关闭。然后在虚拟机上点击管理,克隆,链接克隆即可,否则太大。

做好之后,修改IP地址,UUID删掉,保存


如何改主机名?

hostnamectl set-hostname xxx 然后重启就好了


然后用工具连,因为是复制所以密钥也都存在。




两台Linux机器互连


ssh ip 就可以了 正规是ssh uername@ip

w查看当前负载

ssh默认22端口

如果不是22 则需要指定端口 ssh -p 端口号 username@ip

如果需要密钥呢? ssh-keygen 生产密钥对

会生产私钥和公钥,如果像登陆其他机器,其他机器就是主机,就需要把公钥放到其他机器。不要忘记放置的路径。

更简单只需要把公钥放到主机文件中,私钥已经在本机上配置好了,连接即可。

要关闭防火墙,enforce







总结:

首先在新的机器安装完毕后需要进行ip静态化处理:

dhclient 自动分配ip

ip addr 查看ip信息

systemctl restart network.service 重启网络服务

就好了



关于密钥连接

生成的公钥放在服务器 私钥放在客户端 

setenforce 0 关闭防火墙