Linux系统服务、目录含义及其配置

本文介绍了Linux系统中的服务管理,包括服务的分类、启动方式、配置方法及如何通过命令观察和设置服务状态等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

11.1服务简介


Linux 系统服务有时也称为守护程序,是在Linux启动时自动加载并在Linux退出时自动停止的系统任务。在Linux 启动过程中我们可以看得很多starting … 提示信息,该信息表示正在启动系统服务,而在Linux 退出时,我们也能够看到相应的Stopping … 信息,表示系统服务正在停止。
Linux自身有许多系统任务如network 服务用于支持网络连接等。

11.1.1 服务分类


根据守护程序的启动与管理方式可分独立启动与超级守护程序两种。
1. 独立启动程序
独立启动快,但常驻内存,占资源。
2. 超级守护程序
超级守护程序平时不启动,只是由一个xinet服务启动,有请求时xinet先响应,再去启动实际的服务如ftp,没有任务时,处理睡眠状态,反应时间慢。
以上两种服务可以同时存在。

11.1.2 服务有关端口信息


有关端口信息可以看/etc/services相关内容。

11.1.3 守护程序的命名


守护程序或服务的命名通常在相关命令后面加一个字母d来命名,如at与cron服务,会被称为atd与crond,以xxxd的程序就是守护程序。

11.1.4 守护程序的位置


独立启动程序与超级守护程序的shell脚本放置的位置不同。
1. 独立启动程序
独立启动程序放在/etc/init.d/目录里。RPM软件的启动都在这里。
2. 超级守护程序
超级守护程序放在/etc/init.d/xinetd/目录里。
配置文件:
/etc/xinetd.conf 超级守护程序的配置文件
/etc/xinetd.d/* 其它单个服务的配置文件
如:telnet服务的配置文件 /etc/xinetd.d/telnet
启动脚本:
/etc/init.d/xinetd 它自己是做为一个独立启动程序来启动的。如有telnet服务来的时候它才会去启动/etc/init.d/xinetd/telnet服务。

11.1.5 守护程序的启动


service程序是一个脚本,它根据参数会调动/etc/init.d中的服务名称脚本。只能用于独立启动服务的启动,有三种状态。
start 启动
stop 停止
restart 重启
1. 独立启动程序启动
/etc/init.d/smb start
service smb start

2. 超级守护程序启动
超级守护程序启动服务通常是不启用的,如果要使用的话,还需要事先配置相应服务的配置文件才能使用。

vi /etc/xinetd.d/telnet
# default: on
# description: The telnet server serves telnet sessions; it uses \
#       unencrypted username/password pairs for authentication.
service telnet
{
        disable = no                    需要手动打开才行
        flags           = REUSE
        socket_type     = stream        
        wait            = no
        user            = root
        server          = /usr/sbin/in.telnetd
        log_on_failure  += USERID
}

telnet服务安装好后默认是关闭的,需要disable = no打开,然后设为开机自启动。
/etc/init.d/xinetd/telnet start
超级守护程序安装与启动可参见第十六章。

11.2系统打开的服务


11.2.1观察系统服务


示例:
netstat -tulp 显示当前系统打开的网络服务
netstat -lnp 显示所有监听的网络服务
netstat -anp 显示所以网络连接状态
示例:
chkconfig –list |more 显示当前系统打开的服务
chkconfig –list |grep smb 过滤显示某一服务

11.2.2设置服务开机启动


1.使用服务
示例:
chkconfig –level 345 smb on 打开smb服务
chkconfig –level 345 smb off 关闭smb服务
chkconfig smb on 同上功能上样
2.使用自动运行
/etc/rc.d/rc.local文件,在里面写入开机时启动的脚本。

11.2.3服务添加与删除


1.添加服务
将该自己写的服务的脚本文件abc拷入/etc/init.d文件夹下保证其状态可执行,再使用chkconfig 命令将服务添加到服务列表中。
示例:
chkconfig –add abc
将服务添加以后该服务即可以使用service 来启动/停止了。
chkcofig命令会在/etc/rc.d/*等相关文件夹中放入到/etc/init.d/abc的快捷方式,此操作是由chkconfig自动完成的。

2.删除服务
如果要删除某项服务将上述命令的add 改为del 即可
示例:
chkconfig –del abc

11.2.4其它服务配置命令


1.ntsysv
Redhat与FC系统提供图形界面管理工具。

2.setup
Setup也是调用的ntsysv工具进行管理的。

### Linux 系统目录结构及每个目录的作用 Linux 系统目录结构遵循文件系统层次化标准(FHS,Filesystem Hierarchy Standard),所有文件和目录都被组织在一个倒置的树形结构中,根目录 `/` 是整个文件系统的起点。以下是常见目录及其作用的详细说明: #### 1. 根目录 (`/`) 根目录是整个文件系统的顶级目录,所有的其他目录和文件都从这里开始分支。它是文件系统的核心[^1]。 #### 2. `/bin` 该目录包含系统启动运行所必需的基本命令工具,例如 `ls`、`cp` 和 `sh`。这些工具在单用户模式下也可以使用,因此对于系统维护至关重要[^2]。 #### 3. `/boot` 存储与启动系统相关的文件,包括内核镜像(`vmlinuz`)和引导加载程序(如 GRUB)的配置文件。这个目录对于系统的正常启动非常重要[^1]。 #### 4. `/dev` 设备文件存放于此,表示系统中的硬件设备。例如,`/dev/sda` 表示第一个硬盘,`/dev/tty0` 表示虚拟终端。 #### 5. `/etc` 存放系统配置文件,例如网络配置服务配置等。几乎所有需要管理员手动修改的配置文件都可以在这个目录找到。 #### 6. `/home` 用户的主目录存放在此处。每个用户都有一个独立的子目录,例如 `/home/user1`,用于存储个人文件和设置。 #### 7. `/lib` 和 `/lib64` 包含系统运行所需的核心共享库(动态链接库)。这些库是许多程序运行的基础,类似于 Windows 中的 DLL 文件。 #### 8. `/media` 和 `/mnt` 临时挂载外部存储设备(如 USB 驱动器或光盘)的目录。`/media` 通常由现代桌面环境自动管理,而 `/mnt` 则供管理员手动挂载使用。 #### 9. `/opt` 用于安装可选的第三方软件包。这些软件通常不会覆盖系统默认的软件,而是作为补充存在[^2]。 #### 10. `/proc` 这是一个虚拟文件系统,反映系统内存中的内容。它提供了关于内核和进程的实时信息,并允许用户直接修改某些系统参数。例如,可以通过向 `/proc/sys/net/ipv4/icmp_echo_ignore_all` 写入 `1` 来屏蔽 ping 请求[^3]。 #### 11. `/root` 超级用户(root 用户)的主目录。与普通用户的主目录不同,它位于根目录下以确保更高的安全性[^2]。 #### 12. `/run` 存储系统运行时生成的文件,例如进程 ID(PID)文件和套接字文件。这些文件在系统重启后会丢失。 #### 13. `/sbin` 类似于 `/bin`,但包含系统管理员使用的管理工具,例如 `fsck` 和 `ifconfig`。这些工具通常需要 root 权限才能执行[^2]。 #### 14. `/srv` 用于存放服务器提供的数据文件。例如,Web 服务器的网页文件可能存放在 `/srv/www` 下。 #### 15. `/sys` 另一个虚拟文件系统,提供有关设备和内核模块的信息。与 `/proc` 不同,`/sys` 更关注于设备管理和硬件接口。 #### 16. `/tmp` 临时文件存放目录。任何用户或程序都可以在此创建文件,但系统可能会定期清理这些文件[^2]。 #### 17. `/usr` 存放用户程序和文件的目录,包括应用程序、库文件、文档等。它是系统中最庞大的目录之一。 #### 18. `/var` 存储可变数据的目录,例如日志文件(`/var/log`)、邮件队列(`/var/mail`)和缓存文件(`/var/cache`)。这些文件的内容会随时间变化[^2]。 ```python # 示例:列出 /etc 目录下的文件 import os for file in os.listdir('/etc'): print(file) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值