Python3_01(Linux基础)

Python之路

前言:因为Python主要是在Linux和widows操作系统上使用所以,首先就介绍Pyhton在这两个平台上的安装和一些基础知识

版权声明:本文为博主原创文章,欢迎转载,但必须标识出处,且在文章明显位置给出原文链接

Linux基础


工具
虚拟机:VMware workstation 12 Pro
Linux系统:CentOS 64 位

VMware虚拟机安装很简单就不说明了。

在虚拟机安装CentOS 需要注意的是:

1.运行内存分配1G左右即可

2.可以开机按F2进入bios界面boot目录下选择启动设备选择Hard Drive为优先启动位置之后F10保存

3.如果CPU没有开启虚拟化功能,可以进入bios界面切换到Advanced选项,找到Secure VirtualMachine Mode的选项,设置为Enabled即可。

4.记住自己设置的ROOT用户密码

5.装系统配置分区的时候,一般分为 /boot ,/swap ,/ 三个分区.这里主要想说的是swap分区:linux交换分区,如果linux系统的物理内存不够用,系统就会把物理内存中的访问频率较低的堆存对象移动到swap中,在物理内存中产生新的链接到swap里的那个对象。(在windows中虚拟内存的区别是:windows是协同调用的)

(一)Linux基础命令介绍


Linux系统遵循GPL条款,源代码开源。是基于POSIX和UNIX的多用户,多任务,多线程和多CPU的操作系统。Linux系统主要用于服务器,尤其是网络服务器。

Linux终端:又叫虚拟控制台,Linux操作系统主要使用命令行工作,通过Linux终端对系统进行控制。
(1)Linux系统的简单命令和使用
1.切换虚拟终端:Ctrl+Alt+F(1-6)

2.普通用户和系统用户登录的命令提示符:¥和#。

3.关闭系统:init 0

4.退出命令:exit

5.Linux命令格式:命令+选项+参数

6.who命令:列出目前登录在系统的用户

7.ls:列出当前目录下的文件。

8.date:显示当前日期

9.date'月日时分年':修改系统日期

10.cal:查看系统日历

11.Clear=Ctrl+L:清屏

12.hwlock -s:同步硬件时间

13.useradd+用户名:创建用户

14.Passwd:设置用户密码(修改当前用户密码)

15.Ctrl+C:终止上一条命令

16.su -用户名:切换用户

17.man+命令名:显示帮助信息(等同于 命令+--help)

18.pwd:显示当前路径

19.cd ..:切换到上级目录

20.TAB:如果忘记命令,可以补全你输入的命令

21.ls -a:显示隐藏文件(.开头的隐藏文件)

22.cd ~:直接回到当前用户的家目录

23.cd -:返回上一次所在的目录

24.cp 文件所在目录+空格+目标文件目录:把文件拷贝到目标路径

25.cp 文件所在目录+空格+目标文件目录+new_name:拷贝到目标路径后进行重命名

26.alias +自定义字符='命令':自定义字符就是命令的别名

27.cp -r:文件目录递归拷贝

28.mv 当前目录 目标目录 :移动文件从当前目录移动到目标目录

29.mv 当前文件名 目标文件名:改名

30.mkdir:创建文件或目录

31.mkdir -p:递归创建文件目录

32.touch:创建文本文档(前面可以加目录)

33.rm -f:直接删除(不提示询问信息)

34.rm -rf:删库跑路不解释(谨慎使用)

35.cat+文件路径:查看命令,直接显示文件内容

36.head+文件路径:显示目标文件前几行(默认文件前十行)

37.tail+文件路径:显示目标文件后几行(默认后十行)

38.tail -f:动态查看文件内容(可以用来查看日志)

39.more:百分比查看文件(Ebter向下翻页)

40.less:查看文件内容(上下键进行翻页)

41.id+用户名:查看用户信息

42.useradd -u(u id) -g(群组) -d(家目录) -c(备注信息) -s(Shell):新建一个用户 指定用户UID 所属群组 家目录 备注信息 用户所用的shell

例如:useradd -u -1000 -g mading -d /home/sb -c bigsb -s /bin/bush chenlanlan

43.userdel -r +用户名:删除用户

44.usermod -u(u id) -g(g id) -G(组名 用户名) -d(家目录) -c(备注信息) -s(Shell):修改用户信息

需要注意的是:修改用户而家目录 -d 时,需要makdir新建一个家目录,同时把之前家目录里面的配置信息拷贝到当前目录下

例如:usermod -d /home/sb chenlanlan 
     mkdir /home/sb
     cp -r /home/chenlanlan/.[!.]* /home/sb/

45.usermod -L+用户名:锁定用户

46.usermod -U+用户名:解锁用户

47.chmod u=rwx a.txt:修改属主的文件权限为可读可写可执行

48.Esc+shift:+wq :对写入内容进行保存

49../a.txt:执行a.txt文件

50.sh 文件路径:执行文件

51.usermod -aG mading chenlanlan:把用户chenlanlan加入到mading这个组中

52.ll -d +目录:查看目录权限信息

53.chown 属主. 属组 (文件或目录):修改 (文件或目录) 文件的属主,属组。

54.chown 属主 (文件或目录):修改(文件或目录)的属主

55.chown .属组(文件或目录):修改(文件或目录的属组)

56.chown -R 属主.属组 +目录:递归修改目录下的所有目录和文件的属主,属组。

57.A > B: A内容覆盖写入到B中

58.echo '命令':回显命令

59.A >> B: A追加到B中

60.wc -l +文件:统计文件内容行数

61.A | B:管道符号,A的执行结果交给B继续执行

62.tar -cvf test.tar a.txt b.txt c.txt:把a.txt,b.txt,c.txt 打包到test.tar中

63.tar -tf test.tar:查看test.tar中的文件

64.tar xvf test.tar —C /路径:解包到目标路径

65.gzip +文件:压缩为.gz结尾的文件

66.gunzip +压缩包:解压.gz结尾文件

67.bzip2 +文件:压缩为.bz2结尾文件

68.bunzip2 +文件:解压.bz2结尾文件

69.tar czvf +压缩包名.tar.gz+被归档压缩的文件名:归档并压缩

70.tar czvf +压缩包名.tar.gz+目录:归档并压缩目录

71.history:查看历史命令

72.touch /test1/{a.z}.txt:在test1目录下创建a-z.txt文件

73.ls *.txt:查看所有txt结尾的文件

74.cat /etc/redhat-relase:查看操作系统的版本

75.uname -r:查看内核版本

76.uname -a:内核版本的详细信息

77.runlevel:查看上一次和这一次的启动级别

78.grub-md5-crypt:生成grub密文密码

79.echo 'scale'=2;1906280/1024:保留两位小数,回显运算1906280除以1024的结果

80.free -h:以G单位为来查看内存

81.free -m:以M为单位来查看内存

82.firefox &:在后台打开浏览器

83.jobs:查看在后台运行的程序

84.fg %1(工作号):把后台调到全台运行

85.firefox:打开浏览器,返回[工作号]和PID

86.kill -9 PID:强制回收杀死PID对应的进程

87.kill -9 %工作号:强制回收杀死工作号对应的进程

88.fg %1(工作号):把后台程序调到前台运行

89.bg %1:后台暂停的程序直接在后台运行

90.pstree less:查看进程数(树形结构)并用上下键进行查看

91.pkill -9 +进程名:强制回收杀死进程名相对应的进程

92.fdisk -l /dev/sdb :查看第二块硬盘的分区信息

93.fdisk /dev/sdb:进行分区(W保存分区)

94.partprobe:更新分区表

95.mkfs.ext4 /dev/sdb1:格式化分区为ext4文件系统

96.mount /dev/sdb1 /目录/:把分区sdb1挂载到目录下

97.df:查看挂载信息

98.umount -l /目录/:强制卸载分区

99.du -sh /目录/:统计目录下的文件大小

100.df -i:查看inodes(元数据)信息

101.ln -s /原路径/ /目标路径/:软链接

102.ifconfig:查看IP地址信息

103.ifconfig 网卡 IP地址 netmask:临时配置网卡IP地址

104.service network restart:重启网络服务

105.route -n:查看网关信息

106.cat /etc/resolv.conf:查看DNS信息

107.arping -I 网卡 网关:查看一个子网内有没有IP地址冲突

108.ifconfig 网卡 up:开启网卡

109.ifconfig 网卡down:关闭网卡

110.ifdown 网卡:关闭网络适配卡

111.ifup 网卡:激活网卡配置文件

112.ifconfig :设定网络参数使用的命令

绝对路径:必须 / 开头从系统的根目录开始遍历每一个目录直到要查找的对象。是文件位置的完整路径,所以无论什么情况下绝对路径总能找到对应的文件。
相对路径:不是 / 开头的相对于当前路径开始遍历每一个目录要查找的对象。

Linux系统的文件结构:树形结构(只有一棵树)树根:/ 
1.bin目录:用来存放常用的可执行文件(二进制)
2.sbin目录:用来存放系统的可执行文件
3.dev目录:设备文件目录
4.etc目录:配置文件目录

2018/8/9 21:32:52

(2) 在root用户下的 /etc/passwd 下的文件目录介绍

mHvfPu6.png

root :x :0:0:root:/bin/bush
用户名:密码:user id:group id:用户描述信息:root:/用户的家目录/bush 可以登陆操作系统 (如果是/sbin/nologin 不可以登陆操作系统)
(3)每新建一个用户就涉及以下几个文件:

4H0lxPY.png

(4)ls -l 查看长信息

l7wc7i2.png

权限信息+硬链接数+属主+属组+文件大小+创建时间+文件名

权限信息有10位:

1位.文件类型(-:普通文件 d:目录 l:软连接 (ln -s anaconda-ks.cfg test :test是anaconda文件的软连接) b:block设备文件) p:管道文件)
2-4.属主的权限u(读r,写w,执行x)
5-7位.属组的权限g(读r,写w,执行x)
8-10位.其他用户o(读r,写w,执行x)

对目录的权限:

1.r(可以用4表示):可以ls该目录下得文件名,子目录名
2.w(可以用2表示):可以在该目录下创建,删除,重命名
3.x(可以用1表示):可以cd到该目录下
例如:将/tmp/a.txt 权限修改为 -r-x--xrwx
输入:chmod 517 /tmp/a.txt

2018/8/13 17:30:23

(5)vim编辑器的三种模式:
归档:就是将许多文件或目录打包成一个文件。归档的目的:是为了方便备份以及文件的还原。  
压缩:家弄一个大的文件通过一些算法编程一个小文件。压缩的目的是:缩小文件大小,节省次磁盘空间,其次在网络传输中也会减少网络带宽

命令行模式:所有的输入被解释为vim命令,可以执行,修改,复制,移动,粘贴,和删除等命令。也可以搜索字符串和退出vim操作等。
例如:
1.dd:删除光标所在的一行
2.u:撤销上一步操作
3.ndd:n删除光标以下的n行
4.yy:复制光标所在的一行
5.nyy:复制光标以下的n行(包括当前行)
6.p(小写):将已经复制的数据粘贴在光标下一行进行黏贴
7.P(大写):将已经复制的数据粘贴在光标下一行进行黏贴
8.Ctrl+R:重复上一步操作
9.¥:跳转到行尾
10.0:跳转到行首
11.Ctrl+a:跳转到命令的首部
12.Ctrl+e:跳转到命令尾部
13.G:跳转到文本的结尾
14.gg:跳转到文本的开头
15.nG:跳转到文本的第n行
16.H:跳转到屏幕最上方
17.M:跳转到屏幕中央
18.L:跳转到屏幕结尾    

编辑模式(a,i,o都可进入编辑模式):可以往一个文件中输入正文,所有的输入都被解释为输入的正文,使用Esc命令返回命令行模式

扩展模式(:):
例如:
1.(:w):保存文本内容
2.(:q):退出vim编辑器
3.(:wq):保存并且退出
4.set nu:生成一列行号

2018/8/17 15:52:49

(6) Linux系统的引导顺序
引导顺序:BIOS->MBR->boot loader->kernel

1.计算机从主板的BIOS读取其中所存储的程序,这一程序通常知道一些主板上的硬件设备(硬盘,网络接口,键盘,串口,并口)。现在大多数的BIOS允许你从软盘,光盘,硬盘中选一个作为启动盘来启动计算机。

2.计算机从你所选的的存储设备中读取开始的512bytes,这512bytes(一个扇区,前446是引导信息,后64位是分区信息,后两位是结束标志位)叫做主引导记录MBR(master boot record)。MBR会告诉计算机从哪一个分区来装载引导加载程序(boot loader)。Boot loader存储有操作系统的相关信息,比如,操作系统名称,操作系统内核(kernel)所在的位置等。常用的boot loader有GRUB和LILO。

3.随后,boot loader会帮助我们加载kernel。内核实际上是一个用来操作计算机的程序,主要是管理计算机的硬件资源,充当软件和硬件的接口,操作系统的任何操作都要通过内核传达给硬件,windows和Linux各有各自的内核。狭义上的操作系统就是指内核。广义上的操作系统就是包括内核和内核以上的各种应用。

4.Ubuntu,Red Hat,都是基于相同的内核,囊括了不同的应用和界面构成一个更加完整的操作系统版本。

5.如果我们启动的是一个Linux kernel。首先kernel会预留自己的运行空间,然后通过驱动检测计算机硬件。之后会启动一个init进程,它是Linux系统的1号进程(Linux没有0号进程)

init 0 1 2 3 4 5 6

init 0:关机
init 1:单用户
init 2:多用户
init 3:命令行模式
init 4:无使用级别
init 5:图形界面 
init 6:重启
(7)CentOS7设置grub密码和CentOS6设置grub密码
CentOS7
查看grub登录用户名:cat /etc/grub.d/01_users
设置grub密码:grub setpassword
确认密码:cat /boot/grub2/user.cfg

CentOS6
grub.conf配置文件在/boot/grub/grub.conf或/etc/grub.conf
执行命令:password-md5-crypt 
输入两次密码
复制生成的明文加密密码
编辑grub.conf配置文件,在title行之前添加一行
password--md5 生成的明文密码
保存退出,重启即可
(8) BIOS加密
开机F12进入BIOS中的Security选项
Set Supervisor Password 回车即可输入密码F10保存退出

Q:为什么要给Grub设置密码?
A:如果Grub不加密,那么任意用户可以通过Grub启动屏显时进入单用户模式修改ROOT用户的密码,更改系统文件。

Q:为什么要给BIOS设置密码?
A:如果BIOS不设置密码,那么任意用户可以通过系统启动前进入BIOS的光盘救援模式,获得超级管理员权限删除Grub密码,更改系统文件。

Q:给BIOS和Grub都进行加密,系统就安全了吗?
A:并不是,可以取下主板上BIOS的电池,放电过一段时间再安装后BIOS程序会自动复位,重启又可以进入BIOS。
(9)系统监视和进程控制工具(TOP和free)

qL4efNY.png
'

top - 14:31:07 up 49 min,  2 users,  load average: 0.62, 0.21, 0.13
Tasks: 285 total,   4 running, 281 sleeping,   0 stopped,   0 zombie
%Cpu(s): 21.0 us,  3.1 sy,  0.0 ni, 75.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1009276 total,   144212 free,   523204 used,   341860 buff/cache
KiB Swap:  2097148 total,  2091812 free,     5336 used.   303904 avail Mem 

top - 当前时间 运行时长,2用户,CPU的平均负载:
运行任务数量:285个,4个终端运行的281个睡眠,0个停止,0个僵尸进程
CPU占用百分比:用户进程占百分比,系统进程占百分比,对nice调整占用的百分比,剩余CPU百分比,等待IO完成小号的百分比,硬件中断占CPU百分比,软件中断占CPU百分比,CPU被偷走的百分比
内存:总内存空间,剩余内存空间,已用内存空间,缓冲区(解决内存和硬盘的速度差)/高速缓存(缓解CPU和内存的速度差) 
交换分区:总空间,剩余空间,已用空间,有效swap空间大小

PID   USER    PR  NI             VIRT     RES     SHR         S      %CPU          %MEM            TIME      COMMAND    
进程号 用户 控制用户优先级(PR和NI) 虚拟内存 物理内存 共享内存 当前进程状态 对CPU占用百分比 对内存占用百分比 进程运行时间 进程名          

XIuUGxs.png

total:  总内存大小
used:   内存分配出去的内存(buffer和cach)大小
free:   剩余内存
shared: 共享内存
buffers:剩余buffer大小(分配的buffer减去使用的buffer)
cached: 剩余cached大小(分配得cached减去使用的cached)
(10)系统中进程监控--ps

lk2PyZM.png

USER   PID    %CPU           %MEM            VSZ      RSS     TTY                  STAT    START     COMMAND
用户   进程号  CPU占用的百分比  内存占用的百分比  虚拟内存  物理内存 运行终端(?后台运行)  当前状态  开始时间  产生进程的命令

ps aux | head -3:显示前三行内容
ps aux | grep 'init':过滤显示包含'init'的进程
ps aux | grep 'init'|grep -v 'grep':在过滤显示包含'init'的进程中再反向过滤掉包含'grep'的内容,再显示出来。
ps aux | grep 'bash'|grep -v 'grep'|:查找到当前终端进程的PID后
kill -9 PID:强制回收杀死PID对应的进程
kill -9 %工作号:强制回收杀死工作号对应的进程
firefox &:在后台打开浏览器
jobs:查看在后台运行的程序
fg %1(工作号):把后台程序调到前台运行
bg %1:后台暂停的程序直接在后台运行
pstree less:查看进程数并用上下键进行查看
pkill -9 +进程名:强制回收杀死进程名相对应的进程

2018/8/20 17:37:30

(11)磁盘分区

1192907-20180824173543470-493468254.png

fdisk -l /dev/sdb :查看第二块硬盘的分区信息
fdisk /dev/sdb:进行分区(W保存分区)
partprobe:更新分区表
mkfs.ext4 /dev/sdb1:格式化分区为ext4文件系统
mount /dev/sdb1 /目录/:把分区sdb1挂载到目录下
umount -l /目录/:强制卸载分区
df:查看挂载信息
磁盘分区最多只能有4个主分区,因为MBR中512B中446B存放引导信息,后64B存放4个主分区信息。如果想要继续创建多个分区就只能创建三个主分区,一个扩展分区去记录之后的分区信息。
操作系统处理数据是按块(1 block = 8*512字节)
存储分为三大类存储:块存储,文件存储,对象存储

·块存储:磁盘阵列,硬盘。
主要是将裸磁盘空间映射给主机使用,比如:磁盘阵列有三块硬盘(每个1T),逻辑划分出三个硬盘(每个1T),这三个逻辑硬盘已经与之前3个物理硬盘意义完全不同了。比如第一个逻辑盘里面可能第一个500M来自1号物理硬盘,第二个200M来自2号物理硬盘,第三个300M来自3号硬盘。接着块存储会采用映射的方式将这几个逻辑盘映射给主机,主机上的操作系统会识别到有3块硬盘,但是操作系统无法区分是逻辑盘还是物理盘。操作系统还需要对挂载的裸硬盘进行分区,格式化后才能使用,和平常内置硬盘的方式完全无异。
·优点:
1,应为通过Raid和LVM手段,对数据提供了保护。
2,和一把多块廉价的眼影盘组合起来,成为了一个大容量的逻辑盘对外提供服务,提高了容量。
3.写入数据的时候,由于是多块硬盘组合出来的逻辑盘,所以几块磁盘可以并行写入,提升了写入效率。
4.块存储大多采用SAN构架组网,传输效率以及封装协议的原因,是的传输速度和写入速率得到提升。
·缺点:
1.采用SAN架构组网时,需要额外为主机购买光纤通道卡,还要买光纤交换机,成本提高。
2.主机之间的数据无法共享,在服务器不做集群的情况下,块存储裸盘映射给主机,在格式化使用后,对于主机来说相当于本地盘,那么主机A的本地盘根本不能给主机B使用,无法共享数据。
3.不利于不同操作系统主机间数据共享:因为操作系统使用不同文件系统,格式化完成以后,不同文件系统间数据是共享不了的。例如一台装了WIN7/XP,文件系统是FAT32/NTFS,而Linux是EXT4是无法识别NTFS的文件系统的。

·文件存储:FTP,NFS服务器。
为了克服块存储的文件无法共享的问题,所以有了文件存储。文件存储也有软硬一体化设备,但是其实普通拿一台服务器,只要装上合适的操作系统和软件,就可以假设FTP与NFS服务了,架上该类服务之后的服务器,就是文件存储的一种了。
主机A可以直接对文件存储进行文件的上传和下载,与块存储不同,主机A是不需要在对文件存储进行格式化(格式化:低级格式化又叫物理格式化:被用于指代对磁盘进行划分柱面,磁道,扇区的操作。高级格式化又叫逻辑格式化:根据用户选定的文件系统,在磁盘特定区域写入特定数据达到初始化磁盘或磁盘分区,清除磁盘中原来的文件的操作,包括对主引导记录的分区表区域的重写,根据用户选定的文件系统,在分区中划分出一片用来存放文件分配表,目录表等用于文件管理的磁盘空间,以便用户使用该分区管理文件。硬盘需要先进行低级格式化后再进行高级格式化),因为文件管理功能已经有文件存储自己搞定了。
·优点:
1.造价低:普通机器就可以了,在配备普通的以太网就可以,不需要专业的SAN网络,造价低。
2.方便文件共享:例如主机A(WIN10,NTFS),主机B(Linux,EXT4),原本相互之间进行文件拷贝是不行的。但是加一个主机C(NFS服务器),然后就可以把文件从A拷贝到C再拷贝到B。
缺点:读写速率低,传输速率慢,以太网上传和下载速度都慢,另外所有读写都要1台服务器里的硬盘来承担,相比磁盘阵列动不动就几十块硬盘同时读写,速率慢了很多。

·对象存储:内置大容量硬盘的分布式服务器
对象存储最常用的方案就是多台服务器内置大容量硬盘,再装上对象存储软件,然后需要额外几台服务器作为管理节点,安装对象存储管理软件。管理节点可以管理其他服务器对外提供读写访问功能。像FAT32这种文件系统是直接把一份文件的数据和元数据一起存储的,先按照文件系统的最小块大小打散成若干个小块,再写入硬盘中,每一个小块会告诉你下一个块的地址然后一直这样读取下去(让我联想到了数据结构里面的顺序存储,每个数据节点都包含后继指针)。但是这种方式读取速率很慢,因为只有当你读取到第一个下筷才知道下一个块地址。而对象存储把元数据独立出来,控制节点叫元数据服务器(服务器和对象存储管理软件),主要负责存储对象的属性(对象数据分散存放的拿几台服务器中的信息),负责存储数据的分布式服务器叫OSD。用户访问时,先访问元数据服务器,然后再直接访问对应OSD读取数据,由于是多台服务器同时对外传输,所以传输速度加快。对象存储软件有专门的文件系统所以OSD对外有相当于文件服务器不存在共享方面的问题了。
·对象存储是为了克服块存储与文件存储各自的缺点,发扬各自的优点。对象存储含有块存储读写快的优点,又含有文件存储利于共享的特点。

2018/8/24 17:33:20

(12)文件系统
super block:控制inode编号的使用
inode block:
    inode number:权限,属主,属组,时间,文件名,指针
    directory block:文件名和对应的inode编号
    data block: 存放数据
查看一个文件的寻址顺序(/ a.txt):现根据/(根)的inode编号找到inode block块中的信息进行权限核对,如果有权限则读到指针,指针指向directory block进行检对应文件(a.txt)的inode编号,根据文件(a.txt)的inode编号在inode block中找到对应inode编号进行权限核对,如果有权限则读到指针,指针指向data block,读取相应数据。

查看一个文件的寻址过程(/ a.txt):根inode->inode block (权限,指针)->directory block (找a.txt inode)->inode block (权限,指针)->data block(读数据)
(13) 文件删除和恢复
删除文件(a.txt):实际上是在super block中把a.txt的inode编号标记为free,还会在directory block中把a.txt和对应inode编号的映射关系删除掉,并且把a.txt inode编号对应的data block标记为free。但是实际上data block中的数据没有清除掉。

恢复文件:就是把删除文件时被标记为free状态的inode编号重新改成活跃状态,并且在directory block中把a.txt和inode编号重新建立映射关系。

完全删除的办法:完全删除数据无法恢复,只能是进行覆盖的方式,因为磁盘是物理介质。

数据恢复:不可能保证百分之百的恢复,因为inode编号分配是根据文件系统的算法进行分配的,不可控。
(14)软链接和硬链接
软链接:相当于windows的快捷方式
ln -s /原路径/ /目标路径/
特点:原文件的inode编号和目标文件inode编号不同。目标文件修改,原文件也修改,删除目标文件,源文件不变。删除原文件,目标文件失效。
原理:在文件系统中,目标路径的inode编号->原文件的inode编号->data block
软连接可以跨分区:因为软连接是指向文件名的。所以原路径的inode编号和目标路径的inode编号不同。

硬链接:
ln /原路径/ /目标路径、
特点:原文件的inode编号和目标文件inode编号相同。目标文件修改,原文件也修改,删除目标文件,源文件不变。删除原文件,目标文件不变。
原理:在文件系统中,目标路径inode编号->data block。原路径的inode编号->data block
硬链接不可以跨分区:硬链接是指向inode编号的。所以每一个分区都有独立的文件系统,相同的inode编号,在两个分区指向的data block不同。例如:A分区的inode编号88和B分区的inode编号88,指向的是两个不同data block。
(15) Linux网络管理
ifconfig:查看IP地址信息
ifconfig 网卡 IP地址 netmask:临时配置网卡IP地址
service network restart:重启网络服务
service network status:查看网络服务状态
chkconfig --list:查看服务在不同启动级别下的状态 
chkconfig --level 234 NetworkManager off:在启动2,3,4启动级别
route -n:查看网关信息
cat /etc/resolv.conf:查看DNS信息
arping -I 网卡 网关:查看一个子网内有没有IP地址冲突
ifconfig 网卡 up:开启网卡
ifconfig 网卡down:关闭网卡
ifdown 网卡:关闭网络适配卡
ifup 网卡:激活网卡配置文件
ifconfig :设定网络参数使用的命令
        
永久配置网卡IP地址:
vim /etc/sysconfig/network-scripts/ifcfg-网卡  
添加修改一下配置:
ONBOOT=yes
BOOTPROTO=static  
IPADDR=192.168.2.50
NETMASK=255.255.255.0
GATEWAY:192.168.11.1
DNS=8.8.8.8
然后停止网卡的守护进程:service NetworkManager stop
重启网络服务即可
(16)同一网络下和不同网络下不同主机之间通信
同一网络下主机A与主机B进行通信:
首先A需要知道B的IP地址,然后将B的IP地址和本地的掩码进行与运算,得到结果是在同一网络下。IP只是一个逻辑地址,发送数据需要MAC地址,所以A会在子网中先发一个ARP广播进行询问。B收到信息解析后发现和本地IP地址相同,发出一个单播相应,将自己的MAC地址发送给A。

不同网络下主机A和主机B进行通信:
首先,A需要知道B的IP地址,把本地IP地址和B的IP地址进行与运算了,发现与自己不在同一个网络中。所以A会先发一个ARP广播进行询问,子网内没有应答,然后经过路由通过路由表进行接力进行分组转发,直到找到目的IP主机为止,B主机再把自己的MAC发送给A。A接收到B发送的MAC地址后,把要发送的信息进行封装,最后以比特流发送给B,B得到消息后解封。
(17)软件包介绍RPM(红帽软件包管理器)
RPM文件名分为五部分:
1.name:名称
2.version:版本号
3.release:版本发布次数(奇数是测试版本,偶数是稳定版本)
4.architectures:适用平台
5.文件扩展名

常用RPM命令:
rpm -ivh:安装显示安装进度(install,verbose,hash)
rpm-Uvh:升级软件包--Update
rpm-qpl:列出RPM软件包内的文件信息(Query Package list)
rpm-qpi:列出RPM软件包的描述信息(Query Package install package(s))
rpm-qf:查找指定文件属于哪个RPM软件包(Query File)
rpm-Va:校验所有的RPM软件包,查找丢失的文件(View Lost)
rpm -qa | grep'dhcp':查询所有含有'dhcp'的软件包是否安装
rpm -q dhcp:查询是否安装了dhcp的软件包
rpm -e :卸载软件包
rpm -e dhcp-common --noodeps:忽略依赖性卸载dhcp软件包 
rpm -e dhcp-common --force:忽略文件冲突卸载
iptables -F:清空防火墙规则
service iptables stop:关闭防火墙

2018/8/27 20:14:20


版权声明:本文为博主原创文章,欢迎转载,但必须标识出处,且在文章明显位置给出原文链接

转载于:https://www.cnblogs.com/martin666/p/9451888.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值