网络管理、ssh、日志管理、归档和文件传输、rpm

如打开火狐浏览器:

在这里插入图片描述

一般这种情况下浏览器会出现乱码 echo $LANG 查看当前语言环境,解决方法:1、mkdir -p /usr/share/fonts/zh_CN/TrueType 2、去网上下载任意字体,拷贝到1创建的目录中,重新打开浏览器即可解决乱码问题:

在这里插入图片描述

ssh的密码认证及安全管理


登陆ssh的时候,有两种方式:

密码的验证方式:直接ssh server-ip 需要输入密码

秘钥的认证方式:可以让我们不需要输入密码,直接就可以登陆了,称之为建立ssh 的信任关系。

加密的基础知识

解密的类型:对称加密,非对称加密,哈希函数

在这里插入图片描述

创建秘钥:秘钥存在目录:.ssh/,创建秘钥:ssh-keygen ,会让你输入密码,这个就是私钥密码,配了秘钥登陆,每次都需要输入一次密码,这个密码不是对方服务器的密码,而是私钥密码, 所以一般是不会要这个私钥密码的,这时候可以不输人任何密码直接回车或者使用ssh-keygen -N “”,就是不创建私钥密码

在这里插入图片描述

公钥绑定:ssh-copy-id 用户@ip即可:

在这里插入图片描述

后续如果不想要这个公钥了,在创建秘钥服务器中删除即可:cd .ssh , rm -rf .ssh/id_rsa* ,也需要对被绑定服务器中authorized_keys 删除:cd .ssh , rm -rf authorized_keys 。如果想删除某一个秘钥登陆,只需去被绑定服务器中删除authorized_keys即可。

在这里插入图片描述

限制root直登:vim /etc/ssh/sshd_config 里面有一项是:#PermitRootLogin yes,把前面的# 删掉,并把yes改为no,就不可以使用root直接登陆了,但需要重启服务才会生效:systemcctl restart sshd

限制秘钥直登:vim /etc/ssh/sshd_config 里面有一项是:#PubkeAuthentication yes ,吧前面的#删掉 并把yes改为no即可,需要重启服务:systemctl restart sshd

限制密码验证:vim /etc/ssh/sshd_config 里面有一项是:#PasswordAuthentication yes ,吧前面的#删掉 并把yes改为no即可,需要重启服务:systemctl restart sshd

通过VNC访问远程桌面


windows——RDP

xendesktop——LCA

vmwareview——CoIP

vnc/spice

装vnc的时候需要关闭防火墙:firewall-cmd --set-dafault-zone=trusted

开始装vnc:yum install -y vnc。

装完以后第一次运行vncserver会让输入一次密码,这两个密码是用于远程桌面的密码,这个密码保存在家目录下:.vnc/

root执行这个命令,所以root打开(创建)了一个vnc桌面:

在这里插入图片描述

roo下创建vnc用户:vncserver

查看以创建的vnc用户:vncserver -list :

在这里插入图片描述

此时如果你登陆:2号桌面的话,则使用的是root登陆的,密码就是刚刚第一次运行vncserver的时候输入的密码,如果想修改密码:vncpasswd

在这里插入图片描述

关闭(删除)vnc 如2号桌面:vncserver -kill :2

在这里插入图片描述

cat家目录下的vnc会发现里面储存有分辨率信息:

在这里插入图片描述

所以在创建新桌面的时候可以指定分辨率,如指定分辨率在3号桌面:vncserver -geometry 1024*768 :3

在这里插入图片描述

如果需要用其他用户登陆vnc:则su - 切换到指定用户 打开(创建)vnc即可;

也可以用另外一种方式创建vnc桌面:x0vncserver --passwordfile=.vnc/passwd

通过该命令创建后 vnc登陆桌面的时候就不需要指定几号桌面了:

在这里插入图片描述

vnc的好处是屏幕是同步的:适合多个场景同步教学等用途

在这里插入图片描述

注:需要吧共享连接勾上,否则会把前面所有已经连接的挤掉线;

在这里插入图片描述

或者通过 在开启vnc桌面的时候 强制开启共享桌面等功能:

在这里插入图片描述

AlwaysShared:强制开启共享连接

AcceptPointerEvents=0 :是否运行运行鼠标,0不可以 ,1可以

AcceptKeyEvents=0:是否运行使用键盘,0不可以,1可以

日志管理

===================================================================

日志的管理


如果运行某命令报错了,应该清楚:什么报错了,怎么报错了,报错日志是什么;

在这里插入图片描述

日志都是默认开启的,查看命令:systemctl is-active rsyslog.service

日志服务运行的时候,它会自动读取自己的所有.conf配置文件:ls /etc/rsyslog.*

在这里插入图片描述

系统里内置很多种事件 ,每种事件里都有一个级别:事件.级别

在这里插入图片描述

查看日志的定义:vi /etc/rsyslog.conf ,可以看到里面什么事件什么级别分别存在什么日志目录:

在这里插入图片描述

/var/log/messages —包括整体系统信息,其中也包含系统启动期间的日志。此外, mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。

/var/log/secure —包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里。

-/var/log/maillog /var/log/mail.log —包含来着系统运行电子邮件服务器的日志信息。例如,sendmail日志信息就全部送到这个文件中。

/var/log/cron — 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中。

/var/log/spooler——与UUCP和news设备相关的日志信息

/var/log/boot.log — 包含系统启动时的日志。

:omusrmsg:*——警告信息

如:logger -p local5.emerg ‘报警信息’:模拟一个报警

在这里插入图片描述

在这里插入图片描述

‘-’ 表示异步sync,无-则表示同步async,异步的意思是先吧数据写在内存上,内存在慢慢写给硬盘,同步就是 写在内存上,内存同时写进硬盘。

如:日志中自定义事件vi /etc/rsyslog.conf

在这里插入图片描述

logger -p local5.debug ‘test11111’ 模拟事件,确实已经如预期写进了xx.log日志中

在这里插入图片描述

如:因为debug级别比较低所以local5.info 也会写进xx.log目录中,而且因为是info级别,也会写入到messages 中:logger -p local5.info ‘test22222’

在这里插入图片描述

日志服务器的配置


简单来说就是把若干台服务器的日志信息 统一写入到某一台里面,这样就不用一台一台登陆查看日志了

在这里插入图片描述

如:我现在要把A服务器的日志文件配置到中央日志服务器中,则先在A服务器中指定中央服务器ip:vi /etc/rsyslog.conf

在这里插入图片描述

然后到中央服务器中接收A服务器日志:vi /etc/rsyslog.conf

在这里插入图片描述

中央服务器配置好其他服务器传送过来的目录后,需要开启2个模块(把#去掉) 并且需要更改防火墙zone:firewall-cmd --set-default-zone=trusted 或者直接关闭:systemctl stop firewalld

在这里插入图片描述

测试:在A服务器上 生成一个事件,然后去中央服务器查看是否有相应日志生成:logger -p local6.info ‘test1234567’

在这里插入图片描述

添加多台方法一样,只需要在配置文件里自定义中央服务器接收的名字一样即可,如上图中的local6.* 。 但是 这样有一个弊端,就是 如果匹配了多个服务器,全部写在里面会很乱,不容易查看对应服务器的日志信息:

在这里插入图片描述

所以日志应该分类,a服务器的日志放在a服务器主机名目录下,b服务器放在b服务器主机名下:所以需要进行以下操作:

首先,设置日志的服务器必须能互相解析,然后吧服务器ip和主机名信息添加到中央服务器/etc/hosts 中。主机名hostname查看

在这里插入图片描述

然后在中央服务器/etc/rsyslog.conf中日志存放目录顶端添加存放信息, :fromhost,isequal,“controller” /var/log/controller (日志信息来自controller的存放到该目录下,前提是必须添加解析),如果只添加这一行,虽然日志会如期存放到该目录下,但如果是info级别的,也会存放到中央服务器的messages等目录中,这显然是不希望发生的,所以还需要在添加一行,:fromhost,isequal,“controller” ~ (就是说匹配到这以后就停止往下匹配,也就不会写入到中与服务器的日志目录了)

在这里插入图片描述

测试:在服务器中 自定义事件,看中央服务器能否正常录入日志信息:[root@controller ~]# logger -p local6.info ‘fadsfdsagz1123’ ; [root@block1 ~]# logger -p local6.info ‘test123dfgasf1’

在这里插入图片描述

查看日志


journalctl:查看日志命令 全部日志都在里面,这个数据一般没有参照价值,所以需要配合需求参数使用

journalctl -f :动态查看最新事件日志,一般打开多个窗口,一个窗口用来查看日志,其他窗口做操作,查看问题。 ctrl+c退出

journalctl -p 事件名:查看事件及以上日志,如查看err事件:journalctl -p err

journalctl --since “时间” :查看从该时间到现在的所有日志,如查看20191020日20点整到现在的所有日志:journactl --since “2019-10-20 20:00:00” ,或查看区间日志,如查看20191020日20点整到20191021日00点20分的所有日志:journalctl --since “2019-10-20 20:00:00” --until “2019-10-21 00:20:00”

NTP服务器的设置


简单提一下时间设置

修改时间:date 月日时分年 如:date 102112302019 (20191021,12:30),date -s “20191023 12:31:25”

还原时间:hwclock -s

timedatectl:查看时间详细,如果有告警,执行timedatectl set-local-rtc 0即可

在这里插入图片描述

查看所有时区:timedatectl list-timezones

修改时区:timedatectl set-timezone 时区名称 ,如修改为abidjan:timedatectl set-timezone Africa/Abidjan

开始配置ntp服务:先禁止chronyd服务(避免启动了chrony而冲突):systemctl stop chronyd.service , 关闭开启自启:systemctl disable chronyd.service ,查看状态: systemctl status chronyd.service

在这里插入图片描述

安装ntp:yum -y install ntp

安装完成后编辑文件:vi /etc/ntp.conf 同网段只需要 在主服务器 server处添加一行 server 127.127.1.0 (本机时间)即可,需把其他server注释掉

在这里插入图片描述

在客服端服务器上编辑文件:vi /etc/ntp.conf 中 server中添加主服务器ip即可:

在这里插入图片描述

客户端运行 ntpq -p 查看状态, ntpdate -u 主服务器ip ,实现与主服务端同步,同步成功后date查看时间与主服务器时间一致,成功。

在这里插入图片描述

如果服务器与主服务器的晶体时间不一样,则时间过一天左右时间就不会相同了,所以这时候需要在其他服务器上执行:0 12 * * * /usr/sbin/ntpdate 0.0.0.0(主服务器ip,每天的12点整 同步一次时间) 如果不是最小化安装,可以: yum install -y system-config-date ,安装完成后执行:system-config-date & , 在里面添加ntp主服务器ip即可,(如果在网络上同步日期和时间这一栏是灰色的无法选择,则开启ntp服务:timedatectl set-ntp true ):

在这里插入图片描述

查看状态:chronyc sources -v 如果同步成功会显示 *

在这里插入图片描述

归档和文件传输

======================================================================

熟练归档和压缩文件/目录


归档archive:把多个文件放在一个东西里(类似于windows中打打压缩包)

常见的归档工具:tar,cpio

语法:

基本命令

-c: 建立压缩档案

-x:解压

-t:查看内容

-r:向压缩归档文件末尾追加文件

-u:更新原压缩包中的文件

压缩相关命令

-z:有gzip属性的

-j:有bz2属性的

-Z:有compress属性的

-v:显示所有过程

-O:将文件解开到标准输出

-f: 使用档案名字,这个参数是最后一个参数,后面只能接档案名。

tar cvf 归档文件名.tar file1 file2 file3 …

在这里插入图片描述

吧上面几个文件归档到file.tar里了,这时候归档完成后 源文件还是在的,如果想归档完成之后,源文件自动删除,在最后面加上 --remove-files :

在这里插入图片描述

在不解压的情况下,查看这个归档文件的内容:tar tf 文件名 :

在这里插入图片描述

解压jdk到指定文件夹 -C :(注:下列所有参数的- 可忽略 如 tar xzvf )

tar -xzvf jdk-8u131-linux-x64.tar.gz -C /usr/local/java

1.这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。

tar -cvf all.tar *.jpg

2.这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。

tar -rvf all.tar *.gif

3.这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

tar -uf all.tar logo.gif

4.这条命令是列出all.tar包中所有文件,-t是列出文件的意思

tar -tvf all.tar

5.这条命令是解出all.tar包中所有文件,-x是解开的意思

tar -xvf all.tar

6.这条命令是解除num.tar包中的其中某个文件,-x是解开的意思

tar -xvf num.tar 1 (如果需要解开其中多个,可直接在后面追加文件名即可 tar -xf num.rat 1 2 3 …)

压缩

//将目录里所有jpg文件打包成tar.jpg

tar -cvf jpg.tar *.jpg

//将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩 -z(文件大小会变小),生成一个gzip压缩过的包,命名为jpg.tar.gz

tar -czvf jpg.tar.gz *.jpg

//将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩 -j(文件大小会变更小),生成一个bzip2压缩过的包,命名为jpg.tar.bz2

tar -cjvf jpg.tar.bz2 *.jpg

//将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包 -Z ,命名为jpg.tar.Z

tar -cZvf jpg.tar.Z *.jpg

解档:

tar xvf 归档文件

tar xvf 归档文件名 归档文件中的文件名 (tar tf 查看归档文件中的文件) (如果需要解开其中多个,可直接在后面追加文件名即可 tar -xf num.rat 1 2 3 …)

在当前文件创建一个文件名为file的100M文件:dd if=/dev/zero of=file bs=1M count=100 (zero无穷大小 可以随便提取,if 输出,of写入,bs大小,count数量,该方法也可以用来测试硬盘读写速度,吧count换成2048,看写完需要多少时间)

linux和Linux之间互相传输文件


一般都2种分别为:scp和rsync——都基于ssh

scp ——两台互相拷文件的服务器都必须有scp命令,否则无法拷贝

scp -选项 /path1/file 目标ip:/path2 ——从当前服务器把文件拷贝到目标服务器

在这里插入图片描述

如果不想输入密码就可以远程远程传输的话,需要建立ssh的信任关系 ,也就是无密码登陆。ssh-keygen , ssh-copy-id 0.0.0.0

在这里插入图片描述

如果拷贝目录文件,需要加上选项r scp -r 目录名/ 0.0.0.0:file 如:scp -r a/ 192.168.127.136:/ 把当前目录下的a目录拷贝对该服务器的/目录下

也可以在当前服务器拷贝其他服务器的文件:scp ip:目录文件 当前目录文件 如:scp 192.168.127.136:/1 . 吧对方服务器根目录下的1考本到当前位置. 也可以指定任意位置。

rsync使用与scp大致一致 推荐使用scp。 rsync -选项 文件 ip:地址 如:rsync anaconda-ks.cfg 192.168.127.136:/opt 拷贝anaconda-ks.cfg 到目标服务器的opt目录下

linux和windows之间互相传输文件


windows→linux

lrzsz,确保在服务器上安装了lrzsz 没有的话就yum -y install lrzsz ,然后通过某个客户端比如xshell,secureCRT等工具连接到服务器上,如果使用的是putty的话,则不支持。

要把windows里的文件拷贝到linux里的话,直接吧文件拖终端里或输入rz命令,会让我们选择windows里文件:

在这里插入图片描述

linux→windows

确保在服务器上安装了lrzsz 没有的话就yum -y install lrzsz ,然后通过某个客户端比如xshell,secureCRT等工具连接到服务器上,如果使用的是putty的话,则不支持。

然后在终端输入sz 文件名 即可让你选择保存位置:如 sz aa.sh

在这里插入图片描述

也可以使用xftp 等工具互相上传文件。

rpm

==================================================================

简要介绍使用源码包安装软件包


源码包需要安装gcc:yum -y install gcc

比如linux服务器现有一个压缩文件figlet-2.2.4.tar.gz(一般是网上下载拷贝到服务器上的)。

第一步需要解压文件:tar zxvf figlet-2.2.4.tar.gz

在这里插入图片描述

解压完成以后进入解压的目录中: cd figlet-2.2.4 (注:如果没有Makefile文件的话,一般会有conflgure文件,./conflgure --help 查看帮助,里面有许多选项,./conflgure --选项1 --选项2 … 就可以生成Makefile文件,再次运行make && make install)

在这里插入图片描述

进入解压目录以后,编译并安装:make && make install ,make是编译 只有编译成功后才会执行安装。

在这里插入图片描述

使用rpm管理软件


rpm–redht package manger 本质上是通过源码包,给我们编译出来的一种安装包。

rpm功能十分强大可以安装,查询,卸载,更新,验证等等操作,与第一个选项是有关系的

在这里插入图片描述

强调:安装包指的是带有后缀的完整的名字 包名–vsftpd

安装一个软件包:rpm -ivh 安装包(安装包是一个整体,包名仅仅是开头的名字)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值