Linux系统中,syslog服务器是一个重要的组件,它可以收集、存储和分析系统日志,帮助用户及时发现和解决问题。本文将介绍如何在Linux上配置syslog服务器。
首先,我们需要安装syslog服务器软件。在Ubuntu/Debian上,可以使用apt-get命令安装rsyslog软件包:
sudo apt-get install rsyslog
在CentOS/RedHat上,可以使用yum命令安装rsyslog软件包:
sudo yum install rsyslog
接下来,我们需要修改rsyslog的配置文件/etc/rsyslog.conf。打开该文件,将下面的内容添加到文件中:
$ModLoad imudp # 加载UDP支持 $UDPServerRun 514 # 监听UDP 514端口 $ModLoad imtcp # 加载TCP支持 $InputTCPServerRun 514 # 监听TCP 514端口 $template RemoteLogs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log" *.* ?RemoteLogs & ~
这些配置会使得rsyslog监听UDP和TCP协议的514端口(Syslog标准端口)并把日志保存到/var/log目录下。然后重启rsyslog服务使之生效:
sudo service rsyslog restart
最后一步是在其它机器上配置SysLog客户端来将日志发送到SysLog服务器上。打开其它机器上的/etc/rsyslog.conf文件并添加如下内容来将日志发送到SysLog服务器上去:
*.* @192.168.1.100:514
这里192.168.1.100是SysLog服务器的IP地址。保存文件并重启SysLog客户端即可生效。此外还应该注意的是如果你想要远程访问SysLog服务器上的日志文件就应该考虑开启SSH或者FTP权限。 p >
SYSLinux是一个用于提供引导加载的服务程序。与其说SYSLinux是一个服务程序,不如说更需要里面的引导文件,在安装好SYSLinux服务程序软件包后,/usr/share/syslinux目录中会出现很多引导文件。
[root@linuxprobe ~]# yum install syslinux
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Resolving Dependencies
--> Running transaction check
---> Package syslinux.x86_64 0:4.05-8.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
syslinux x86_64 4.05-8.el7 rhel 1.0 M
Transaction Summary
================================================================================
Install 1 Package
Total download size: 1.0 M
Installed size: 2.3 M
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : syslinux-4.05-8.el7.x86_64 1/1
Verifying : syslinux-4.05-8.el7.x86_64 1/1
Installed:
syslinux.x86_64 0:4.05-8.el7
Complete!
我们首先需要把SYSLinux提供的引导文件复制到TFTP服务程序的默认目录中,也就是前文提到的文件pxelinux.0,这样客户端主机就能够顺利地获取到引导文件了。另外在RHEL 7系统光盘镜像中也有一些我们需要调取的引导文件。确认光盘镜像已经被挂载到/media/cdrom目录后,使用复制命令将光盘镜像中自带的一些引导文件也复制到TFTP服务程序的默认目录中。
[root@linuxprobe ~]# cd /var/lib/tftpboot
[root@linuxprobe tftpboot]# cp /usr/share/syslinux/pxelinux.0 .
[root@linuxprobe tftpboot]# cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img} .
[root@linuxprobe tftpboot]# cp /media/cdrom/isolinux/{vesamenu.c32,boot.msg} .
然后在TFTP服务程序的目录中新建pxelinux.cfg目录,虽然该目录的名字带有后缀,但依然也是目录,而非文件!将系统光盘中的开机选项菜单复制到该目录中,并命名为default。这个default文件就是开机时的选项菜单,如图19-4所示。
图19-4 Linux系统的引导菜单界面
[root@linuxprobe tftpboot]# mkdir pxelinux.cfg
[root@linuxprobe tftpboot]# cp /media/cdrom/isolinux/isolinux.cfg pxelinux.cfg/default
默认的开机菜单中有两个选项,要么是安装系统,要么是对安装介质进行检验。既然我们已经确定采用无人值守的方式安装系统,还需要为每台主机手动选择相应的选项,未免与我们的主旨(无人值守安装)相悖。现在我们编辑这个default文件,把第1行的default参数修改为linux,这样系统在开机时就会默认执行那个名称为linux的选项了。对应的linux选项大约在64行,我们将默认的光盘镜像安装方式修改成FTP文件传输方式,并指定好光盘镜像的获取网址以及Kickstart应答文件的获取路径:
[root@linuxprobe tftpboot]# vim pxelinux.cfg/default
1 default linux
2 timeout 600
3
4 display boot.msg
5
6 # Clear the screen when exiting the menu, instead of leaving the menu displa yed.
7 # For vesamenu, this means the graphical background is still displayed witho ut
8 # the menu itself for as long as the screen remains in graphics mode.
9 menu clear
10 menu background splash.png
11 menu title Red Hat Enterprise Linux 7.0
12 menu vshift 8
13 menu rows 18
14 menu margin 8
15 #menu hidden
16 menu helpmsgrow 15
17 menu tabmsgrow 13
18
19 # Border Area
20 menu color border * #00000000 #00000000 none
21
22 # Selected item
23 menu color sel 0 #ffffffff #00000000 none
24
25 # Title bar
26 menu color title 0 #ff7ba3d0 #00000000 none
27
28 # Press [Tab] message
29 menu color tabmsg 0 #ff3a6496 #00000000 none
30
31 # Unselected menu item
32 menu color unsel 0 #84b8ffff #00000000 none
33
34 # Selected hotkey
35 menu color hotsel 0 #84b8ffff #00000000 none
36
37 # Unselected hotkey
38 menu color hotkey 0 #ffffffff #00000000 none
39
40 # Help text
41 menu color help 0 #ffffffff #00000000 none
42
43 # A scrollbar of some type? Not sure.
44 menu color scrollbar 0 #ffffffff #ff355594 none
45
46 # Timeout msg
47 menu color timeout 0 #ffffffff #00000000 none
48 menu color timeout_msg 0 #ffffffff #00000000 none
49
50 # Command prompt text
51 menu color cmdmark 0 #84b8ffff #00000000 none
52 menu color cmdline 0 #ffffffff #00000000 none
53
54 # Do not display the actual menu unless the user presses a key. All that is displayed is a timeout message.
55
56 menu tabmsg Press Tab for full configuration options on menu items.
57
58 menu separator # insert an empty line
59 menu separator # insert an empty line
59 menu separator # insert an empty line
60
61 label linux
62 menu label ^Install Red Hat Enterprise Linux 7.0
63 kernel vmlinuz
64 append initrd=initrd.img inst.stage2=ftp://192.168.10.10 ks=ftp://192.168.10.10/pub/ks.cfg quiet
65
………………省略部分输出信息………………
输入/输出重定向大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回到您的终端。一个命令通常从一个叫标准输入...
Linux系统下基本命令: 要区分大小写uname 显示版本信息(同win2K的 ver)dir 显示当前目录文件,ls -al 显示包括隐藏文件(同win...
Docker 默认的桥接网卡是 docker0。它只会在本机桥接所有的容器网卡,举例来说容器的虚拟网卡在主机上看一般叫做 veth* 而 Docke...
对DaemonSet执行滚动更新本文介绍了如何对DaemonSet执行滚动更新。在开始之前你必须拥有一个Kubernetes的集群,同时你的Kubernet...
Docker 引擎使用的是 Linux 内核特性,所以我们需要在 Windows 上使用一个轻量级的虚拟机 (VM) 来运行 Docker。我们通过 Boot2Do...
方法一、通过 Dockerfile 构建创建Dockerfile首先,创建目录python,用于存放后面的相关东西。@:~$ mdkir -p ~/python ~/python/m...
介绍在Flutter中,widget由其底层的RenderBox对象渲染。 渲染框由它们的父级给出约束,并且在这些约束下调整自身大小。约束由最...
介绍PathProvider插件提供了一种平台透明的方式来访问设备文件系统上的常用位置。该类当前支持访问两个文件系统位置:临时目录:...