linux

0.序

0.1网络连接概念

0.1.1P地址IPADDR

​ IP地址是一种逻辑地址,用来标识网络中一个个主机

​ P地址=网络地址+主机地址

​ IP地址是一个 4 * 8bit(1字节)由 0/1 组成的数字串(IP4协议)

0.1.2子网掩码NETMASK

​ 子网掩码只有一个功能,就是将IP地址划分为网络地址和主机地址两部分。

​ 子网掩码用来判断任意两台计算机的IP地址是否在同一个子网中的根据

​ A 192.168.7.111 B 192.168.8.222

​ 255.255.0.0

0.1.3默认网关GATEWAY

​ 连接两个不同的网络的设备都可以叫网关设备;网关的作用就是实现两个网络之间进行通讯与控制。

​ 网关地址就是网关设备的IP地址

0.1.4域名服务器DNS

​ DNS是域名服务器,用来解析域名的(域名和IP之间的解析)。

​ 如果没有这东西,登陆某个网站时就必须输入该网站的IP地址,有了DNS就可以直接输入网址。

0.2网络的连接模式

host-onboy(主机模式)

​ 在某些特殊的网络调试环境中,要求将真实环境和虚拟环境隔离开,这时你就可采用host-onboy模式

​ 在host-onboy模式中,所有的虚拟系统是可以相互通信的,但虚拟系统和真实的网络是被隔离开的。

​ 在host-onboy模式下,虚拟系统的TCP/IP配置信息都是由VMnet1(host-onboy)虚拟网络的DHCP服务器来动态分配的

bridged(桥接模式)

​ VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。

​ 使用桥接模式的虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑。

​ 当前主机IP 为 192.168.8.100 虚拟机 192.168.8.xxx

​ 该模式相当于独立出一个主机,但若该子网下次ip地址已经被别的设备用了就会发生冲突

NAT(网络地址转换模式)

​ 使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。

​ NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的

​ 虚 拟系统也就无法和本局域网中的其他真实主机进行通讯

1.配置虚拟机

1.1创建虚拟机

​ 选择自定义高级—>选择适合的兼容性—>选择镜像文件—>给虚拟机命名—>分配处理器—>分配内存(至少1G)—>选择网络类型(桥接网络容易和本地ip地址发生冲突;NAT相当于一个路由下的网络)—>I/O控制选择LSI Logic—>虚拟磁盘类型选择SCSI—>创建新虚拟磁盘—>分配磁盘大小建议至少64G(不要点立即分配所有磁盘空间)—>一直下一步—>选择Install CentOS 7—>分配硬盘选择 I will configure partitioning 然后点击done—>给/boot分配1G,给swap分配内存的两倍,其他剩余全部都给/—>修改用户名—>下一步设置密码123456

1.2网络配置

​ 修改网络信息:

vi /etc/sysconfig/network-scripts/ifcfg-ens33

​ 把UUID=4446EC99-4A28这行按两下d删去—>把BOOTPROTO改为static—>然后把ONBOOT改为yes—>然后添加以下四句

IPADDR=192.168.188.100
NETMASK=255.255.255.0
GATEWAY=192.168.188.2
DNS1=114.114.114.114

​ 然后按Esc再输入:wq然后回车

​ 重启网卡

ip addr  //查看地址
systemctl restart network.service       //重启
ping www.baidu.com              //看是否ping的通
ctrl+c终止命令的执行

1.3防火墙配置

systemctl stop firewalld //查看防火墙状态
  • ​ 保护本机端口不被别人访问
  • ​ 如果端口需要被别人访问到,需要添加端口的防护墙例外
  • ​ 关闭防火墙

​ 本次开机状态下防火墙关闭

systemctl stop firewalld //本次服务内关闭防火墙

​ 服务器重启后防火墙禁用

systemctl disable firewalld  //禁用防火墙服务

1.4软件安全限制

​ 操作系统对未知软件的安装有可能拒绝或者警告,我们需要禁用这个功能

​ 输入以下修改指令

vi /etc/selinux/config

​ 把其值改为SELINUX=disabled

1.5关闭计算机

#方法1 poweroff
#方法1    shutdown -h now

2.快照与克隆

2.1快照

​ 拍摄快照功能可以保存当前状态,之后配置出问题可以转到拍摄位置

​ 注意:拍摄快照时需要虚拟机处于关机状态否则容易出错

2.2克隆

​ 克隆可以在需要配置多台设备时不需要每一台都一一配置

​ 克隆是复制某一历史快照节点

克隆方式:

​ 链接克隆

​ 当前节点文件只存储差异性数据

​ 相同数据存放在相同节点上

​ 优点:节省硬盘空间

​ 缺点:耦合性大

​ 完整克隆

​ 就是基于原始节点完全拷贝到新节点文件夹中

​ 优点:耦合性低

​ 缺点:硬盘使用空间大

3.连接Linux服务器

​ Xshell

​ 负责向虚拟机输入命令

​ 如何连接虚拟机

//ssh ip地址
ssh 192.168.188.100

​ Xftp

​ 向虚拟机传输文件

4.Linux命令

4.1命令学习方法

  • Linux命令与参数之间必须空格隔开

    • Linux命令是区分大小写的
    • 如果输入了错误命令
      • -bash : abcd:command not found
      • 命令敲错了
      • 命令未安装
  • type命令的类型

    • cd if a shell builtin
    • ping is /bin/ping
    • ll is aliased to `Is -I --color=auto’
    • for is a shell keyword
  • 命令的帮助文档

    • help

      • 内置命令的帮助文档
    • man

      • 外部命令的帮助文档
      • 因为当前系统为minimal,very basic没有man包
      • 需要手动安装man
        • yum install man man-pages -y

4.2常用的命令

​ whereis 查询命令文件的位置

​ file 查看文件类型

​ who 查看当前在线用户

​ pwd 我在那

​ uname -a查看内核信息

​ echo类似于sout syso , 打印语句

​ clear 清屏

​ history 历史

4.3特殊字符

​ . :

​ 如果文件的开始是.说明当前文件是一个隐藏文件

​ .指向当前目录

​ …指向当前目录的上级目录

​ $:

​ 说明这是一个变量

​ $PATH Linux的环境变量

​ *:

​ 通配符

​ -:

​ 当前用户的家目录

​ 每个用户的家目录是不同的

​ root用户家目录在系统根目录下

​ 其他用户的家目录在/home/用户名为家目录

​ 空格:

​ Linux的命令与参数用空格隔开

​ /:

​ 整个Linux的文件根目录

​ 命令的参数

​ 如果单词一般加–

​ 如果字母或者缩写一般加 -

5.Linux的文件系统

5.1Linux文件简介

  • 在Linux中所有东西都是以文件的形式进行操作

  • 在Linux中文件的访问和Window的不一样。windows依靠通过盘符进行访问

  • Linux维护这一个树形结构的文件模型

    • 只有一个根节点,它的名字叫 /
    • 一个根节点可以有多个子节点
  • 查找文件的方式

    • 相对路径

      • 以当前路径为基础点,查找其他资源
      • vi …/etc/sysconfig/network
    • 绝对路径

      • 以根目录为基础点,查找其他资源
      • vi /etc/sysconfig/network-scripts/ifcfg-ens33
    • 日常使用中,只要找到路径即可,但是如果是一些配置文件尽量写绝对路径

  • 挂载磁盘

mount /dev/disk1 /user/download
disk1 1T
mount /dev/disk2 /user/upload
disk2 2T
mount /dev/disk3 /user/upload/photo
disk3 1T

5.2Linux的二级目录

/bin:
bin是Binary的缩写, 这个目录存放着最经常使用的命令。
/boot:
这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev :
dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问
文件的方式是相同的。
/etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/home:
用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/lib:
这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用
程序都需要用到这些共享库。
/lost+found:
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/media:
linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目
录下。
/mnt:
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目
录就可以查看光驱里的内容了。
/opt:
这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认
是空的。
/proc:
这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,
比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
/root:
该目录为系统管理员,也称作超级权限者的用户主目录。
/sbin:
s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
/selinux:
这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但
是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
/srv:
该目录存放一些服务启动之后需要提取的数据。
/sys:
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件
系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。
当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
/tmp:
这个目录是用来存放一些临时文件的。
/usr:
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的
program files目录。
/usr/bin:
系统用户使用的应用程序。
/usr/sbin:
超级用户使用的比较高级的管理程序和系统守护程序。
/usr/src:
内核源代码默认的放置目录。
/var:
这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日
志文件。
/run:
是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。
如果你的系统上有 /var/run 目录,应该让它指向 run。

5.3linux的文件操作

5.3.1cd改变当前工作目录

cd /     //回到根目录
cd /a       //来到a目录下操作

5.3.2ls ll显示文件夹

​ 显示出指定目录下的所有文件

​ 文件的类型

​ -普通文件

​ d文件夹

​ l软连接

5.3.3 mkdir 创建文件目录

例.  mkdir a  //当前目录下创建了a文件夹mkdir -p a/b/c/d      //自动创建文件夹a并在a中创建b再在b中创建c

5.3.4 rmdir 删除文件目录

​ rmdir只能删除空的文件夹 //必须符合空&&是文件夹这两个条件

​ rmdir: failed to remove ‘a1’: Directory not empty //这就是说明该文件夹不为空

​ rmdir: failed to remove ‘baidu’: Not a directory //这就说明该文件不是一个文件夹

rmdir aaa

5.3.5 cp 复制

普通文件直接cp,如果是文件夹加个参数-r

cp anaconda-ks.cfg /opt              //把anaconda-ks.cfg复制到opt文件夹下
cp /etc/yum.conf ./                 //复制etc文件夹下的yum.conf文件到当前文件下
cp -r lucky /opt                    //复制luck文件夹到opt文件夹
cp -r shiren* /opt                  //复制含shiren这个字符串的文件夹到opt

5.3.6 mv 剪切

文件和文件夹下一样剪切

mv a1 /opt           //a1文件移动到opt下
mv a abcd           //把文件a的名字改为abcd

5.3.7 rm删除

rm   install.log         //删除文件会询问是否删除
rm -f install.log       //强制删除不会询问
rm -r a                 //删除a删除文件夹会询问是否删除
rm -rf abcd             //不会询问直接删除文件夹   删库跑路

5.3.8 touch 声明文件

​ touch一个文件如果没有就创建一个文件

​ 如果该文件已经存在,修改文件的三个时间,将三个时间改为当前时间

5.3.9 stat 查看文件状态

​ 查看文件的状态

​ Inode 当前文件在文件系统的唯一标识,类似于ID (文件名可以一样但innod不行)

​ 时间

​ access 访问时间

​ modify 修改文件内容时间

​ change 修改文件元数据信息时间

​ 文件大小 ,文件所有者 ,文件权限

​ 对于文件的描述信息

5.3.10 ln 创建文件连接

​ 创建文件的链接

​ 软(符号)连接

ln -s lucky01 sl     //s1会指向lucky01  但软连接和原文件不是同一个文件lucky1  INoded:131085             //他们的inode不是相同
sl INoded:131074                 //删除原文件后链接就会断因为指向的不是内存中的文件

​ 硬连接

ln lucky02 hl                //硬链接和原始文件使用文件系统中的同一个文件//如果你害怕一个文件被别人误删,你可以使用硬链接保护这个文件//硬链接创建的是直接指向原文件硬盘中的地址,就算原文件被删除还有一个文件指向那个地址还能找到

5.4Linux读取文件信息

5.4.1 cat

​ 将整个文档加载到内存中,并进行一次性显示

​ 除非后面使用管道,传递数据

5.4.2 tac

​ 将整个文档加载到内存中,并进行一次性按行逆序显示

5.4.3 more less

​ 分页查看文档内容

​ 快捷键

回车 下一行
空格 下一页
b 回退
q 退出

5.4.4 head

​ 从文章开始读取N行

​ 默认如果超过10行读取10行,否则读取现在行数

head -5 profile      //显示profile文件得到前5行

5.4.5 tail

​ 从文章末尾读取N行

head -3 profile | tail -1        //只显示第三行
管道的作用就相当于把前面的结果以参数的方式传递给后面的命令

​ 读取新增数据

ping www.baidu.com >>baidu
tail -F baidu                   //在监视新增加的数据,一直输出显示f和F的区别
f:
它会监听指定inode的文件数据变化,但是当文件被删除后,即使创新创建,inode也会发生变化,于是监听失败
F:
他会监听指定名字的文件,如果文件被删除后,重新创建,他会重新监听新文件的数据变化,监听不受影响

5.4.6 find

​ 查找指定的文件

​ find 要查找的范围 -name 名字

find /etc -name profile

5.5vi和vim编辑器

5.5.1打开文件

​ 正常打开

vi profile           //vi 文件名

​ 打开文件并将光标置于第8行

vi +8profile

​ 打开最后一行

vi + profile

​ 打开指定搜索单词的位置

vi +/if profile     //查找if在文件中的位置
按n查找下一个,按N查找上一个

5.5.2三种模式

​ 编辑模式

​ 编辑模式中,每一个按键都有其他的功能

​ 输入模式

​ 每一个按键按下什么,就像文本中数据输入什么

​ 末行(命令行)模式

​ 我们可以直接在VI中输入特定的命令

5.5.3 三种模式的切换

​ 编辑模式–>输入模式

i在当前位置插入数据
a追加数据
o在当前行后面开启一个新的输入行
I 行首
A 行尾
O 上一行

​ 输入模式–>编辑模式

按下ESC

​ 编辑模式–>末行模式

:

​ 末行模式–>编辑模式

按下ESC

5.5.4编辑模式

G最后一行
gg 跳转到第一行
数字gg 跳转到第数字行
w 下个单词
数字w
dw 删除一个单词
3dw 删除三个单词
dd 删除一行
3dd 删除三行
u回退到前面的操作
.回退u执行的操作
yw 复制一个单词
3yw 复制三个单词
yy 复制一行
3yy复制三行
p粘贴
6p 粘贴6次
x 剪切
3x 剪切三个字符
r 替换,然后输入一个字符替换
3r 替换三个
hjkl 方向键
ZZ 保存并退出
ctrl+s 锁屏 ctrl+q 解锁

5.5.5输入模式

按i进入

5.5.6末行模式

set nu 设置行号
set nonu 取消行号
w 保存
q 退出
wq 保存并退出
q!强制退出,但是不保存
如果上次异常退出会保留同名隐藏文件,每次启动会给与提示如果确定当前文件没问题,请删除隐藏文件
/pattern搜索指定的字符串/usr n向下查找 N逆向查找
s/p1/p2/g替换字符串g 替换当前行所有 否则只替换当前行第一个s/abc/lucky/g查找指定行3,8s/abc/lucky/g替换全文g/abc/s//lucky/g

5.6 计算机间数据传输

5.6.1 Windows—>Linux

​ lrzsz

​ 需要手动安装

yum install lrzsz -y

​ rz

​ 将文件从window上传到Linux

​ sz 文件

​ 将文件从Linux传输到Window

​ xftp

​ 较为通用的文件传输方式

5.6.2Linux—>Linux

scp 源数据地址(source) 目标数据地址(target)//把 apache-tomcat-7.0.61.tar.gz文件传输到192.168.31.44ip地址下的/opt路径
scp apache-tomcat-7.0.61.tar.gz root@192.168.31.44:/opt    //从192.168.31.44下的/opt/下的apache-tomcat-7.0.61.tar.gz文件传输到本机器的根目录下./
scp root@192.168.31.44:/opt/apache-tomcat-7.0.61.tar.gz ./ //传输文件夹
scp -r apache-tomcat-7.0.61 root@192.168.31.44:/opt

5.7 文件大小

​ 分区信息

df -h

​ 指定文件目录大小

du -h --max-depth=1 文件地址
例:
du -h --max-depth=1 apache-tomcat-7.0.61

​ swap

一个特殊分区,以硬盘代替内存
当内存使用满的时候,可以将一部分数据写出到swap分区

5.8文件压缩

5.8.1tar格式

​ 解压

tar -zxvf    压缩包文件名
//tar -zx(解压)v(过程)f(文件) lucky.tar.gz
例:
tar -zxvf lucky.tar.gz指定目录解压
tar -zxf tomcat.tar.gz -C /opt/
//-C 指定解压缩的文件目录

​ 压缩

tar -zcf 压缩后的名字 要压缩文件的名字
//tar -zc(压缩)f(文件) tomcat.tar.gz(压缩后的名字) apache-tomcat-7.0.61(源文件)
例:
tar -zcf git.tar.gz git.md

5.8.2 zip和unzip

​ 安装

 yum install zip unzip -y

​ 压缩

zip -r git.zip git.md

​ 解压

unzip tomcat.zip

6Linux的网络信息

5.1主机名称

​ 临时修改

hostname school

​ 长久修改

vi   /etc/hostname

5.2DNS解析

​ 域名解析服务

​ 可以将域名转换为IP地址

​ DNS域名劫持

​ windows —> C:\Wimdows\System32\drivers\hosts

​ 修改主机域名

​ vi /etc/hosts

​ 将来我们需要把所有的虚拟机都配置hosts文件

//ip地址       域名
192.168.31.101 bd1601

5.3网络相关命令

ifconfig

查看当前网卡的配置信息
这个命令属于 net-tools中的一个命令,但是Centos7中minimal版并没有集成这个包
所以7的时候需要自己手动安装
如果没有ifconfig ,可以使用ip addr 临时代替

netstat

查看当前网络的状态信息
一个机器默认有65536个端口号[0,65535]
这是一个逻辑的概念,将来我们需要使用程序监听指定的端口,等待别人的访问
一个端口只能被一个程序所监听, 端口已经被占用
netstat -anp
netstat -r 核心路由表 == route

ping

查看与目标IP地址是否能够连通

telnet

查看与目标IP的指定端口是否能够连通
yum install telnet -y
telnet 192.168.31.44 22

curl

restful 我们所有的资源在网络上中都有唯一的定位
那么我们可以通过这个唯一定位标识指定的资源
http://localhost:8080/lucky/user.action/666
curl -X GET http://www.baidu.com

6.4防火墙

​ 防火墙技术是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术

在centOS7+中 使用firewalld代替以前的 iptables ;

#查看防火墙状态
systemctl status firewalld.service
#临时停止firewall
systemctl stop firewalld.service
#禁止firewall开机启动
systemctl disable firewalld.service
firewall-cmd --state ##查看防火墙状态,是否是
running
firewall-cmd --reload ##重新载入配置,比如添加规则之
后,需要执行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服务,在列表中的服
务是放行的
firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回
yes或者no
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口

开启一个端口的正确操作

# 添加
firewall-cmd --zone=public --add-port=80/tcp --permanent
#重新载入
firewall-cmd --reload
#查看
firewall-cmd --zone=public --query-port=80/tcp
#删除
firewall-cmd --zone=public --remove-port=80/tcp --permanent

6.5加密算法

6.5.1不可逆加密算法

​ 可以通过数据计算加密后的结果,但是通过结果无法计算出加密数据

​ 应用场景

​ Hash算法常用在不可还原的密码存储、信息完整性校验。

​ 文档、音视频文件、软件安装包等用新老摘要对比是否一样(接收到的文件是否被修改)

​ 用户名或者密码加密后数据库存储(数据库大多数不会存储关键信息的明文,就像很多登录功能的忘记密码不能找回,只能重置)

6.5.2对称加密算法

​ Symmetric Key Encryption

​ 代表性算法叫做 DES、3DES、Blowfish、IDEA、RC4、RC5、RC6和AES

​ 特点

​ 加密和解密使用相同的秘钥

​ 优点

​ 生成密钥的算法公开、计算量小、加密速度快、加密效率高、密钥较短

​ 缺点

​ 双方共同的密钥,有一方密钥被窃取,双方都影响

​ 如果为每个客户都生成不同密钥,则密钥数量巨大,密钥管理有压力

​ 应用场景

​ 登录信息用户名和密码加密、传输加密、指令加密

6.5.3非对称加密

​ Asymmetric Key Encryption

​ 非对称加密算法需要一对密钥(两个密钥):

​ 公开密钥(publickey)和私有密钥(privatekey)(简称公钥,私钥)。

​ 公开密钥与私有密钥生成时是一对

​ 用公钥加密只能是对应的私钥解密,同理用私钥加密只能用对应的公钥解密。

​ 代表性算法叫做 RSA、ECC、Diffie-Hellman、El Gamal、DSA(数字签名用)

​ 优点:

​ 安全高(几乎很难破解)

​ 缺点

​ 加解密相对速度慢、密钥长、计算量大、效率低

​ 应用场景

​ HTTPS(ssl)证书里制作、CRS请求证书、金融通信加密、蓝牙等硬件信息加密配对传输、关键的登录信息验证。

6.6主机间的相互免密钥

​ 可以通过ssh命令免密钥连接到其他的主机,如果第一次建立连接需要输入yes

在 ~/.ssh/known_hosts 文件记录了以前访问地址(ip hostname)的信息
在访问地址的时候如果没有收录到known_hosts文件中,就需要输入yes
如果以前收录到known_hosts中,直接输入密码即可

​ 生成密钥

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa查看公钥 cat ~/.ssh/id_rsa.pub

想要免密登录谁就把自己的公钥发给他

ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.188.100这个秘钥要放在 ~/.ssh/authorized_keys

7.日期与时间

7.1时间命令

7.1.1查看时区

ll /etc/localtimeln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

7.1.2查看当前时间

date

7.1.3查看日历

cal 2022

7.1.4修改时间

date -s 11:11:11
date -s 2019-11-11
date -s '2019-11-11 11:11:11'

7.2日期自动同步

7.2.1自动同步时间

yum install ntp -y
ntpdate cn.ntp.org.cn

7.2.2本地搭建NTP服务

7.2.2.1开启本地NTP服务器
service ntpd start

7.2.3# vi /etc/ntp.conf

#========权限控制============
restrict default kod nomodify notrap nopeer noquery 拒绝IPV4用户
restrict -6 default kod nomodify notrap nopeer noquery 拒绝IPV6用户
restrict 210.72.145.44 授权国家授时中心服务器访问本地NTP
restrict 133.100.11.8 授权133.100.11.8访问本地NTP
restrict 127.0.0.1
restrict -6 ::1
restrict 192.168.188.2 mask 255.255.255.0 nomodify 本地网段授权访问
#=========源服务器===========
server cn.ntp.org.cn prefer 指定上级更新时间服务器,优先使用这个地址
#=========差异分析===========
driftfile /var/lib/ntp/

7.2.4客户端同步时间

ntpdate 192.168.188.100

8.用户-组-权限

8.1用户

8.1.1新增用户

useradd luckyboy
//会创建同名的组和家目录

8.1.2设置密码

passwd luckyboy

8.1.3删除用户

userdel -r luckyboy
//级联删除家目录和组

8.1.4修改用户信息

usermod -l luckyss luckyls 修改用户名 //家目录和组名称是不会被修改的
usermod -L luckyss 锁定用户名
usermod -U luckyss 解锁用户名

8.1.5常用文件

cat /etc/shadow   用户名和密码
cat /etc/passwd
//用户名,编号,组编号,家目录,命令,目录
6.5系统0-499 普通 500+
7.6系统0-999 普通 1000+

8.1.6切换账户

su luckyboy

8.2组

8.2.1创建组

groupadd lucky

8.2.2删除组

groupdel lucky

8.2.3修改组名字

groupmod -n school lucky

8.2.4查看对应的组

groups
groups schoolboy    //当我们创建用户的时候,会默认创建一个同名的主组

8.2.5修改用户的组

usermod -g lucky schoolboy (主组)
usermod -G lucky schoolls (附属组)

8.3权限

8.3.1查看文件的权限

drw-r-xr-x 9 n1 m1 4096 Nov 13 00:30 apache-tomcat-7.0.61
r :读取权限
w :写入权限
x :执行权限
-:没有权限root :所属用户(属主)
root:所属的组(属组)

8.3.2权限的UGO模型

三组权限
属主的权限:属组的权限:其他的权限
所有说:将来修改文件的权限 可以从rwx和ugo两个方面进行修改

8.3.3修改文件的权限

8.3.3.1修改文件所属
chown n1 /var/lucky1
chown n1:m1 /var/lucky2
chown -R n1:m1 school   //修改文件夹时,让子目录迭代修改
chgrp m2 lucky3
当用户的组被修改之后,需要重新登录才能获取新组的权限
8.3.3.2修改文件的rwx
chmod o+w lucky4
chmod ug+rw lucky4
chmod ugo-rw lucky4
(权限RWX分别对应数字 4 2 1 5= 4+0+1 r-x)
chmod 664 lucky4 ->(rw- rw-r--)

8.4权限赋予

​ 我们可以将管理用的权限分配给普通用户
​ 文件位置在 vim /etc/sudoers
​ 但是修改这个文件需要使用命令

visudo
修改 Line 99
n1 ALL=(root) /sbin/useradd
n1 ALL=(root) /sbin/*

​ 如何使用

su n1
sudo chkconfig iptables off

9.管道与重定向

9.1管道

​ 将前面命令的结果作为参数传递给后面的命令

​ grep–强大的文本搜索工具

cat profile | grep if        对profile进行关键字if查找
ls / | grep ^t              显示/目录查找^t

9.2重定向

​ 改变数据输出的位置,方向

0 in 1 out 2 err
ls / 1> lucky 标准输出
ls / > lucky 标准输出
ls abcd 2>lucky 错误输出

​ > 替换 >> 追加

ls / 1>> lucky
ls / 1> lucky

​ 结合使用

s /etc /abc > lucky 2>&1
ls /etc /abc >> lucky 2>&1

​ 信息黑洞

ls /etc /abc >> /dev/null 2>&1

10.Linux的系统进程

10.1 进程信息

ps -efUID PID PPID C STIME TTY TIME CMDUID 所属用户PID 当前进程编号PPID 当前进程编号的父进程编号
ps -ef | grep redis
ps -aux     所有信息
ps -aux --sort -pcpu
top     当前服务器内存使用率

10.2后台进程

只需要在命令的后面添加一个 & 符号

ping www.baidu.com >> baidu &

jobs -l
可以查看当前的后台进程
但是只有当前用户界面可以获取到
nohup 可以防止后台进程被挂起

 nohup ping www.baidu.com >> baidu 2>&1 &

10.3杀死进程

kill -9 17599

11Linux的软件安装

11.1环境变量

当我们执行一个命令的时候,默认从当前路径开始查找如果当前径找不到对应的命令文件,从环境变量PATH查找PATH查找PATH查找PATH的配置文件在 /etc/profilewindow 路径与路径之间用;(分号)连接Linux路径与路径之间用:(冒号)连接Linux每次修改完成之后,需要重新加载文件 source /etc/profile

11.2软件安装方式

​ 解压就可以使用
​ 使用安装包安装(window-exe Linux-rpm)
​ 自己下载安装包
​ 使用统一的软件帮助我们安装
​ 通过源码安装

11.3RPM安装

RedHat Package Manager,它属于红帽的一种包管理方式

通过RPM命令安装软件

 rpm -ivh jdk-7u67-linux-x64.rpm

可以查询软件

     rpm -qa | grep jdkrpm -q jdk

卸载

rpm -e jdk-1.7.0_67-fcs.x86_64

需要手动配置Java的环境变量

     vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.7.0_67
export PATH=$JAVA_HOME/bin:$PATH

​ 重新加载配置文件

source /etc/profile

11.4压缩包解压安装

解压文件

tar -zxf apache-tomcat-7.0.61.tar.gz

拷贝到/opt/school目录下

mkdir -p /opt/lucky
cp -r apache-tomcat-7.0.61 /opt/school

启动tomcat

cd /opt/school/apache-tomcat-7.0.61/bin/
./startup.sh

11.5YUM安装

11.5.1yum的作用

​ 可以帮我们管理RPM包

​ 可以帮我们安装软件,
​ 如果软件有其他依赖,会帮我们安装依赖后在安装软件
​ 类似于Maven

10.5.2. yum命令

​ search

​ 查询命令或者软件

yum search ifconfig

​ info
​ 查看包的信息

yum info

​ list / list jdk
​ 查询安装的rpm包,或者只查询某一周

yum list

11.5.3更换yum源

首先安装wget

yum install wget -y

将系统原始配置文件失效

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

使用Wget获取阿里yum源配置文件

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.r
epo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.r
epo

清空以前yum源的缓存

yum clean all

获取阿里云的缓存

yum makecache

linux基础操作学习笔记相关推荐

  1. linux磁盘符变化autofs,Linux基础教程学习笔记之Autofs自动挂载

    Linux基础教程学习笔记之Autofs自动挂载 Autofs自动挂载: yum -y install autofs vim /etc/auto.master  在文件中添加下面行 /home/gue ...

  2. 网络存储 linux 访问,Linux基础教程学习笔记28——使用Samba访问网络存储

    Linux基础教程学习笔记28--使用Samba访问网络存储 SMB用于Windows和类Linux系统直接的文件共享 安装samba client包: [root@linuxidc~]# yum i ...

  3. linux基础命令学习笔记(二)

    linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...

  4. Linux实用操作学习笔记

    各类小技巧(快捷键) 强制停止 ctrl+c 强制停止 Linux某些程序的运行,如果想要强制停止她,可以使用快捷键ctrl+c 目录输入错误,也可以通过快捷键ctrl+从,推出当前输入出现输入 停止 ...

  5. 【linux】Linux基础知识学习笔记

    文章目录 [第一章-宏观知识] 1.硬件和软件的关系 2.操作系统 是什么.作用是什么 3.常见的操作系统 4.Linux的诞生 5.Linux内核 是什么 6.Linux发行版 是什么 7.WSL是 ...

  6. Linux基础知识学习笔记

    Linux学习笔记 文章目录 Linux学习笔记 前言 一.macOS下的Linux环境搭建 1.在docker中初始化CentOS 2.docker中CentOS的联网问题 二.Linux的目录结构 ...

  7. 多项式基础操作 - 学习笔记

    原文链接https://www.cnblogs.com/zhouzhendong/p/polynomial.html 下载链接: 多项式基础操作 #include <bits/stdc++.h& ...

  8. linux基础操作入门笔记

    linux笔记1:附学习视频:https://www.bilibili.com/video/BV1Sv411r7vd 1.linux的入门了解和环境搭建 1.1 linux 和Unix的关系 1.2 ...

  9. Kali Linux基础操作学习篇——alias命令

    课前声明: 1.本分享仅做学习交流,请自觉遵守法律法规! 2.搜索:Kali 与编程,学习更多网络攻防干货! 3.Kali 与编程每天准时更新,敬请学习和关注! 正文部分 课前声明: 1.本分享仅做学 ...

最新文章

  1. 华为的创新——计划制定和调整水平
  2. linux 系统tar文件压缩打包命令
  3. mysql ef 随机排序_EFCore+Mysql倉儲層建設(分頁、多字段排序、部分字段更新)
  4. boost::hana::detail::fast_and用法的测试程序
  5. bat怎么获取前一天 的日期_bat脚本 得到前一天的日期
  6. LeetCode Algorithm 70. 爬楼梯
  7. nuxt添加.html,Nuxt内导航栏的两种实现方式
  8. WampServer2.0的Apache的service无法启动的解决方法
  9. 电子元器件从入门到精通pdf_电子元件入门基础,常用电子元器件详解大全作用-涨知识必读...
  10. 导航条——flash导航条
  11. linux shell 编程之变量总结
  12. 竖排书A5双面打印设置指南
  13. Sklearn提供的常用数据集
  14. Shell常用命令cat用法详解
  15. 关于XAMPP Apache 启动失败的问题
  16. [转] 8 reasons why SPIR-V makes a big difference
  17. 微信摇一摇里没有周边
  18. B站狂神说JavaWeb学习笔记
  19. 微信小程序体验版,手机打开调试正常访问 关闭调试访问不通
  20. 广告拦截应用将从Google应用商城中移除

热门文章

  1. yahoo邮箱又开始默默的支持pop客户端啦
  2. 全国A级景点信息与分布数据
  3. Java中MDI的实现
  4. Chrome(谷歌)浏览器关闭恢复页面提示框
  5. 电动牙刷PCBA,两键六模式声波电动牙刷方案,支持无线充充电
  6. glimpse .net_如果您没有在ASP.NET中使用Glimpse进行调试和配置,则可能会错过
  7. 【面试经】数据分析 or 数据开发面试必备思路,面试官都会这样问。
  8. Web实现:仿QQ注册页
  9. 如何让自己时刻冷静的方法_帮你保持冷静的10个技巧,教你如何控制愤怒情绪!...
  10. 【C/C++: 字符数组的赋值】