Linux教程(大数据基础01)
文章目录
1. Linux介绍
linux是一个开源,免费的操作系统,稳定性、安全性、处理多并发已经得到到认可。
1.1 Linux和Unix的关系
Unix:只能在大型主机和服务器上跑
Linux适用于x86计算机
1.2 安装VM和Centos
Vm虚拟机是一个软件
Centos时一个虚拟的操作系统
vm安装步骤:
- 去BIOS里修改设置开启虚拟化设备支持(f2 f10)
- 安装虚拟机软件
虚拟机的网络连接的三种方式:
1.桥接模式:特点:一个网段的地址: 0~255(1 是网关地址 255是广播地址)
大家都在一个网段相互可以进行通信
缺点是:因为ip有限,可能造成ip冲突
2. Nat模式:网络地址转换模式
a. 好处是:就虚拟机不占用其他的ip所以不会ip冲突
b.缺点是:内网的其他人不能和虚拟机通讯
3. 仅主机模式:单独的一台电脑
进入虚拟机 双击界面
出虚拟机 ctrl+alt
安装好虚拟机后:
1.3 Linux的目录结构
1.3.1 基本介绍:
Linux的文件系统采用的是层级式的树状目录结构,再次结构中的最上层是根目录了,然后在此目录下子啊创建其他目录结构
在Linux的世界里一切皆文件
Linux 目录:
/dev 管理设备----网卡
/media 目录
- 总结一下:
1 .Linxu的目录有且只有一个根目录
2 .linux的各个目录存放的内容是规划好的,不能乱放文件
3 .Linux是以文件的形式管理我们的设备,一切皆为文件
4 .Linux的各个文件目录下存放什么内容,必须有一个认识
1.4 远程登陆
为什么需要远程登陆:
强烈推荐:
界面很骚 上传下载文件也巨简单
特别说明:如果希望安装好远程控制工具,需要一个前提,就是Linux启用了SSHD服务,该服务会监听22号端口
在虚拟机的控制台 setup进行设置
reboot:重启虚拟机命令
2. linux的实操篇
2.1 vi和vim的基本介绍
- 所有的Linux系统都会内建vi文本编辑器
Vim具有程序编辑的能力,可以看作是vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计,diamagnetic补完、编译及错误跳转等方便编程的功能特别丰富。
2.1.1 vi和vim的三种常见模式
- 正常模式:
以vim打开一个档案就直接进入一般模式了(这就是默认的模式),在这个模式中,你可以使用上下左右按钮进行移动光标,可以使用删除整行、删除字符 复制粘贴等处理文件数据 - 插入模式(编辑模式):
按下i l o a r等任何一个字母之后才可以进入编辑模式,一般采用i - 命令行模式:
在这个模式中,可以提供你相关的指令,完成读取、存盘、替换、离开vim显示行号等的动作贼是在此模式中达成的
从插入模式到命令行模式只需要Esc就ok
命令 | 含义 |
---|---|
wq! | w写入 q是退出 |
q | 退出(未修改的情况可直接进行) |
q! | 强制退出(不保存) |
- vi和vim 三种模式的相互转换图
vi 和vim的快捷键
按钮 | 含义 | 扩展 | 含义 |
---|---|---|---|
yy | 拷贝当前行 | 5yy | 拷贝当前行下五行,并粘贴 |
dd | 删除当前行 | 5dd | 删除当前行下五行 |
p | 粘贴 | 5p | 粘贴五次 |
/关键字回车 | 查找关键词 | ||
set nu | 开启行号 | set nonu | 取消行号 |
编辑/etc/profile文件 用快捷键到文档的 | 最末行【G】和最首行【gg】 | ||
u | 在一个文件中输入“hello”,然后又撤销这个动作 | ||
编辑 /etc/profile文件,将光标移动到第20行 | shift+g | 1.显示行号 2.输入20这个数 输入shift+g |
2.2 Linxu的开机重启和登陆注销
- 开机
shutdown -h now | 立刻进行关机 |
shutdown -h 1 | 一分钟以后进行关机 |
shutdown -r now | 现在重启计算机 |
halt | 关机 |
reboot | 重启计算机 |
sync | 把内存的数据同步到磁盘 |
不管是重新启动计算机还是关闭计算机 首先要运行sync命令,把内存中的数据写到磁盘中
- 用户登陆和注销
- 基本介绍
1) 登陆时尽量少使用root进行登陆,因为他是系统管理员,最大权限,避免操作失误,可以利用普通用户登录,登陆后再用su -‘用户名’命令来切换系统管理员身份。
2)在提示符下书屋logout即可注销用户 - 使用细节
logout注销指令在图形运行级别无效,在运行级别下有效
2.3 用户管理
Linux是一个多用户多任务的操作系统,任何一个要使用系统资源的,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统
Linux的用户至少需要属于一个组
2.3.1 添加用户
useradd 【选项】 用户名
创建用户的同时,如果没有确定其所在组,就会自主创建一个和用户名同名的组,然后将此用户的放入到这个组中。
cd 代表切换目录 change directory
- 给添加的用户设置密码
- 给指定的用户指定特定的目录
-d 目录 用户名
2.3.2 删除用户
userdel 用户名
基本语法:
userdel 用户名
-
应用案例:
·1. 删除用户tjk,但是要保留家目录
2.删除用户tjk 以及用户主目录
2.3.2 查找用户
如果此用户不存在,显示无此用户2.3.4 切换用户
如果切换过好几个用户,那么只需要即可切换回上一个用户
-
查看当前的用户:
2.3.4 用户组
类似于角色,系统可以对有共性的多个用户进行统一的管理
- 增加组
groupadd 组名
- 删除组
- 创建用户时直接将用户加入到固定的组中
实例:
- 将用户移动到固定的用户组中
将zjj移动到xuexiao这个组中
usermod -g 组名 用户名
2.3.5 用户和组的相关的文件
- /etc/passwd文件中:
2.4 实用指令
2.4.1 指定运行级别
切换到指定运行级别
init[0123456]
默认是五号
init 0 也是代表关机
面试题目:
如何找回root的密码???
思路:进入单用户模式,可以直接修改root用户的密码
- 进入此界面点击Enter键
- 输入e
- 下移输入e 然后再输入e
- 然后输入 0
- 输入空格+1 点击Enter
- 输入b (不需要输入密码即可进入系统)
- 然后输入 passwd 用户名
- 输入新的密码
- 再次输入新的密码即可
此种方式修改密码必须在此系统在的电脑上修改,不可以进行远程操控
2.4.2 帮助指令
当我们对某个指令不熟悉时,我们可以使用Linux提供的帮助指令来了解这个指令的使用方法
- 基本语法:
man【命令或配置文件】(功能描述,获得帮助信息) - 应用实例
案例:查看ls命令的帮助信息
以点(.)打头的文件都是隐藏文件
help 命令(功能描述:获得shell内置命令的帮助信息)
2.4.3 文件目录类
命令 | 含义 | 举例 |
---|---|---|
pwd | 显示当前工作目录的绝对路径 | pwd |
- ls 指令:
ls 选项 目录或是文件
常用选项:
-a :显示当前目录下所有的文件或目录,包括隐藏的(文件名 .的就是隐藏的)
-l: 以列表的方式显示信息
-h:显示文件的大小,以k,m,G进行显示
-al:两者的结合 - cd
基本语法:cd 【参数】 功能描述: 切换到指定目录
常用参数:绝对定位 / 开始和相对定位 从当前位置开始
cd ~或者 cd : 回到自己家的目录
cd… 回到此目录上级目录 - mkdir 指令
说明:
mkdir指令用于创建目录
基本语法:
mkdir 【选项】要创建的目录
常用选项:
-p:创建多级目录
- rmdir [目录]删除目录
rmdir 删除的是空目录,如果目录下有内容则无法删除
提示:如果需要删除非空目录,需要使用 rm -rf 目录 - touch 指令
创建一个空文件
touch 文件名.后缀
(可以创建多个文件)
- cp 指令: 【重要】
cp指令拷贝文件到指定目录
- 基本语法
cp 【选项】 source file - 常用选项: -r 递归复制整个文件夹
复制整个文件的目录
cp -r 需要复制的文件目录 目的文件目录
强制覆盖不提示的方法:: /cp
- rm指令
rm 指令移除文件或目录
- 基本语法
rm [选项] 要删除的文件或目录 - 常用选项
-r :递归删除整个文件夹
-f : 强制删除不提示 - 应用实例
案例1: 将 /home/bbb/tjk.txt 删除 rm /bbb/tjk.txt
案例2: 递归删除整个文件夹 /home/bbb rm –r /home/bbb - 使用细节
强制删除不提示的方法:带上 -f 参数即可
rm –rf /home/bbb
删除目录:
- mv指令:
mv 移动文件与目录或重命名
-
基本语法
mv oldNameFile newNameFile (功能描述:重命名)
mv /temp/movefile /targetFolder (功能描述:移动文件或目录) -
应用实例
案例1: 将 /home/aaa.txt 文件 重新命名为 pig.txt
案例2:将 /home/pig.txt 文件 移动到 /root 目录下 -
重命名:
-
移动文件
- cat指令
cat 查看文件内容只能以只读方式查看
- 基本语法
cat [选项] 要查看的文件 - 常用选项
-n :显示行号 - 应用实例
案例1: /ect/profile 文件内容,并显示行号 - 使用细节
cat 只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令 | more
cat xxx.txt | more (把cat xxx.txt 输出结果交给 more 处理)
因为cat 指令会直接将所有的文件内容打出来,因此为了方便读者,可配合使用more,进行分页展示
- more指令
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键,详见操作说明
- 基本语法
more 要查看的文件
操作说明 - 应用实例
案例: 采用more查看文件
- less指令
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
- 基本语法
less 要查看的文件
操作说明 - 应用实例
案例: 采用less查看一个
大文件文件
- “>“和”>>” 指令
- cal
echo 内容 文件目录 - echo指令
echo输出内容到控制台。
- 基本语法
echo [选项] [输出内容] - 应用实例
案例: 使用echo 指令输出环境变量
- head指令
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
- 基本语法
head 文件 (功能描述:查看文件头10行内容)
head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数) - 应用实例
案例: 查看/home/zjj.txt 的前面5行代码
- tail指令
tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10行内容。
- 基本语法
1) tail 文件 (功能描述:查看文件头10行内容)
2) tail -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)
3) tail -f 文件 (功能描述:实时追踪该文档的所有更新) - 应用实例
案例1: 查看/etc/profile 最后5行的代码
案例2: 实时监控date.log , 看看到文件有变化时,是否看到, 实时的追加日期
如果有变化,就会显示出变化的情况
- ln 指令 (link)
软链接也成为符号链接,类似于windows里的快捷方式,主要存放了链接其他文件的路径
- 基本语法
ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接) - 应用实例
- 案例1: 在/home 目录下创建一个软连接 linkToRoot,连接到 /root 目录
ln -s /root/ linkToRoot - 案例2: 删除软连接 linkToRoot
rm –rf linkToRoot [在看]
- 案例1: 在/home 目录下创建一个软连接 linkToRoot,连接到 /root 目录
- 细节说明
当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录。
删除软连接(切记:不要在软连接后面加/):
- history指令
查看已经执行过历史命令,也可以执行历史指令
- 基本语法
history (功能描述:查看已经执行过历史命令) - 应用实例
案例1: 显示所有的历史命令
案例2: 显示最近使用过的10个指令。
案例3: 执行历史编号为5的指令 !5
2.4.4 日期类型
- date指令-显示当前日期
-
基本语法
- date (功能描述:显示当前时间)
- date +%Y (功能描述:显示当前年份)
- date +%m (功能描述:显示当前月份)
- date +%d (功能描述:显示当前是哪一天)
- date “+%Y-%m-%d %H:%M:%S”(功能描述:显示年月日时分秒)
-
应用实例
案例1: 显示当前时间信息
案例2: 显示当前时间年月日
案例3: 显示当前时间年月日时分秒
- date指令-设置日期
- 基本语法
date -s 字符串时间 - 应用实例
案例1: 设置系统当前时间 , 比如设置成 2020-11-11 11:22:22
- cal指令
查看日历指令
- 基本语法
cal [选项] (功能描述:不加选项,显示本月日历) - 应用实例
案例1: 显示当前日历
案例2: 显示2020年日历
2.4.5 搜索查找类
- find指令
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
- 基本语法
find [搜索范围] [选项]
选项说明
- 应用实例
案例1: 按文件名:根据名称查找/home 目录下的hello.txt文件
find /home -name hello.txt
find 目录 -name 文件名
案例2:按拥有者:查找/opt目录下,用户名称为 nobody的文件 find /opt -user nobody
案例3:查找整个linux系统下大于10M的文件(+n 大于 -n小于 n等于)
find / -size +10M
注意:大于是+ 小于是- 等于就写数字即可
- locate指令
locate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。
- 基本语法
locate 搜索文件
特别说明
由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。 - 应用实例
案例1: 请使用locate 指令快速定位 hello.txt 文件所在目录
updatedb // 创建locate的数据库
locate hello.txt
- grep指令和 管道符号 |
grep 过滤查找 , 管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
- 基本语法
grep [选项] 查找内容 源文件 - 常用选项
- 应用实例
案例1: 请在 /etc/profile 文件中,查找 “if” 所在行,并且显示行号
grep –n if /etc/profile [在/etc/profile 中查找 if ,并显示行,区别大小写]
grep –ni if /etc/profile [在/etc/profile 中查找 if ,并显示行,不区别大小写]
2.4.6 解压缩和压缩指令
- gzip/gunzip 指令
gzip 用于压缩文件, gunzip 用于解压的
- 基本语法
gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz文件)
gunzip 文件.gz (功能描述:解压缩文件命令) - 应用实例
案例1: gzip压缩, 将 /home下的 hello.txt文件进行压缩
案例2: gunzip压缩, 将 /home下的 hello.txt.gz 文件进行解压缩
当及压缩完成后不会对原来的文件进行保留
- zip/unzip 指令
zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的
- 基本语法
zip [选项] XXX.zip 需要压缩的内容(功能描述:压缩文件和目录的命令)
unzip [选项] XXX.zip (功能描述:解压缩文件)
zip常用选项
-r:递归压缩,即压缩目录
unzip的常用选项
-d<目录> :指定解压后文件的存放目录 - 应用实例
案例1: 将 /home下的 所有文件进行压缩成 mypackage.zip [退出home]
zip -r mypackage.zip /home/
案例2: 将 mypackge.zip 解压到 /opt/tmp 目录下
- unzip –d /opt/tmp mypackage.zip [如果/opt/tmp 不存在,会自动创建]
- tar 指令
tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件。 [可以压缩,和解压]
- 基本语法
tar [选项] XXX.tar.gz 打包的内容/目录 (功能描述:打包目录,压缩后的文件格式.tar.gz)
选项说明
- 应用实例
案例1: 压缩多个文件,将 /home/a1.txt 和 /home/a2.txt 压缩成 a.tar.gz 【zcvf】 zxvf
案例2: 将/home 的文件夹 压缩成 myhome.tar.gz
案例3: 将 a.tar.gz 解压到当前目录
案例4: 将myhome.tar.gz 解压到 /opt/tmp2目录下 【-C】
解压的目录必须事先存在,否则将会出现错误的
2.4.7 组管理和权限管理
2.4.7.1 组管理
在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件
有所有者、所在组、其它组的概念。
- 所有者:这个文件是谁的
- 所在组:这个文件归属于那个组进行管理
- 其它组:
- 改变用户所在的组
文件/目录的所有者
一般为文件的创建者,谁创建了该文件,就自然的成为该文件的所有者。
- 查看文件的所有者
指令:ls –ahl
应用实例 :创建一个组police,再创建一个用户tom,将tom放在police组 ,然后使用 tom来创建一个文件 ok.txt,看看情况如何
一般来讲:文件的所有者所在的组就是文件所在的组 - 修改文件所有者
指令:chown 用户名 文件名
应用案例
要求:使用root 创建一个文件apple.txt ,然后将其所有者修改成 tom
2.4.7.2 组的创建
基本指令
groupadd 组名
应用实例:
创建一个组, ,monster
创建一个用户 fox ,并放入到 monster组中
文件/目录 所在组
- 当某个用户创建了一个文件后,默认情况下,这个文件的所在组就是该用户所在的组。
- 查看文件/目录所在组
基本指令
ls –ahl
应用实例 - 修改文件所在的组
基本指令
chgrp 组名 文件名
应用实例
使用root用户创建文件 orange.txt ,看看当前这个文件属于哪个组【root】,然后将这个文件所在组,修改到 police组。
2.4.7.3 其他组
除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组。
2.4.7.4 改变用户所在组
在添加用户时,可以指定将该用户添加到哪个组中,同样的用root的管理权限可以改变某个用户所在的组。
改变用户所在组
- usermod –g 组名 用户名
- usermod –d 目录名 用户名 改变该用户登陆的初始目录。
应用实例
创建一个土匪组(bandit)将 tom 这个用户从原来所在的police组,修改到 bandit(土匪) 组
Usermod -g bandit tom
2.4.8 权限的管理
1:文件类型
2:
3:如果是文件,表示硬链接 如果是目录,表示子目录的个数
4:
5:文件最后的修改时间
6:文件的大小 如果是目录显示4096
7:文件其他组用户的权限
8:文件所在组用户的权限
9:文件所有者可以进行的操作
w是不同的
案例:
修改权限 chmod
通过chmod指令,可以修改文件或者目录的权限。
第一种方式:+ 、-、= 变更权限
u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
- chmod u=rwx,g=rx,o=x 文件、目录 【表示:给所有者rwx, 给所在组的用户 rx, 给其他人 x】
- chmod o+w 文件、目录 【表示:给其它用户增加w 的权限】
- chmod a-x 文件、目录 【表示:给所有用户 去掉 x权限】
通过数字变更权限
- 第二种方式:通过数字变更权限
r=4
w=2
x=1
rwx=4+2+1=7
chmod u=rwx,g=rx,o=x 文件、目录
相当于 chmod 751 文件、目录
案例演示
要求:将 /home/abc.txt 文件的权限修改成 rwxr-xr-x, 使用给数字的方式实现:
Chmod u=rwx, g=xr, o=x /home/abc.txt
Chmod 751 /home/abc.txt
修改文件所有者-chown
- 基本介绍
chown newowner file 改变文件的所有者
chown newowner:newgroup file 改变用户的所有者和所有组
-R 如果是目录 则使其下所有子文件或目录递归生效
案例演示:
请将 /home/abc.txt 文件的所有者修改成 tomchown tom /home/abc.txt
请将 /home/kkk 目录下所有的文件和目录的所有者都修改成tom chown –R tom /home/kkk
将home下的所有文件和目录的所有者都改成 tom,将所在组改成policechown –R tom:police /home/
修改文件所在组-chgrp
- 基本介绍
chgrp newgroup file 改变文件的所有组
案例演示:
请将 /home/abc .txt 文件的所在组修改成 shaolin (少林)chgrp shaolin /home/abc.txt
请将 /home/kkk 目录下所有的文件和目录的所在组都修改成 shaolin(少林)chgrp -R shaolin /home/kkk
2.4.9 任务调度
- crond 任务调度
crontab 进行 定时任务的设置。
- 概述
任务调度:是指系统在某个时间执行的特定的命令或程序。
任务调度分类:1.系统工作:有些重要的工作必须周而复始地执行。如病毒扫描等
2.个别用户工作:个别用户可能希望执行某些程序,比如对mysql数据库的备份。 - 基本语法
crontab [选项]
常用选项
快速入门
设置任务调度文件:/etc/crontab
设置个人任务调度。执行crontab –e命令。
接着输入任务到调度文件 如:*/1 * * * * ls –l /etc/ > /tmp/to.txt
意思说每小时的每分钟执行 ls –l /etc/ > /tmp/to.txt命令
参数细节说明
5个占位符的说明
- 应用实例
案例1:每隔1分钟,就将当前的日期信息,追加到 /home/mydate.log 文件中
/1 * * * * date >> /home /mydate.log
1) 先编写一个文件 mytask1.sh
date >> /home/mydate
2) 给mytask1.sh 一个可以执行权限
3)crontab -e
4)/1*****注意这个*中间有空格 必须有 和后面跟的路径也是一样必须有空格
案例2:每隔1分钟, 将当前日期和日历都追加到 /home/mycal.log 文件中
*/1 * * * * date >> /home/mycal.log
*/1 * * * * cal >> /home/mycal.log
2.4.10 Linux磁盘分区、挂载
分区基础知识
分区的方式(知道即可):
- mbr分区:
1.最多支持四个主分区
2.系统只能安装在主分区
3.扩展分区要占一个主分区
4.MBR最大只支持2TB,但拥有最好的兼容性 - gtp分区:
1.支持无限多个主分区(但操作系统可能限制,比如 windows下最多128个分区)
2.最大支持18EB的大容量(1EB=1024 PB,1PB=1024 TB )
3.windows7 64位以后支持gtp
Linux的分区介绍
##### Linux的分区(lsblk)
挂载的经典案例
如下:
- 虚拟机添加硬盘
- 分区
- 格式化
- 挂载
- 设置可以自动挂载
- 第一步
这时候在虚拟机上输入 lsblk -f
表示硬盘并没有载入 因为需要重启才会进行载入
输入 reboot
然后继续测试
表明已经进行载入 - 分区
因为该分区并没有进行格式化 - 格式化
- 挂载
这是临时挂载 机器重新启动该设置就不再了 - 设置自动挂载
设置自动挂载,当机器重启的时候,挂载的设置仍在
重启后的结果 表示已经成功
2.4.11 磁盘使用情况
基本语法:
df -f
卸载分区
目录的使用详细情况
du -ach --max-depth=1 /home
工作实用指令
统计/home文件夹下文件的个数
ls –l /home/ | grep “^-” | wc -l
统计/home文件夹下目录的个数
ls –l /home/ | grep “^d” | wc -l
统计/home文件夹下文件的个数,包括子文件夹里的
ls –lR /home/ | grep “^-” | wc -l
这个R是递归统计
统计/home文件夹下目录的个数,包括子文件夹里的
ls –lR /home/ | grep “^d” | wc -l
以树状显示home目录结构 [没有tree指令咋办, 使用yum 来安装]
ls -lR , grep “^-” , wc -l
安装tree指令库
yum install tree
2.4.12 网络配置
Linux网络配置原理图
查看虚拟网络编辑器
修改ip地址
查看网关
在windows中查看ip的方法
自动获取ip
这个选项选上以后,就会下次登陆就会自动进行网络连接
缺点是:每集进行登陆的时候IP地址都会发生改变 这样用外部软件进行连接的时候就很麻烦
这种方式不适合服务器使用,因为服务器中使用的时候必须是固定ip
指定固定的ip
说明:
直接修改配置文件来指定ip ,并可以连接到外网(程序员推荐)
编辑 vi /etc/sysconfig/network-scripts/ifcfg-eth0
要求:ip地址静态的,需要自己 进行静态指定
- 重新启动网关服务
service network restart
或者粗暴一点:
直接重新启动机器 但是这样重量级太高reboot
DEVICE=eth0 #接口名(设备,网卡)
HWADDR=00:0C:2x:6x:0x:xx #MAC地址
TYPE=Ethernet #网络类型(通常是Ethemet)
UUID=926a57ba-92c6-4231-bacb-f27e5e6a9f44 #随机id
#系统启动的时候网络接口是否有效(yes/no)
ONBOOT=yes
# IP的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配IP|BOOTP协议|DHCP协议)
BOOTPROTO=static
#IP地址
IPADDR=192.168.189.130
#网关
GATEWAY=192.168.189.2
#域名解析器
DNS1=192.168.189.2
修改主机名
1)查看当前主机名
hostname
2)修改linux的主机映射文件
vim /etc/sysconfig/network
文件中内容
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME= hadoop //写入新的主机名
注意:主机名称不要有“_”下划线
3)修改 /etc/hosts 增加ip和主机的映射
192.168.102.130 hadoop
....
4)并重启设备,生效.
5)如果希望windows也可以通过主机名来连接centos, 进入C:\Windows\System32\drivers\etc\hosts 192.168.102.130 hadoop
第三步:修改hosts文件
2.4.13 进程管理
基本介绍
-
在LINUX中,每个执行的程序(代码)都称为一个进程。每一个进程都分配一个ID号。
每一个进程,都会对应一个父进程,而这个父进程可以复制多个子进程。例如www服务器。 -
每个进程都可能以两种方式存在的。前台 与后台,所谓前台进程就是用户目前的屏幕上可以进行操作的。后台进程则是实际在操作,但由于屏幕上无法看到的进程,通常使用后台方式执行。
-
一般系统的服务都是以后台进程的方式存在,而且都会常驻在系统中。直到关机才才结束。
显示系统执行的进程
- 基本介绍
ps命令是用来查看目前系统中,有哪些正在执行,以及它们执行的状况。可以不加任何参数.
查看父进程
查看sshd进程的父进程
##### 终止进程 kill和killall
案例1:踢掉某个非法登录用户
案例2: 终止远程登录服务sshd, 在适当时候再次重启sshd服务
案例3: 终止多个gedit 编辑器
案例4:强制杀掉一个终端 对于 bash
##### 查看树进程
Service 服务管理
服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysql , sshd 防火墙等),因此我们又称为守护进程,是Linux中非常重要的知识点。【原理图】
service管理指令:
service 服务名 [start | stop | restart | reload | status]
在CentOS7.0后 不再使用service ,而是 systemctl
使用案例:
- 查看当前防火墙的状况,关闭防火墙和重启防火墙。
Service iptables status
细节讨论:
关闭或者启用防火墙后,立即生效。[telnet 测试 某个端口即可]service iptables stop , service iptables start
这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。
如果希望设置某个服务自启动或关闭永久生效,要使用chkconfig指令。
##### 防火墙状态查看
- telnet ip 端口 查看某个端口是否启用
查看服务
- setup 可以进行查看
- vim /etc/init.d
服务管理
- 运行级别
查看或者修改默认级别: vi /etc/inittab
Linux系统有7种运行级别(runlevel):常用的是级别3和5
- 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
- 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
- 运行级别2:多用户状态(没有NFS),不支持网络
- 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
- 运行级别4:系统未使用,保留
- 运行级别5:X11控制台,登陆后进入图形GUI模式
- 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
开机的流程说明:
如果不小心将默认的运行级别设置成0或1,怎么处理?
进入单用户模式,修改成正常即可。
chkconfig指令
- 请将sshd服务的运行级别在5的情况下,不要自启动
2.4.14 动态进程监控
介绍:
top与ps命令很相似。它们都用来显示正在执行的进程。Top与ps最大的不同之处,在于top在执行一段时间可以更新正在运行的的进程(默认每3秒变化一次)。基本语法:
top [选项]
选项说明:
案例1:
案例2:
案例3
监控网咯的情况
利用管道进行筛选