重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
很麻烦其实只需在/root/.bash_profile 加上nagios的命令路径即可PATH=$PATH:$HOME/bin:/usr/local/nagios/bin/保存后,再执行以下命令:source .bash_profile即可以后就可以直接执行了nagios -v /usr/local/nagios/etc/nagios.cfg echo $PATH
创新互联是一家专注网站建设、网络营销策划、重庆小程序开发、电子商务建设、网络推广、移动互联开发、研究、服务为一体的技术型公司。公司成立10多年以来,已经为近1000家成都宴会酒店设计各业的企业公司提供互联网服务。现在,服务的近1000家客户与我们一路同行,见证我们的成长;未来,我们一起分享成功的喜悦。
看看打印的路径
要执行自己生成的a.out文件, 需要输入. /a.out. 怎样设置默认路径后, 不用输入'. /', 直接输入a.out就能执行? 且主目录下没有.bash_profile。bash配置文件直接在主目录下的.bashrc文件实现,而不是由主目录的.bashrc调用/etc/bashrc。/etc/bashrc不存在
一、目录操作命令
cd
cd命令功能
在每一个操作系统中,都需要有改变目录的工作,Linux也不例外,在Linux操作系统中,是通过cd命令来改变工作目录的。
cd命令的命令格式及用法
命令格式:cd
命令用法
例:现在的工作目录为:/home/development,想改变当前工作目录,进入下一层目录temp,应使用cd命令。
[development@www
~]$
pwd
————可以通过pwd命令查看当前工作目录。
/home/development
————当前工作目录为:/home/development
[development@www
~]$
cd
temp/
————通过cd
temp命令改变当前目录为/home/development/temp
[development@www
temp]$
pwd
————再次使用pwd命令查看当前工作目录
/home/development/temp
————可知当前工作目录为:/home/development/temp
在Linux的目录结构中“.”表示当前目录,“..”表示当前目录的父目录,“/”表示根目录。
二、常用文件命令。
1、文件处理命令:ls
命令名称:ls
命令英文原意:list
命令所在路径:/bin/ls
执行权限:所有用户
功能描述:显示目录文件
语法:ls
选项[-ald]
[文件或目录]
-a
显示所有文件,包括隐藏文件
-l
详细信息显示
-d
查看目录属性
2、文件处理命令:cd
命令名称:cd
命令英文原意:change
directory
命令所在路径:shell内置命令
执行权限:所有用户
语法:cd
[
目录]
功能描述:切换目录
范例:$
cd
/
切换到根目录
$
cd
..
回到上一级目录
3、文件处理命令:pwd
命令名称:pwd
命令英文原意:print
working
directory
命令所在路径:/bin/pwd
执行权限:所有用户
语法:pwd
功能描述:显示当前所在的工作目录
范例:$
pwd
/etc/rc5.d
4、文件处理命令:touch
命令名称:touch
命令所在路径:/bin/touch
执行权限:所有用户
语法:touch
[文件名]
功能描述:创建空文件
范例:$
touch
newfile
5、文件处理命令:mkdir
命令名称:mkdir
命令英文原意:make
directories
命令所在路径:/bin/mkdir
执行权限:所有用户
语法:mkdir
[
目录名]
功能描述:创建新目录
范例:$
mkdir
newdir
三、权限命令。
文件/目录权限设置命令:chmod
这是Linux系统管理员最常用到的命令之一,它用于改变文件或目录的访问权限。该命令有两种用法:
用包含字母和操作符表达式的文字设定法
其语法格式为:chmod
[who]
[opt]
[mode]
文件/目录名
其中who表示对象,是以下字母中的一个或组合:
u:表示文件所有者
g:表示同组用户
o:表示其它用户
a:表示所有用户
opt则是代表操作,可以为:
+
:添加某个权限
-
:取消某个权限
=
:赋予给定的权限,并取消原有的权限
而mode则代表权限:
r:可读
w:可写
x:可执行
例如:为同组用户增加对文件a.txt的读写权限:
chmod
g+rw
a.txt
ldd
可执行文件名
查看可执行文件链接了哪些
系统动态链接库
nm
可执行文件名
查看可执行文件里面有哪些符号
strip
可执行文件名
去除符号表可以给可执行文件瘦身
如果我们想从可执行程序里面提取出来一点什么文本信息的话,还可以用strings命令
strings
可执行文件名
Linux操作系统上面的动态共享库大致分为三类:
1、操作系统级别的共享库和基础的系统工具库
比方说libc.so,
libz.so,
libpthread.so等等,这些系统库会被放在/lib和/usr/lib目录下面,如果是64位操作系统,还会有/lib64和/usr
/lib64目录。如果操作系统带有图形界面,那么还会有/usr/X11R6/lib目录,如果是64位操作系统,还有/usr/X11R6
/lib64目录。此外还可能有其他特定Linux版本的系统库目录。
这些系统库文件的完整和版本的正确,确保了Linux上面各种程序能够正常的运行。
2、应用程序级别的系统共享库
并非操作系统自带,但是可能被很多应用程序所共享的库,一般会被放在/usr/local/lib和/usr/local/lib64这两个目录下面。很多你自行编译安装的程序都会在编译的时候自动把/usr/local/lib加入gcc的-L参数,而在运行的时候自动到/usr/local
/lib下面去寻找共享库。
以上两类的动态共享库,应用程序会自动寻找到他们,并不需要你额外的设置和担心。这是为什么呢?因为以上这些目录默认就被加入到动态链接程序的搜索路径里面了。Linux的系统共享库搜索路径定义在/etc/ld.so.conf这个配置文件里面。这个文件的内容格式大致如下:
/usr/X11R6/lib64
/usr/X11R6/lib
/usr/local/lib
/lib64
/lib
/usr/lib64
/usr/lib
/usr/local/lib64
/usr/local/ImageMagick/lib
假设我们自己编译安装的ImageMagick图形库在/usr/local/ImageMagick目录下面,并且希望其他应用程序都可以使用
ImageMagick的动态共享库,那么我们只需要把/usr/local/ImageMagick/lib目录加入/etc/ld.so.conf文件里面,然后执行:ldconfig
命令即可。
ldcofig将搜索以上所有的目录,为共享库建立一个缓存文件/etc/ld.so.cache。为了确认ldconfig已经搜索到ImageMagick的库,我们可以用上面介绍的strings命令从ld.so.cache里面抽取文本信息来检查一下:
strings
/etc/ld.so.cache
|
grep
ImageMagick
输出结果为:
/usr/local/ImageMagick/lib/libWand.so.10
/usr/local/ImageMagick/lib/libWand.so
/usr/local/ImageMagick/lib/libMagick.so.10
/usr/local/ImageMagick/lib/libMagick.so
/usr/local/ImageMagick/lib/libMagick++.so.10
/usr/local/ImageMagick/lib/libMagick++.so
已经成功了!
3、应用程序独享的动态共享库
有很多共享库只被特定的应用程序使用,那么就没有必要加入系统库路径,以免应用程序的共享库之间发生版本冲突。因此Linux还可以通过设置环境变量LD_LIBRARY_PATH来临时指定应用程序的共享库搜索路径,就像我们上面举的那个例子一样,我们可以在应用程序的启动脚本里面预先设置
LD_LIBRARY_PATH,指定本应用程序附加的共享库搜索路径,从而让应用程序找到它。