linux service命令 放在哪个lib

linux service命令 放在哪个lib,第1张

linux下的service命令,即不存于某个lib文件,也不存在于lib相关的目录,比如/lib。

1、首先,service命令的目录可以通过whereis命令获取。如下图所示,显示service命令在/usr/sbin/目录。

2、其次,service命令是一个脚本文件,并不是一个可执行文件,所以它不在任何lib库文件中。这点可以通过file命令查看其文件类型可知。如下图所示,显示service文本格式是Posix shell script文件。

一堆人都没有回答到关键,提示未被识别的命令,所谓命令,当然是指service未被识别了。楼主看看是不是启动vsftp时,service拼写错误?

vsftpd这个服务名在最新版也没有变过。

建议如下:

一、在/etc/init.d/目录看看能不能找到vsftpd

find /etc/init.d|grep vsftpd

二、使用/etc/init.d/vsftpd start看是否可以启动

三、vsftpd是编译的,有没有在编译之前,系统自带有vsftpd,如果有,那么编译时指定单独路径,并且在编译后的路径下去启动vsftpd,也可以把启动加入到系统服务。

取决于你使用的是哪个Linux发行版,通常在/etc/rc.d

/etc/init.d等目录下

 Linux的账号验证程序是login,login会接收mingetty传来的用户名作为用户名参数。然后login会对用户名进行分析:如果用户名不是root,且存在/etc/nologin文件,login将输出nologin文件的内容,然后退出。这通常用来系统维护时防止非root用户登录。只有/etc/securetty中登记了的终端才允许root用户登录,如果不存在这个文件,则root可以在任何终端上登录。/etc/usertty文件用于对用户作出附加访问限制,如果不存在这个文件,则没有其他限制。

在分析完用户名后,login将搜索/etc/passwd以及/etc/shadow来验证密码以及设置账户的其它信息,比如:主目录是什么、使用何种shell。如果没有指定主目录,将默认为根目录;如果没有指定shell,将默认为/bin/bash。

login程序成功后,会向对应的终端在输出最近一次登录的信息(在/var/log/lastlog中有记录),并检查用户是否有新邮件(在/usr/spool/mail/的对应用户名目录下)。然后开始设置各种环境变量:对于bash来说,系统首先寻找/etc/profile脚本文件,并执行它;然后如果用户的主目录中存在.bash_profile文件,就执行它,在这些文件中又可能调用了其它配置文件,所有的配置文件执行后后,各种环境变量也设好了,这时会出现大家熟悉的命令行提示符,到此整个启动过程就结束了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7267719.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存