centos7没有ifconfig命令,所以要查网卡ip的话,使用ip addr命令。ens33就是网卡。
NAT模式下,第一次ip addr发现ens33那边没有ip地址,这时需要修改一下文件ifcfg-ens33里面的值。
1.可以直接用vi+绝对路径
vi /etc/sysconfig/network-scrpits/ifcfg-ens33
看到有个字段ONBOOT=NO,需要将这个值改为YES.(意为网络自动连接)
1.进入该文件后,进入插入模式(INSERT),也就是按i键
2.修改ONBOOT的值为yes
3.按esc切换到末行模式,输入:wq,保存修改并退出
修改之后,重启网络服务,命令:service network restart(如果不是root用户,就用sudo service network restart)
再次查看,ip addr如下。可以看到网卡的ip为192.168.0.108
(其实这里我的网络适配器模式是桥接,虚拟机的网络连接会同步我的物理主机,查看物理主机的ip为:192.168.0.104)
通过1查到虚拟机ip后就可以用远程连接工具xshell来进行远程连接了。
打开xshell,新建连接,输入名称和主机,如图:
然后输入要登陆的用户名和匹配的密码,就可以成功连接了。
直接ping www.baidu.com。
不通的情况(桥接+ONBOOT=NO):
通的情况(桥接+ONBOOT=YES):
(1)首先确定虚拟机的网络适配模式是哪种?
桥接?NAT?仅主机?
(2)如果是桥接模式,基本上只要物理主机能联网,虚拟主机也能联网,除非像上面我改了某些配置文件的值。
(3)如果是NAT模式,虚拟主机共用物理主机的ip,一般来说可是可以联网的,不行的话确认下ifcfg-ens33文件中ONBOOT的值。
(4)如果是仅主机模式,那么就换个模式。
基本上是有3种模式:
仅主机:
该虚拟机只能和主机以及主机上的其他虚拟机通信,是不可与外部网络通信的。
NAT:
nat其实network adderss translation---网络地址转换。
这种地址转换方法是用来减缓ipv4的地址不够用状况。具体是一个局域网内部使用私有地址,私有地址在全网上不是唯一的,这个局域网内的各个私有地址主机要是想和外部网络通信,就需要经过nat将内部地址转成公有地址,公有地址在全网唯一。
上图从百度拿的,一般NAT运行在路由器上。当网关收到报文时,再将目的地址写的那个公有地址转成私有地址,发给局域网内对应的主机。
linux的NAT也是类似的。虚拟机使用NAT模式的话,那么它要和外部通信对外使用的就是物理主机的ip,它的虚拟ip对外是隐藏的。
桥接:虚拟主机直接连接物理网络。
gdb:是linux的一种调试工具。
https://www.jianshu.com/p/adcf474f5561
相当于文件名的查找,可用grep命令。
不区分大小写,用选项 -i
要递归到当前目录的子目录,用选项 -r
grep -i -r example ./*.cpp
文件描述符0:标准输入设备
文件描述符1:标准输出设备
文件描述符2:标准错误输出设备
top命令--可用运行top命令监视进程和Linux整体性能
第一行:
03:33:40 ---系统当前时间
up 40min --- 系统已运行了40分钟
2 users --- 当前有2个用户登陆系统(可以用who命令验证---查看当前系统登陆的用户)
load average:0.00,0.01,0.05 ---1分钟、5分钟、15分钟的负载情况(越小越好)
第三行:
0.3 us — 用户空间占用CPU的百分比。
0.3 sy — 内核空间占用CPU的百分比。
0.0 ni — 改变过优先级的进程占用CPU的百分比
99.3 id — 空闲CPU百分比
0.0 wa — IO等待占用CPU的百分比
0.0 hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.0 si — 软中断(Software Interrupts)占用CPU的百分比
:wq 保存修改并退出
:q! 不保存修改强制退出
:wq! 保存修改并强制退出
(图源网络,侵删)
前台:ctrl+c
后台:1.kill (kill 进程号 或者 kill -9 进程号)(进程号拿ps命令查)
2.后台进程先转成前台进程(fg命令),然后ctrl+c.
如果已经对文件做了修改,现在想忽略修改直接退出,那么必须使用 :q! 才行,不加 ! 进行强制退出的话,会报下图的错:
s/AAA/YYY/g
s: 表示替换
g: 表示全局执行
(1)进入文件,当当前行敲命令:yy
(2)光标移到末行文本最尾,敲命令:p
(注意是小写p,不是大写P)
dd --- 删除当前行的内容
(1)top命令
(2)uptime命令
yum install net-tools
执行完后在使用网络相关的命令:
umask:指定了在创建文件时默认的权限掩码。表示的是拿走的权限,还原时要用文件/目录的默认全权限-umask拿走的权限。
文件默认的最大权限为:666.因为对于所有者/组内/其他角色,都不允许默认给上执行权限,也就是默认只给rw的权限,不给x权限。
所以分析题目,新建的是文件默认权限为666,减去umask244,等于422,也就是r-- -w- -w-
如果是目录的话,目录的x权限代表的意思比较特殊,意为在目录内新建或删除文件。所以目录的初始权限为777,如果题目把新建文件改为新建目录,那么还原下目录的权限:777-244=533,即r-x -wx -wx
ls命令的结果:列出当前目录下的文件,所以会是: a b
ls > c:在没有c文件时会先创建c文件,创建后再写入,那么写入的就是 a b c
实战结果为下:
touch 、vi 、vim 、<
linux中>表示覆盖原文件内容,>>表示追加内容
实战:
(1)tyy用户登陆,cat c (c为文件名),看到内容为:djiodexit
(2)由于文件c的other权限为:r--,所以没法用echo往里写东西
(3)切换成root用户,chmod o+x,o+w c
(4)再切换成tyy用户,执行:echo hello >> c
(5)cat c 结果
可以看到“hello”内容被追加到了文件c的末尾。(空行是原本c文件就有的哈)
----------------------------------------------------------------------------------------------------------------------------
21.持续更新中