Linux系统基础 03 IP地址虚拟网络、Linux软件包管理、ssh服务、apache服务和samba服务的简单搭建

文章目录

一、IP地址虚拟网络

1、IP地址格式是点分十进制,例:172.16.45.10。即4段8位二进制

2、IP地址分为网络位和主机位。网络位确定子网,主机位确定子网中的哪个主机。

3、子网掩码,例:172.16.45.10/16 ,或255.255.0.0 ,即前16个二进制为主机位,全是1;后16个二进制位为主机位,全是0。子网掩码与IP地址按位与运算,计算出网络地址,为:172.16.0.0。主机地址为:172.16.45.10。

4、IP地址分为4中基类:

5、网络地址:主机位全为0,即网络中的第一个地址。

6、广播地址:主机位全为1,即网络中的最后一个地址。

7、全网广播地址:32位全为1

8、本地回环地址:127开头的,例:127.0.0.1

9、私有地址:只能在局域网中使用:

10.0.0.0~10.255.255.255,表示A类私有地址

172.16.0.0~172.31.255.255,表示B类私有地址

192.168.0.0~192.168.255.255,表示C类私有地址

10、0.0.0.0:不是真正意义的IP地址,它表示的是所有不清楚主机和目的的网络。

11、子网划分:通过借用IP地址的若干主机位来充当子网地址,从而将原来的网络划分成若干个彼此隔离的子网。

12、ifconfig [网卡名]:查看当前被激活的所有网卡信息 [或某个网卡的信息]

13、临时配网卡地址,例:ifconfig eth0 192.168.10.100/24

14、service network restart:重启网络服务

15、守护进程:运行在后台,提供服务的服务。

16、永久配置网卡地址:

①vim /etc/sysconfig/network-scripts/ifcfg-网卡名

②修改:ONBOOT=yes

BOOTPROTO=static

IPADDR=ip地址

NETMASK=子网掩码

GATEWAY=网关

DNS1=8.8.8.8

③重启网络服务

④如果未配置成功,可将网络的守护进程关掉,再重启网络服务。

&emsp查看:service NetworkManager status

&emsp关闭:service NetworkManager stop

17、chkconfig --list:查看系统服务在各个运行级别的运行情况

18、chkconfig --level 2345 network off:关掉init2~5的network服务。

或者:chkconfig network off。

19、chkconfig network on:开启init2~5的network服务

20、route -n:查看路由表(网关信息)

21、cat /etc/resolv.conf:查看DNS

22、IP获取方式:

DHCP:动态分配

static:静态分配

none:也是静态,不常用

23、ping -c n IP地址:ping该IP地址n次

24、arping -I 网卡名 IP地址:可以用来检验子网内是否有IP冲突。如果冲突,会有多个MAC地址返回。

25、UUID:网卡在系统层面的身份证

26、MAC地址:网卡在物理层面的身份证

27、ifconfig 网卡名 up或down:启用或关闭该网卡

28、①ifdown 网卡名 ②ifup 网卡名:让网卡加载配置文件,相当于service network restart

29、route add default gw 网关ip地址:临时配置网关(默认网络)

30、iptables -F:清空防火墙

31、systemctl stop iptables:关闭防火墙

32、本地DNS文件:/etc/hosts

解析域名时,先找本地DNS文件,再找/etc/resove.conf中IP地址所对应的DNS服务器

33、hostname:查看主机名

34、临时修改主机名:hostname 主机名

35、永久修改主机名:hostnamectl --static set-hostname 主机名

二、Linux软件包管理

1、软件包主要有两种:

①例,nginx.tar.gz:这是源码包,需要编译安装

②rpm包:二进制形式,不需要编译,直接安装

2、软件包偶数版本是稳定版本,奇数版本是测试版本。

1、rpm包管理器

①rpm -ivh 软件包1 [软件包2...] :安装

②rpm -qa :查看当前所有安装的软件包

③rpm -q 软件包:查询一个软件的安装情况

④rpm -e 软件名(不用谢rpm扩展名):卸载软件

⑤rpm -ivh 软件包 --force:强制安装

⑥rpm -e 软件名 --nodeps:忽略依赖关系,强制删除

⑦rpm -ivh URL::网络安装

⑧wget URL:只下载软件包,不安装

⑨rpm -ql 软件:查询软件安装位置

⑩rpm -qi 软件:查询安装的软件详细信息

2、yum包管理器

①rpm包管理器无法自动处理依赖关系,但yum可以。

②yum [-y] install 软件包(不用写路径):安装软件包 [安装过程中不用写y]

③yum的源配置文件在/etc/yum.repos.d中的.repo文件。示例,local.repo文件:

[local]

name=localyum

baseurl=file:///test

enabled=1

gpgcheck=0

④yum下载文件的流程:去yum的源配置文件中找baseurl对应的源目录→找到repodata文件(记录了软件包的依赖关系)→找到所以需要安装的软件包进行安装。

⑤自定义yum源流程,例:

a、安装createrepo

b、mkdir /test

c、cp 软件包 /test

d、createrepo /test:生成该目录先软件包对应的依赖关系文件repodata

e、在/etc/yum.repos.d中建立一个文件,比如local.repo文件,在其中写入baseurl=file:///test

⑥yum源文件不仅可以是本地,也可以是网络。例,在源配置文件中需写入repodata文件所在目录:baseurl=http://mirror.centos.org/centos-7/7/extras/x86_64/

⑦yum的依赖关系是有缓存的。

a、yum clean all:清yum缓存

b、yum makecache:建立yum缓存

⑧yum erase 软件名:卸载软件

⑨下载软件包安装后,软件包不删除,需修改文件/etc/yum.conf:

cachedir=自己设置存放软件包的目录

keepcache=1

⑩查看软件包组列表:yum grouplist

⑪安装软件包组:yum groupinstall "软件包组名" -y

3、源码安装

①安装流程,例:

a、准备:yum groupinstall "Development Tools" -y

b、解包:tar -xvf Python-3.5.2.tgz

c、执行configure脚本,添加编译参数,例如--prefix指定安装路径:

cd Python-3.5.2

.    ./configure --prefix=/usr/local/python3.5

d、编译:make

e、安装:make install

②输入Linux命令,会去环境变量PATH中去找路径下的执行文件。如果有该执行文件,输入命令的时候则不用输入路径。例如:可直接输入ls,而不用输入/usr/bin/ls。

③查询命令对应的执行文件的绝对路径:which 命令

④查看环境变量PATH:echo $PATH

⑤临时添加PATH的执行文件路径,例:PATH=复制原有路径:在后面追加的路径

⑥永久添加PATH路径,例:在配置文件/etc/profile,在末尾添加如下:

export PATH=$PATH:/usr/local/python3.9/bin

然后source /etc/profile生效。

三、ssh服务

1。提供远程连接服务

2、客户端软件:openssh-clients

3、服务端软件:openssh-server

4、查看服务端软件启动情况:service sshd status

5、用xshell远程连接服务器:ssh 服务端IP [端口号] (默认端口22,可省略)

6、配置文件:/etc/ssh/sshd_config

7、ssh连接慢的解决方法:在配置文件/etc/ssh/sshd_config中,将UseDNS改为no

8、查看防火墙规则:iptables -L

测试的时候,最好把防火墙关了。

四、apache服务

1、提供网页服务。软件包为:httpd

2、部署步骤:

①准备工作:

关闭防火墙:systemctl stop iptables

关闭selinux:在配置文件/etc/sysconfig/selinux中,修改为SELINUX=disabled

②下载软件包:yum install httpd -y

③根据需要修改配置文件/etc/httpd/conf/httpd.conf。例如监听端口Listen,文档根目录:DocumentRoot

④重启服务:systemctl restart httpd

⑤进行测试:例如,在浏览器输入http://192.168.1.2:80/a.txt

其中文件a.txt为文档根目录下的文件

启用默认80端口,可以直接写http://192.168.1.2/a.txt

不写指定目录文件,例如写http://192.168.1.2/ 则直接访问默认文件index.html

五、samba服务

1、提供网盘服务。可以搭建在Linux系统中,为windows客户提供网盘服务。软件包为:samba。服务名为:smb

2、部署步骤基本同上。

3、可以根据需要修改配置文件:/etc/samba/smb.conf。例如不需要用户密码登录,则在[global]中写

security = user

map to guest = Bad User

添加一个共享文件夹:

[company]

comment = share file

path = /company1

public = yes

writable = yes

4、注意测试的时候检查防火墙、selinux是否关闭,samba服务是否开启,共享目录和文件的权限等。

5、windows系统用户连接共享文件夹:右击计算机→映射网络驱动器→输入\\server的IP\共享文件夹的ID号

6、需要用户密码登录

①在[global]中写

security = user

②先在系统中创建一个用户,例如ccc

③设置samba的密码:smbpasswd -a ccc

④重启服务:systemctl restart smb

⑤为了安全可以设置usermod -s /sbin/nologin ccc,使该用户不能登录系统,只登录samba服务。

⑥windows端用户登录samba服务:右击计算机→映射网络驱动器→输入\\server的IP\用户名→勾选下图,然后点完成,再输入相应的用户名和密码。

相关推荐
可涵不会debug15 分钟前
【Linux】信号知识三把斧——信号的产生、保存和处理
linux·运维·信号
jyan_敬言17 分钟前
【Linux】Linux命令与操作详解(一)文件管理(文件命令)、用户与用户组管理(创建、删除用户/组)
linux·运维·服务器·c语言·开发语言·汇编·c++
车载诊断技术1 小时前
什么是汽车中的SDK?
网络·架构·汽车·soa·电子电器架构
一颗星星辰1 小时前
Python | 第九章 | 排序和查找
服务器·网络·python
unix2linux1 小时前
Parade Series - SHA256
linux·python·mysql·shell
ZachOn1y1 小时前
计算机网络:计算机网络概述:网络、互联网与因特网的区别
网络·计算机网络·知识点汇总·考研必备
学思之道1 小时前
给Linux操作系统命令取个别名
linux·运维·经验分享·学习方法
GOTXX2 小时前
应用层协议HTTP
linux·网络·网络协议·计算机网络·http·fiddler
dong_beijing2 小时前
GO语言工程构建示例-mac和linux适用
linux·运维·服务器
小小工匠2 小时前
系统安全 - Linux /Docker 安全模型及实践
linux·安全·系统安全