理解 Linux 配置文件
- 格式:doc
- 大小:41.00 KB
- 文档页数:8
linux中logrotate的配置和理解在linux系统当中,日志是十分重要的,它可以帮我们诊断程序的问题,了解程序的运行状态等等,所以在linux系统当中查看日志和管理日志就显得十分重要了。
logrotate就是一个十分方便的管理工具。
一.logrotate是什么logrotate 程序是一个日志文件管理工具。
用来把旧的日志文件删除,并创建新的日志文件,我们把它叫做“转储”。
我们可以根据日志文件的大小,也可以根据其天数来转储,这个过程一般通过cron 程序来执行。
logrotate 程序还可以用于压缩日志文件,以及发送日志到指定的E-mail 。
一般logrotate的配置文件名为logrotate.conf,存放在/etc/logrotate.conf,对应到我四.cron是什么cron 是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程。
cron 假定系统持续运行。
如果当某任务被调度时系统不在运行,该任务就不会被执行。
要使用cron 服务,必须在运行crond 服务。
五.cron配置文件shell 环境(在这个例子里是bash shell);PATH 变量定义用来执行命令的路径。
cron 任务的输出被邮寄给MAILTO 变量定义的用户名。
如果MAILTO 变量被定义为空白字符串(MAILTO=""),电子邮件就不会被寄出。
HOME 变量可以用来设置在执行命令或脚本时使用的主目录。
在我们采集仪上cron的配置文件是/var/spool/cron/crontabs/root,其备份是在/home/app/conf/root ,每次采集仪开机都会使用备份来覆盖原先的。
所以最好修改备份的,然后重启采集仪就ok了。
我们采集仪上配置文件内容如下:六.cron参数讲解。
Linux--环境变量配置⽂件
Linux系统中环境变量配置⽂件分为两类:
1. 全局环境变量配置⽂件 /etc/profile
2. ⽤户环境变量配置⽂件 ~/.bash_profile 、 ~/.bash_login ~/.profile
3. 全局环境变量配置⽂件 /etc/profile ⽤于设置供这个系统可使⽤的环境变量。
该配置⽂件会被每个⽤户的登陆shell 所获取。
/etc/profile ⽂件的主要作⽤是:
1. 定义PATH变量:根据登陆⽤户的UID来定义PATH变量中是否应该包括/sbin这个系统命令⽬录。
2. 定义MAIL变量:
3. 定义USER变量:
4. 定义HOSTNSME变量:
5. 定义HISTORY变量:
6. 调⽤外部⽂件来完善环境变量
⽤户环境变量~/.bash_profile ~/.bash_login ~/.profile 主要作⽤:
1. 定义PATH变量,并将PATH变量转为环境变量。
2. 判断⽤户主⽬录下是否存在~/.bashrc⽂件,若有则执⾏。
~/.bashrc ⽂件作⽤如下:
1. 定义bash中的别名命令
2. 在⼀些Linux发⾏版中~/.bashrc ⽂件会调⽤ /etc/bashrc 这个⽂件。
Linuxhostname主机名配置⽂件etchosts详解1、什么是Linux主机名⽆论在局域⽹还是INTERNET上,每台主机都有⼀个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。
但IP地址不⽅便记忆,所以⼜有了域名。
域名只是在公⽹(INtERNET)中存在(以实验为⽬的的局域⽹域⽹实验性除外),每个域名都对应⼀个IP地址,但⼀个IP 地址可有对应多个域名。
域名类型 Linux 这样的;主机名是⽤于什么的呢?在⼀个局域⽹中,每台机器都有⼀个主机名,⽤于主机与主机之间的便于区分,就可以为每台机器设置主机名,以便于以容易记忆的⽅法来相互访问。
⽐如我们在局域⽹中可以为根据每台机器的功⽤来为其命名。
主机名相关的配置⽂件:/etc/hosts;2. Linux主机名配置⽂件主机名的配置⽂件⼤多是/etc/hosts ;hosts - The static table lookup for Linux hostname(主机名查询静态表);由于 Linux发⾏版本众多,与主机名相关的配置⽂件有时也有所不同。
现在我们说说常见版本的主机名配置⽂件;2.1 Linux主机名置⽂件 /etc/hostsFedora/Redhat 或以Fedora/Redhat为基础打包的发⾏版,主机名配置⽂件是 /etc/hosts Debian或以Debian为基础打包的发⾏版,主机名配置⽂件是 /etc/Linux hostname 和/etc/hosts Slackware的主机名配置⽂件是 /etc/hosts 那我们来读读 /etc/hosts的内容,看这个⽂件是⽤来做什么的。
hosts 配置⽂件是⽤来把主机名字映射到IP地址的⽅法,这种⽅法⽐较简单。
但这种映射只是本地机的映射,也就是说每台机器都是独⽴的,所有的计算机都不能相互通过Linux hostname来访问。
注:在debian 中还有⼀个/etc/Linux hostname的⽂件,这个⽂件就是直接把本地主机名写进去就⾏了,但要和 /etc/hosts中的本地主机名保持⼀致。
selinux详解及配置⽂件selinux详解selinux 的全称是Security Enhance Linux,就是安全加强的Linux。
在Selinux之前root账号能够任意的访问所有⽂档和服务;如果某个⽂件设为777,那么任何⽤户都可以访问甚⾄删除。
这种⽅式称为DAC(主动访问机制),很不安全。
DAC⾃主访问控制:⽤户根据⾃⼰的⽂件权限来决定对⽂件的操作,也就是依据⽂件的own,group,other/r,w,x 权限进⾏限制。
Root有最⾼权限⽆法限制。
r,w,x权限划分太粗糙。
⽆法针对不同的进程实现限制。
Selinux则是基于MAC(强制访问机制),简单的说,就是程序和访问对象上都有⼀个安全标签(即selinux上下⽂)进⾏区分,只有对应的标签才能允许访问,否则即使权限是777,也是不能访问的。
在selinux中,访问控制属性叫做安全上下⽂,所有客体(⽂件、进程间通讯通道、套接字、⽹络主机等)和主体(进程)都有与其关联的安全上下⽂,⼀个安全上下⽂由三部分组成:⽤户(u)、⾓⾊(r)、和类型(t)标识符。
但我们最关注的是第三部分当程序访问资源时,主体程序必须要通过selinux策略内的规则放⾏后,就可以与⽬标资源进⾏安全上下⽂的⽐对,若⽐对失败则⽆法存取⽬标,若⽐对成功则可以开始存取⽬标,最终能否存取⽬标还要与⽂件系统的rwx权限的设定有关,所以启⽤了selinux后出现权限不符的情况时,你就得⼀步⼀步分析可能出现的问题了。
1.selinux状态查看与配置:selinux的配置⽂件位置:/etc/selinux/config,它还有个链接在/etc/sysconfig/selinux.使⽤config⽂件来配置selinux(通过配置⽂件修改selinux的状态属于永久修改,要重启系统才⽣效)[root@localhost ~]# ls /etc/sysconfig/selinux -llrwxrwxrwx. 1 root root 17 Jan 10 19:48 /etc/sysconfig/selinux -> ../selinux/config(1)配置⽂件[root@make_blog ~]# cat /etc/sysconfig/selinux# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:# enforcing - SELinux security policy is enforced.# permissive - SELinux prints warnings instead of enforcing.# disabled - No SELinux policy is loaded.SELINUX=disabled# SELINUXTYPE= can take one of three two values:# targeted - Targeted processes are protected,# minimum - Modification of targeted policy. Only selected processes are protected.# mls - Multi Level Security protection.SELINUXTYPE=targetedselinux=enforcing#此项定义selinux状态#enforcing-是强制模式系统,它受selinux保护。
LXC(Linuxcontainers)配置⽂件简介LXC配置⽂件的man page :LXC配置项都是以key=value的形式,#开始的⼀⾏代码注释。
配置也可以在lxc-execute或者lxc-start的命令⾏以-s key=value设定这⾥介绍⼀下常⽤的配置:1.Cgroup部分(所有Cgroup⼦系统的配置参数均可以通过lxc-cgroup 命令进⾏动态获得或者调整)LXC采⽤Cgroup来对容器进⾏资源管理,因此Cgroup的各个⼦系统均可以使⽤。
实际上使⽤LXC之前,必须执⾏mount none -t cgroup/cgroup 挂载cgroup,或者采⽤echo "none /cgroup cgroup defaults 0 0" >> /etc/fstab让系统每次启动⾃动挂载Cgroup。
这样以来Cgroup的所有⼦系统⾃动挂载到了⼀个hierarchy,LXC在创建容器的时候就在/ group下创建⼀个⼦group以实现对容器的资源控制,我们就可以根据需要设定相应⼦系统的参数来达到⽬的。
Cgroup部分的配置都是以lxc.cgroup.[subsystem name].key=value的形式出现的.例如:lxc.cgroup.cpu.shares=512lxc.cgroup.cpuset.cpus=1.2下⾯介绍下⽤到的Cgroup的⼦系统的⽤法(更多关于Cgroup的介绍,请到RedHat官⽅⽂档⽹上下载)cpu ⼦系统调度对 cgroup 的 CPU 访问。
可根据以下参数调度对 CPU 资源的访问,每个参数都独⽴存在于 cgroup 虚拟⽂件系统的伪⽂件中:cpu.shares包含⽤来指定在 cgroup 中的任务可⽤的相对共享 CPU 时间的整数值。
例如:在两个 cgroup 中都将 cpu.shares 设定为 1 的任务将有相同的 CPU 时间,但在 cgroup 中将 cpu.shares 设定为 2的任务.特别说明:根据实验结果以及源代码分析,根⽬录的shares值默认是1024,同⼀层次的task和task group平等的接受调度。
Linux DHCP配置文件详解在配置DHCP服务器时,需要对dhcpd.conf配置文件文件进行修改,该文件默认放在/etc目录下。
在安装DHCP服务器完成后,该配置文件在默认情况下没有任何信息。
但是系统提供有DHCP服务配置文件的模板文件,用户可以在/usr/share/doc/dhcp-3.0.3/dhcpd.conf.sample路径下,打开模板文件进行查看。
在配置DHCP服务器配置文件时,可以先将该模板文件重命名为dhcpd.conf并DHCP的配置很简单,只要将dhcp.conf设置好即可。
不过编辑此文件时需要注意以下几点:●# 为批注符号。
●除了括号那一行外,其他每一行后面都要以“;”为结尾。
●设置的项目都有其独特的名称,形式为“<参数代码><设置内容>”,例如“default-lease-time 259200”。
●某些项目必须利用option来设置,形式为“option <参考代码><设置内容>”,例如“optiondomain-name “”;”。
DHCP的IP分配可分为动态IP和静态IP,其中需要了解的是,如果需要设置静态IP,则需要知道设置成静态IP的那台计算机的(MAC地址)。
这时,可以使用arp及ifconfig命令来查询接口的MAC地址。
此外,还需进行如下几项设置。
1.整体设置(Global)整体设置包括设置租约期限、DNS的IP地址、路由器的IP地址、动态DNS (DDNS)更新的类型等。
当静态IP及动态IP内没有规范到某些设置时,则以整体设置值为准。
最常使用的参数如下:●Default-lease-time 时间默认的租约时间,单位为秒。
●Max-lease-time 时间最大租约时间,当客户端超过租约时间但尚未更新IP地址时,最长可以使用该IP地址的时间。
●Option domain-name “域名”如果在/etc/resolv.conf文件里设置了search ,则表示当要搜索计算机名称时,DNS系统会主动帮客户端加上这个领域的名称。
Linux:SSH服务配置⽂件详解SSH服务配置⽂件详解SSH客户端配置⽂件/etc/ssh/ssh——config配置⽂件概要Host * #选项“Host”只对能够匹配后⾯字串的计算机有效。
“*”表⽰所有的计算机。
ForwardAgent no #设置连接是否经过验证代理(如果存在)转发给远程计算机。
ForwardX11 no #设置X11连接是否被⾃动重定向到安全的通道和显⽰集(DISPLAY set)RhostsAuthentication n #设置是否使⽤基于rhosts的安全验证。
RhostsRSAAuthentication no #设置是否使⽤⽤RSA算法的基于rhosts的安全验证。
RSAAuthentication yes #设置是否使⽤RSA算法进⾏安全验证。
PasswordAuthentication yes #设置是否使⽤⼝令验证。
FallBackToRsh no #设置如果⽤ssh连接出现错误是否⾃动使⽤rsh。
UseRsh no #设置是否在这台计算机上使⽤“rlogin/rsh”。
BatchMode no #如果设为“yes”,passphrase/password(交互式输⼊⼝令)的提⽰将被禁⽌。
当不能交互式输⼊⼝令的时候,这个选项对脚本⽂件和批处理任务⼗分有⽤。
CheckHostIP yes #设置ssh是否查看连接到服务器的主机的IP地址以防⽌DNS欺骗。
建议设置为“yes”。
StrictHostKeyChecking no #如果设置成“yes”,ssh就不会⾃动把计算机的密匙加⼊“$HOME/.ssh/known_hosts”⽂件,并且⼀旦计算机的密匙发⽣了变化,就拒绝连接。
IdentityFile ~/.ssh/identity #设置从哪个⽂件读取⽤户的RSA安全验证标识。
Port 22 #设置连接到远程主机的端⼝。
Cipher blowfish #设置加密⽤的密码。
Linux终端命令环境变量与配置文件Linux操作系统是一种开源的、免费的操作系统,广泛应用于服务器和个人电脑等各种设备上。
其终端命令行界面是Linux系统的核心特性之一,通过终端命令可以进行系统管理、文件操作、软件安装等各种任务。
在Linux的终端命令行环境中,环境变量和配置文件是非常重要的概念,它们可以影响系统的行为和用户的使用体验。
一、环境变量环境变量是一种全局变量,它可以影响系统的运行环境和命令行程序的行为。
在Linux中,我们可以通过设置环境变量来定制系统的一些行为,比如路径搜索、语言设置、字体显示等。
Linux系统中的环境变量主要通过以下两个文件进行配置:1. /etc/environment/etc/environment文件是全局环境变量的配置文件,只有root管理员可以编辑该文件。
在该文件中,可以直接设置键值对的形式来定义环境变量,如下所示:```VAR_NAME=value```其中VAR_NAME表示环境变量名,value表示对应的值。
例如,我们可以设置一个名为LANG的环境变量来指定系统的默认语言:```LANG=en_US.UTF-8```2. ~/.bashrc~/.bashrc文件是当前用户的个人环境变量的配置文件,每个用户可以在该文件中自定义环境变量。
该文件在用户登录时自动执行,可以用于设置一些用户特定的环境变量。
用户可以使用文本编辑器打开~/.bashrc文件并新增或修改环境变量的定义,如下所示:```export VAR_NAME=value```其中VAR_NAME和value的含义与/etc/environment文件中的定义相同。
例如,我们可以在~/.bashrc文件中设置一个名为JAVA_HOME 的环境变量:```export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64```修改完~/.bashrc文件后,需要重新加载该文件,或者关闭终端窗口重新打开,才能让新的环境变量生效。
Linux各种重要配置⽂件详解1:⽹卡⽂件/etc/sysconfig/network-scripts/ifcfg-eth0[root@Gin scripts]# cat /etc/sysconfig/network-scripts/ifcfg-eth0DEVICE=eth0 ## 物理设备名,eth0为第⼀块⽹卡;eth1为第⼆块⽹卡HWADDR=00:0C:29:84:0C:21 ## ⽹卡的MAC地址,48位TYPE=Ethernet ## 以太⽹UUID=09ae6890-2925-4ca0-9cbc-e937593624f8 ## 唯⼀的⼀个⽤户标识,相当于⾝份证号码!如查看磁盘设备的UUID使⽤blkid命令ONBOOT=yes ## 控制⽹卡是否开机启动NM_CONTROLLED=yes ##是否通过networkmanager管理⽹卡设备BOOTPROTO=dhcp ## proto取下列值之⼀:none,引导时不使⽤协议;static,静态分配地址;bootp,使⽤BOOTP协议;dhcp,使⽤DHCP协议IIPADDR=192.168.17.128 ## IP地址 NETMASK=255.255.255.0 ## ⼦⽹掩码,划分⽹络位和主机位DNS2=202.106.0.20 ## DNS是把变成了baidu服务器IP。
DNS就是域名和IP的解析⼯具DNS1=8.8.8.8GATEWAY=192.168.0.1 ## ⽹关地址,路由器的地址USERCTL=noPEERDNS=yesIPV6INIT=no2:/etc/fstabfstab - static information about the filesystems作⽤:设置⽂件系统挂载信息的⽂件,使得开机能够⾃动挂载磁盘分区[root@Gin scripts]# cat /etc/fstab## /etc/fstab# Created by anaconda on Tue Jan 24 02:46:13 2017## Accessible filesystems, by reference, are maintained under '/dev/disk'# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#UUID=91a2efd1-8bf1-42d2-a387-e22e4b665a36 / ext4 defaults 1 1UUID=3f124651-9d7a-42b4-8cfa-11053a5a8ffc /boot ext4 defaults 1 2UUID=8cb814f4-f2f4-4bb0-a127-c97092845fcf swap swap defaults 0 0tmpfs /dev/shm tmpfs defaults 0 0devpts /dev/pts devpts gid=5,mode=620 0 0sysfs /sys sysfs defaults 0 0proc /proc proc defaults 0 0字段定义/etc/fstab ⽂件包含了如下字段,通过空格或 Tab 分隔:<file system> <dir> <type> <options> <dump> <pass>#第⼀列:要被挂载的磁盘设备#第⼆列:前⾯⽬录的挂载点(前⾯的⽬录挂载到哪个⽬录下)#第三列:挂载的⽂件系统类型!⽀持许多种不同的⽂件系统:ext2, ext3, ext4, reiserfs, xfs, jfs, smbfs, iso9660, vfat, ntfs, swap 及 auto。
Linux终端命令系统内核参数配置Linux作为一种强大而灵活的操作系统,其内核参数配置对于系统性能的优化和调整至关重要。
系统内核参数的配置可以影响到操作系统的性能、稳定性和安全性,因此正确地配置和优化内核参数是保证系统正常运行的重要一环。
本文将介绍Linux终端命令下的系统内核参数配置方法,以帮助读者深入了解和灵活应用这些配置参数。
1. 如何查看当前系统的内核参数配置在Linux终端下,可以运行以下命令查看当前系统的内核参数配置:```sysctl -a```该命令会列出所有的内核参数及其当前值。
通过查看当前配置,我们可以了解系统的默认值,以便后续的优化和调整。
2. 内核参数配置文件Linux系统的内核参数配置都保存在/sys/目录下的各个文件中。
这些文件可以通过编辑文本文件的方式进行修改。
例如,要修改TCP连接的超时时间,可以编辑/sys/net/ipv4/tcp_keepalive_time文件:```vi /sys/net/ipv4/tcp_keepalive_time```3. 修改内核参数的方法3.1 临时修改法在终端中使用sysctl命令可以临时修改某个内核参数的值。
例如,要修改内核的TCP连接超时时间,可以运行以下命令:```sysctl -w net.ipv4.tcp_keepalive_time=300```3.2 永久修改法如果要永久修改某个内核参数的值,需要修改对应的配置文件。
常用的配置文件有:- /etc/sysctl.conf:针对整个系统设定的内核参数配置文件。
- /etc/sysctl.d/:目录下可以放置多个以.conf为后缀名的配置文件,每个文件中可以配置多个内核参数。
以编辑/etc/sysctl.conf为例,可以使用vi或其他编辑器打开该文件,然后在文件中添加或修改需要的内核参数配置,保存文件后重启系统以使配置生效。
4. 常见的内核参数配置案例4.1 调整TCP连接参数TCP连接参数对于网络传输的性能和稳定性非常重要。
linux的hosts文件配置规则-概述说明以及解释1.引言1.1 概述概述部分的内容Linux的hosts文件是一种用于本地域名解析的配置文件,它可以将域名映射到特定的IP地址,从而实现在本地系统中解析域名的功能。
这个文件通常位于Linux操作系统中的/etc目录下,是一个文本文件,可以通过文本编辑器进行修改。
hosts文件的配置规则非常简单,它由多行组成,每一行包含一个IP 地址和一个或多个域名。
当系统需要解析域名时,会首先在hosts文件中查找对应的IP地址,如果找到就直接使用该IP地址进行解析,而不会向DNS服务器发送请求。
hosts文件的作用非常广泛,它可以用于屏蔽广告、加速访问、解决DNS解析问题等。
通过在hosts文件中添加相应的映射规则,我们可以将一些常用的域名直接映射到本地的虚拟机或者其他的IP地址上,从而实现访问加速的效果。
此外,hosts文件的配置规则还可以用于屏蔽广告。
我们可以通过在hosts文件中添加一些广告域名的映射规则,将其映射到本地的回环地址(127.0.0.1)上,从而实现屏蔽广告的效果。
需要注意的是,hosts文件的配置规则是按照先到先得的原则进行匹配的。
也就是说,当系统需要解析域名时,它会从hosts文件的第一行开始查找,如果找到匹配的规则就会立即停止查找,而不会继续向下查找。
总而言之,hosts文件是一种简单而又实用的配置文件,在Linux系统中发挥着重要作用。
通过合理地配置hosts文件,我们可以实现域名解析的加速、屏蔽广告等功能,提升系统的性能和用户体验。
在接下来的文章中,我们将详细介绍hosts文件的格式和配置规则,并探讨其在系统中的重要性和潜在的发展方向。
1.2 文章结构文章结构在本篇长文中,将探讨Linux系统中hosts文件的配置规则。
文章分为引言、正文和结论三个部分。
引言部分首先对整篇文章进行了概述,概述了本文的主题——Linux 的hosts文件配置规则,并简要介绍了hosts文件在Linux系统中的作用和重要性。
linux中ip地址的配置文件Linux是多用户和多任务操作系统,是网络操作系统的核心。
IP地址是网络中计算机或客户端的唯一标识,它可以帮助用户在网络中定位,让用户可以管理网络。
Linux操作系统定义了一个特殊的配置文件来实现IP地址的配置,称为Linux的IP地址配置文件。
Linux的IP地址配置文件位于/etc/sysconfig/network-scripts/ifcfg-eth0中,以文本文件的形式存储,文件名为ifcfg-eth0,eth0为物理网卡的设备名称。
该文件有六个基本设置,分别是BOOTPROTO, IPADDR, NETMASK, GATEWAY, DNS1和DNS2。
BOOTPROTO是网卡的启动协议,一般情况下,可以设置为dhcp 即可。
dhcp协议可以为设备自动分配IP地址,而不需要用户手动输入。
当设置为static时,需要用户手动输入IP地址。
IPADDR为IP地址,它由四个十进制数字组成,用点分割,称为IP地址的整数表示。
NETMASK是IP地址的子网掩码,可以根据网络状况进行设置。
GATEWAY是网关地址,它可以帮助将本机连接到其他网络,以便于访问其他网络上的计算机。
DNS1和DNS2分别是主DNS和备份DNS,用于解析域名。
在Linux中,用户可以使用命令行工具来配置IP地址。
命令su -者 sudo -i以获得root权限,然后使用命令 ifconfig eth0 [IPADDR] netmask [NETMASK]设置IP地址。
使用ifconfig命令可以显示出Linux服务器上的所有网络接口的信息,包括网络接口的MAC地址,IP地址,子网掩码等等。
如果需要更改Linux服务器上的IP地址,可以使用命令 ifconfig eth0 [IPADDR] netmask [NETMASK]实现,这将覆盖原来的IP地址信息。
在Linux系统中,用户可以使用ifconfig命令设置IP地址,但是在长期使用过程中,修改IP地址可能会导致一些问题,例如IP地址信息丢失,网络连接不稳定等。
Linux2 配置文件来管理用户组前面,我们可以通过配置用户账户的文件来管理用户账户,同样,在这里,我们也可以通过配置文件来管理用户组账户。
用户组账户的的信息保存在/etc/group,/e tc/gshadow这两个配置文件中。
1.用户组账户文件/etc/groupgroup文件是用来保存用户组账户的相关信息,任何一个用户都可以读取里面的文件的内容。
每一行是一个用户账户的信息,每行有4个字段组成,每个字段中间用“:”隔开。
现将group文件显示如下:●用户组账户名:用户组账户的名称,如用户组账户user。
●密码:用户组账户的密码。
我们看到这里的密码都是以x代替,真正的密码信息保存/etc/gpasswd文件中。
●用户组账户标识码GID:该数字用于表示一个惟一的用户组账户,如用户组账户aa的GID是502。
●组成员列表:属于该用户组的用户账户成员列表,列表中多个用户账户用“:”隔开。
●从上面的执行结果可以看出,最后5行的GID号都大于500,表明它们都是普通用户组。
而其他都是系统默认组。
2.组密码文件/etc/gshadowgshadow这个文件中保存的是用户组账户的口令,组管理员的信息,该文件只有root系统管理员才可以读取。
同样,每一行表示一个用户账户的信息,每行有4个字段组成,每个字段中间用“:”隔开。
打开gshadow文件,其内容显示如下:各字段的含义如下,●用户组账户名:用户组账户的名称,于group文件的用户组账户名想对应●用户组密码:用于保存己加密的用户组账户密码,一般不使用●组管理员账户:用于保存用户组的管理员账户,用户组的管理员有权力将用户添加到该用户组,或可以从用户组中删除某个用户●组成员列表:用于保存该用户组的成员用户账户,列表中多个用户之间用“:”号隔开。
理解Linux的环境变量和路径设置在Linux系统中,环境变量和路径设置是操作系统中非常重要的概念。
正确理解和使用环境变量和路径设置,对于开发人员和系统管理员来说至关重要。
本文将从基本概念、设置方法和常见问题三个方面来介绍Linux的环境变量和路径设置。
一、基本概念1.1 环境变量环境变量是指在操作系统中用来存储系统配置信息的变量。
它可以影响系统的行为和软件的运行。
在Linux中,每个用户都有自己的环境变量设置,可以根据自己的需要进行修改和定制。
1.2 路径设置路径设置是指在系统中定义可执行文件的访问路径。
通过将可执行文件所在的路径添加到系统的路径列表中,可以使系统能够在任何位置执行该文件,而无需指定完整的路径。
二、设置方法2.1 环境变量的设置在Linux系统中,可以通过以下几种方式设置环境变量:1)命令行设置:可以使用export命令来设置临时的环境变量。
例如,export PATH=/usr/local/bin:$PATH可以将/usr/local/bin目录添加到系统的可执行文件路径列表中。
2)配置文件设置:可以通过修改用户目录下的.bashrc或者.profile 文件来设置永久生效的环境变量。
打开文件,在文件末尾添加类似的语句即可。
3)全局设置:可以通过修改/etc/environment或者/etc/profile文件来设置全局生效的环境变量。
需要root权限进行修改。
2.2 路径设置的方法在Linux系统中,可以通过以下几种方式进行路径设置:1)命令行设置:可以通过export命令将路径添加到PATH环境变量中。
例如,export PATH=/usr/local/bin:$PATH可以将/usr/local/bin目录添加到系统的路径列表中。
2)配置文件设置:可以通过修改用户目录下的.bashrc或者.profile 文件来设置永久生效的路径设置。
打开文件,在文件末尾添加export PATH=/usr/local/bin:$PATH类似的语句即可。
linux中sysconfig的作用
sysconfig是Linux系统中的一个配置文件,主要用于设置系统的各种参数。
这些参数包括网络配置、服务启动、内核参数等,可以通过修改sysconfig配置文件来实现。
sysconfig文件通常存放在
/etc/sysconfig目录下。
在网络配置方面,sysconfig文件可以设置主机名、IP地址、网关、DNS等信息。
通过修改这些配置参数可以使Linux系统连接到不同的网络环境中,实现网络通信。
另外,sysconfig文件还可以用于启动和关闭不同的服务。
例如,可以通过修改sysconfig文件来启动或关闭FTP、SSH、Apache等服务。
这些服务的启动和关闭状态会被记录在sysconfig配置文件中,方便管理员进行管理。
在内核参数方面,sysconfig文件可以设置内核的各种参数,如进程数、文件句柄数、内存大小等。
通过调整这些参数可以优化系统性能,并提高系统的稳定性。
总之,sysconfig是Linux系统中一个十分重要的配置文件,可以设置系统的各种参数,方便管理员进行系统管理和配置。
- 1 -。
【Linux】Systemd配置⽂件说明及编写(2)1. 开机启动对于⽀持 systemd 的软件,如果想要设置开机启动,就执⾏如下命令(以 http 为例):systemctl enable httpd上⾯的命令相当于在 /etc/systemd/system/ ⽬录⾥添加了⼀个符号链接,指向 /usr/lib/systemd/system/ ⾥⾯的 httpd.service ⽂件。
这是因为开机时,Systemd 只执⾏ /etc/systemd/system/ ⽬录⾥⾯的配置⽂件。
这也就意味着,将修改后的配置⽂件放在这⾥⽬录⾥,就可以达到覆盖原始配置的效果。
2. 启动服务启动服务使⽤如下命令:systemctl start httpd执⾏完上⾯的命令,使⽤ systemctl status httpd 查看:[root@localhost ~]# systemctl status httpd● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)Active: active (running) since Sat 2019-06-15 10:49:35 CST; 2s agoDocs: man:httpd(8)man:apachectl(8)Process: 3253 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)Main PID: 3258 (httpd)Status: "Processing requests..."CGroup: /system.slice/httpd.service├─3258 /usr/sbin/httpd -DFOREGROUND├─3259 /usr/sbin/httpd -DFOREGROUND├─3260 /usr/sbin/httpd -DFOREGROUND├─3261 /usr/sbin/httpd -DFOREGROUND├─3262 /usr/sbin/httpd -DFOREGROUND└─3263 /usr/sbin/httpd -DFOREGROUNDJun 15 10:49:35 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...Jun 15 10:49:35 localhost.localdomain systemd[1]: Started The Apache HTTP Server.说明: (1)Loaded⾏:配置⽂件的位置,是否设为开机启动; (2)Active⾏:表⽰正在运⾏; (3)Main⾏:主进程PID; (4)Status⾏:由应⽤本⾝提供的软件当前状态; (5)CGroup⾏:应⽤的所有⼦进程 (6)⽇志块:应⽤的⽇志3. 停⽌服务停⽌正在运⾏服务,命令如下:systemctl stop httpd有时候,程序没有响应了,使⽤ systemctl stop 停不下来,这时候就需要发送 kill 信号:systemctl kill httpd此外,重启服务systemctl restart httpd4. service 配置⽂件⼀个服务怎么启动,完全由它的配置⽂件决定。
理解Linux 配置文件介绍每个 Linux 程序都是一个可执行文件,它含有操作码列表,CPU 将执行这些操作码来完成特定的操作。
例如,ls 命令是由 /bin/ls 文件提供的,该文件含有机器指令的列表,在屏幕上显示当前目录中文件的列表时需要使用这些机器指令。
几乎每个程序的行为都可以通过修改其配置文件来按照您的偏好或需要去定制。
Linux 中有没有一个标准的配置文件格式?一句话,没有。
不熟悉 Linux 的用户(一定)会感到沮丧,因为每个配置文件看起来都象是一个要迎接的新挑战。
在 Linux 中,每个程序员都可以自由选择他或她喜欢的配置文件格式。
可以选择的格式很多,从 /etc/shells 文件(它包含被一个换行符分开的 shell 的列表),到 Apache 的复杂的 /etc/httpd.conf 文件。
什么是系统配置文件?内核本身也可以看成是一个“程序”。
为什么内核需要配置文件?内核需要了解系统中用户和组的列表,进而管理文件权限(即根据权限判定特定用户(UNIX_USERS)是否可以打开某个文件)。
注意,这些文件不是明确地由程序读取的,而是由系统库所提供的一个函数读取,并被内核使用。
例如,程序需要某个用户的(加密过的)密码时不应该打开 /etc/passwd 文件。
相反,程序应该调用系统库的 getpw() 函数。
这种函数也被称为系统调用。
打开 /etc/passwd 文件和之后查找那个被请求的用户的密码都是由内核(通过系统库)决定的。
除非另行指定,Red Hat Linux 系统中大多数配置文件都在 /etc 目录中。
配置文件可以大致分为下面几类:访问文件/etc/host.conf 告诉网络域名服务器如何查找主机名。
(通常是 /etc/hosts,然后就是名称服务器;可通过 netconf 对其进行更改)/etc/hosts 包含(本地网络中)已知主机的一个列表。
如果系统的 IP 不是动态生成,就可以使用它。
对于简单的主机名解析(点分表示法),在请求 DNS 或 NIS 网络名称服务器之前,/etc/hosts.conf 通常会告诉解析程序先查看这里。
/etc/hosts.allow 请参阅 hosts_access 的联机帮助页。
至少由 tcpd 读取。
/etc/hosts.deny 请参阅 hosts_access 的联机帮助页。
至少由 tcpd 读取。
引导和登录/注销/etc/issue & /etc/ 这些文件由 mingetty(和类似的程序)读取,用来向从终端(issue)或通过 telnet 会话()连接的用户显示一个“welcome”字符串。
它们包括几行声明 Red Hat 版本号、名称和内核 ID 的信息。
它们由 rc.local 使用。
/etc/redhat-release 包括一行声明 Red Hat 版本号和名称的信息。
由 rc.local 使用。
/etc/rc.d/rc 通常在所有运行级别运行,级别作为参数传送。
例如,要以图形(Graphics)模式(X-Server)引导机器,请在命令行运行下面的命令:init 5。
运行级别 5 表示以图形模式引导系统。
/etc/rc.d/rc.local 非正式的。
可以从 rc、rc.sysinit 或 /etc/inittab 调用。
/etc/rc.d/rc.sysinit 通常是所有运行级别的第一个脚本。
/etc/rc.d/rc/rcX.d 从 rc 运行的脚本(X 表示 1 到 5 之间的任意数字)。
这些目录是特定“运行级别”的目录。
当系统启动时,它会识别要启动的运行级别,然后调用该运行级别的特定目录中存在的所有启动脚本。
例如,系统启动时通常会在引导消息之后显示“entering run-level 3”的消息;这意味着 /etc/rc.d/rc3.d/ 目录中的所有初始化脚本都将被调用。
文件系统内核提供了一个接口,用来显示一些它的数据结构,这些数据结构对于决定诸如使用的中断、初始化的设备和内存统计信息之类的系统参数可能很有用。
这个接口是作为一个独立但虚拟的文件系统提供的,称为 /proc 文件系统。
很多系统实用程序都使用这个文件系统中存在的值来显示系统统计信息。
例如,/proc/modules 文件列举系统中当前加载的模块。
lsmod 命令读取此信息,然后将其以人们可以看懂的格式显示出来。
下面表格中指定的 mtab 文件以同样的方式读取包含当前安装的文件系统的 /proc/mount 文件。
/etc/mtab 这将随着 /proc/mount 文件的改变而不断改变。
换句话说,文件系统被安装和卸载时,改变会立即反映到此文件中。
/etc/fstab 列举计算机当前“可以安装”的文件系统。
这非常重要,因为计算机引导时将运行 mount -a 命令,该命令负责安装 fstab 的倒数第二列中带有“1”标记的每一个文件系统。
/etc/mtools.conf DOS 类型的文件系统上所有操作(创建目录、复制、格式化等等)的配置。
系统管理/etc/group 包含有效的组名称和指定组中包括的用户。
单一用户如果执行多个任务,可以存在于多个组中。
例如,如果一个“用户”是“project1”工程组的成员,同时也是管理员,那么在 group 文件中他的条目看起来就会是这样的:user: * : group-id : project1/etc/nologin 如果有 /etc/nologin 文件存在,login(1) 将只允许 root 用户进行访问。
它将对其它用户显示此文件的内容并拒绝其登录。
etc/passwd 请参阅“man passwd”。
它包含一些用户帐号信息,包括密码(如果未被 shadow 程序加密过)。
/etc/rpmrc rpm 命令配置。
所有的 rpm 命令行选项都可以在这个文件中一起设置,这样,当任何 rpm 命令在该系统中运行时,所有的选项都会全局适用。
/etc/securetty 包含设备名称,由 tty 行组成(每行一个名称,不包括前面的 /dev/),root 用户在这里被允许登录。
/etc/usertty/etc/shadow 包含加密后的用户帐号密码信息,还可以包括密码时效信息。
包括的字段有:登录名加密后的密码从 1970 年 1 月 1 日到密码最后一次被更改的天数距密码可以更改之前的天数距密码必须更改之前的天数密码到期前用户被警告的天数密码到期后帐户被禁用的天数从 1970 年 1 月 1 日到帐号被禁用的天数/etc/shells 包含系统可用的可能的“shell”的列表。
/etc/motd 每日消息;在管理员希望向 Linux 服务器的所有用户传达某个消息时使用。
联网/etc/gated.conf gated 的配置。
只能被 gated 守护进程所使用。
/etc/gated.version 包含 gated 守护进程的版本号。
/etc/gateway 由 routed 守护进程可选地使用。
/etc/networks 列举从机器所连接的网络可以访问的网络名和网络地址。
通过路由命令使用。
允许使用网络名称。
/etc/protocols 列举当前可用的协议。
请参阅 NAG(网络管理员指南,Network Administrators Guide)和联机帮助页。
C 接口是 getprotoent。
绝不能更改。
/etc/resolv.conf 在程序请求“解析”一个 IP 地址时告诉内核应该查询哪个名称服务器。
/etc/rpc 包含 RPC 指令/规则,这些指令/规则可以在 NFS 调用、远程文件系统安装等中使用。
/etc/exports 要导出的文件系统(NFS)和对它的权限。
/etc/services 将网络服务名转换为端口号/协议。
由 inetd、telnet、tcpdump 和一些其它程序读取。
有一些 C 访问例程。
/etc/inetd.conf inetd 的配置文件。
请参阅 inetd 联机帮助页。
包含每个网络服务的条目,inetd 必须为这些网络服务控制守护进程或其它服务。
注意,服务将会运行,但在 /etc/services 中将它们注释掉了,这样即使这些服务在运行也将不可用。
格式为:<service_name> <sock_type> <proto> <flags> <user> <server_path> <args>/etc/sendmail.cf 邮件程序 sendmail 的配置文件。
比较隐晦,很难理解。
/etc/sysconfig/network 指出 NETWORKING=yes 或 no。
至少由 rc.sysinit 读取。
/etc/sysconfig/network-scripts/if* Red Hat 网络配置脚本。
系统命令系统命令要独占地控制系统,并让一切正常工作。
所有如 login(完成控制台用户身份验证阶段)或 bash(提供用户和计算机之间交互)之类的程序都是系统命令。
因此,和它们有关的文件也特别重要。
这一类别中有下列令用户和管理员感兴趣的文件。
/etc/lilo.conf 包含系统的缺省引导命令行参数,还有启动时使用的不同映象。
您在 LILO 引导提示的时候按 Tab 键就可以看到这个列表。
/etc/logrotate.conf 维护 /var/log 目录中的日志文件。
/etc/identd.conf identd 是一个服务器,它按照 RFC 1413 文档中指定的方式实现 TCP/IP 提议的标准 IDENT 用户身份识别协议。
identd 的操作原理是查找特定 TCP/IP 连接并返回拥有此连接的进程的用户名。
作为选择,它也可以返回其它信息,而不是用户名。
请参阅 identd 联机帮助页。
/etc/ld.so.conf “动态链接程序”(Dynamic Linker)的配置。
/etc/inittab 按年代来讲,这是 UNIX 中第一个配置文件。
在一台 UNIX 机器打开之后启动的第一个程序是 init,它知道该启动什么,这是由于 inittab 的存在。
在运行级别改变时,init 读取 inittab,然后控制主进程的启动。
/etc/termcap 一个数据库,包含所有可能的终端类型以及这些终端的性能。
守护进程守护进程是一种运行在非交互模式下的程序。
一般来说,守护进程任务是和联网区域有关的:它们等待连接,以便通过连接提供服务。
Linux 可以使用从 Web 服务器到 ftp 服务器的很多守护进程。