文章目录
linux常用命令大全
一、系统
(一)进入图形界面
(1)在命令行模式下输入startx
或者init 5
就可以进入图形界面。
(2)如果你想要开机就进入图形界面,需要更改/etc/inittab文件
vi /etc/inittab
找到id:3:initdefault:这一行,将3改为5就OK啦!!
重启后就直接进入图形界面了
(二)关机
halt
poweroff 立刻关机
shutdown -h now 立刻关机
shutdown -h 10 10分钟后自动关机
(三)重启
Linux 的五个重启命令:shutdown、poweroff、init、reboot、halt
在linux下一些常用的关机/重启命令有shutdown、halt、reboot、及init,它们都可以达到重启系统的目的,但每个命令的内部工作过程是不同的,通过本文的介绍,希望你可以更加灵活的运用各种关机命令。
1、shutdown
shutdown -r now 立刻重启
shutdown -r 10 过10分钟自动重启
shutdown -r 20:35 在时间为20:35时候重启
shutdown -c 取消重启
(1)原理
shutdown
命令安全地将系统关机。 有些用户会使用直接断掉电源的方式来关闭linux,这是十分危险的。因为linux与windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失﹐使系统处于不稳定的状态﹐甚至在有的系统中会损坏硬件设备。而在系统关机前使用shutdown命令﹐系统管理员会通知所有登录的用户系统将要关闭。并且login指令会被冻结﹐即新的用户不能再登录。直接关机或者延迟一定的时间才关机都是可能的﹐还可能重启。这是由所有进程〔process〕都会收到系统所送达的信号〔signal〕
决定的。这让像vi之类的程序有时间储存目前正在编辑的文档﹐而像处理邮件〔mail〕和新闻〔news〕的程序则可以正常地离开等等。
shutdown执行它的工作是送信号〔signal〕给init程序﹐要求它改变runlevel。
runlevel 0
被用来停机〔halt〕﹐runlevel 6
是用来重新激活〔reboot〕系统﹐而runlevel 1
则是被用来让系统进入管理工作可以进行的状态﹔这是预设的﹐假定没有-h也没有-r参数给shutdown。要想了解在停机〔halt〕或者重新开机〔reboot〕过程中做了哪些动作﹐你可以在这个文件/etc/inittab
里看到这些runlevels相关的资料。
(2)shutdown 参数说明:
[-t] 在改变到其它runlevel之前﹐告诉init多久以后关机。
[-r] 重启计算器。
[-k] 并不真正关机﹐只是送警告信号给每位登录者〔login〕。
[-h] 关机后关闭电源〔halt〕。
[-n] 不用init﹐而是自己来关机。不鼓励使用这个选项﹐而且该选项所产生的后果往往不总是你所预期得到的。
[-c] cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数﹐但是可以输入一个用来解释的讯息﹐而这信息将会送到每位使用者。
[-f] 在重启计算器〔reboot〕时忽略fsck。
[-F] 在重启计算器〔reboot〕时强迫fsck。
[-time] 设定关机〔shutdown〕前的时间。
2、halt----最简单的关机命令
其实halt就是调用shutdown -h。halt执行时﹐杀死应用进程﹐执行sync系统调用﹐文件系统写操作完成后就会停止内核。
参数说明:
[-n] 防止sync系统调用﹐它用在用fsck修补根分区之后﹐以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块。
[-w] 并不是真正的重启或关机﹐只是写wtmp〔/var/log/wtmp〕纪录。
[-d] 不写wtmp纪录〔已包含在选项[-n]中〕。
[-f] 没有调用shutdown而强制关机或重启。
[-i] 关机〔或重启〕前﹐关掉所有的网络接口。
[-p] 该选项为缺省选项。就是关机时调用poweroff。
3、poweroff
在关闭计算机操作系统之后,最后还会发送ACPI指令,通知电源,最后切断电源供应,当然路由器等嵌入系统不支持ACPI的,所以这个无效。
4、reboot
reboot的工作过程差不多跟halt一样﹐不过它是引发主机重启﹐而halt是关机。它 的参数与halt相差不多。
5、init
init是所有进程的祖先﹐它的进程号始终为1﹐所以发送TERM信号给init会终止所有的 用户进程﹑守护进程等。shutdown 就是使用这种机制。init定义了8个运行级别(runlevel), init 0为关机﹐init 1为重启。关于init可以长篇大论﹐这里就不再叙述。另外还有telinit命令可以改变init的运行级别﹐比如﹐telinit -iS可使系统进入单用户模式﹐并且得不到使用shutdown时的信息和等待时间。
(四)查看一下内核版本
uname -a
二、文件与文件夹
(一)添加
1、创建文件夹:mkdir(make directories)
功能说明:建立目录
语 法:mkdir [-p][--help][--version][-m <目录属性>][目录名称]
补充说明:mkdir可建立目录并同时设置目录的权限。
参 数:
-m<目录属性>或–mode<目录属性> 建立目录时同时设置目录的权限。
-p或–parents 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录。
例:mkdir test
2、创建文件 touch
功能说明:改变文件或目录时间。
语 法:touch [-acfm][-d <日期时间>][-r <参考文件或目 录>][-t <日期时间>] [--help] [--version][文件或目录...] 或 touch [-acfm][--help][--version][日期时 间][文件或目录...]
补充说明:使用touch指令可更改文件或目录的日期时间,包括存取时间和更改时间。
参 数:
-a或–time=atime或–time=access或–time=use 只更改存取时间。
-c或–no-create 不建立任何文件。
-d<时间日期> 使用指定的日期时间,而非现在的时间。
-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
-m或–time=mtime或–time=modify 只更改变动时间。
-r<参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同。
-t<日期时间> 使用指定的日期时间,而非现在的时间。
例:touch test.txt (注:Linux下没有文件后缀名区分文件类型之说,系统文件类型只有可执行文件和不可执行文件)
例:touch test.txt
(注:Linux下没有文件后缀名区分文件类型之说,系统文件类型只有可执行文件和不可执行文件)
(二)删除
1、删除文件夹以及文件夹中的所有文件命令:
rm -rf 目录名字
其中:
-r:向下递归删除
-f:直接强行删除,且没有任何提示
2、删除文件
rm -f 文件名
将会强行删除文件,且无提示
注意:
使用rm -rf要格外注意,linux中没有回收站,慎重删除
(三)重命名
linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹.
1.改文件夹名
mv 修改前文件夹名 修改后文件夹名
2.改文件名
mv 修改前文件名 修改后文件名
3.例子
例子1:将目录A 重命名为B
mv A B
例子2:将/a目录移动到/b下,并重命名为c
mv /a /b/c
其实在文本模式中要重命名文件或目录的话也是很简单的,我们只需要使用mv命令就可以了,比如说我们要将一个名为abc的文件重命名为1234就可以这样来写:mv abc 1234
,但是要注意的是,如果当前目录下也有个1234的文件的话,我们的这个文件是会将它覆盖的。
三、权限
(一)chmod
chmod命令用于改变linux系统文件或目录的访问权限。用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。
文件或目录的访问权限分为只读,只写和可执行三种。以文件为例,只读权限表示只允许读其内容,而禁止对其做任何的更改操作。可执行权限表示允许将该文件作为一个程序执行。文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限,以便于对文件的阅读和修改。用户也可根据需要把访问权限设置为需要的任何组合。
有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户、其他用户。所有者一般是文件的创建者。所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录。
每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。 例如:
命令:
[root@VM_38_129_centos mysql]# ls –al
输出:
total 64
drwxr-xr-x 10 7161 31415 4096 Oct 6 17:10 .
drwxr-xr-x 3 root root 4096 Oct 6 16:05 ..
-rw-r--r-- 1 7161 31415 17987 Jul 12 19:55 COPYING
-rw-r--r-- 1 7161 31415 2478 Jul 12 19:55 README
drwxr-xr-x 2 7161 31415 4096 Jul 12 21:03 bin
drwxr-xr-x 2 root root 4096 Oct 6 17:10 data
drwxr-xr-x 2 7161 31415 4096 Jul 12 21:03 docs
drwxr-xr-x 3 7161 31415 4096 Jul 12 21:03 include
drwxr-xr-x 5 7161 31415 4096 Jul 12 21:03 lib
drwxr-xr-x 4 7161 31415 4096 Jul 12 21:03 man
drwxr-xr-x 28 7161 31415 4096 Jul 12 21:03 share
drwxr-xr-x 2 7161 31415 4096 Jul 12 21:03 support-files
我们以log2012.log为例:
drwxr-xr-x 2 root root 4096 Oct 6 17:10 data
-rw-r--r-- 1 root root 296K 11-13 06:03 log2012.log
第一列共有10个位置,
第一个字符指定了文件类型。在通常意义上,一个目录也是一个文件。如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。
从第二个字符开始到第十个共9个字符,3个字符一组,分别表示了3组用户对文件或者目录的权限。三组用户的顺序为:归属用户、同组用户、其他用户
权限字符用横线代表空许可,r代表只读,w代表写,x代表可执行。
例子表示data是一个目录文件;data的属主有读、写和执行权限;与data属主同组的用户只有读和执行权限;其他用户也只有读和执行权限。
确定了一个文件的访问权限后,用户可以利用Linux系统提供的chmod命令来重新设定不同的访问权限。也可以利用chown命令来更改某个文件或目录的所有者。利用chgrp命令来更改某个文件或目录的用户组。
chmod命令是非常重要的,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。chmod命令详细情况如下。
1. 命令格式:
chmod [-cfvR] [--help] [--version] mode file
2. 命令功能:
用于改变文件或目录的访问权限,用它控制文件或目录的访问权限。
3. 命令参数:
(1)必要参数:
-c 当发生改变时,报告处理信息
-f 错误信息不输出
-R 处理指定目录以及其子目录下的所有文件
-v 运行时显示详细处理信息
(2)选择参数:
–reference=<目录或者文件> 设置成具有指定目录或者文件具有相同的权限
–version 显示版本信息
<权限范围>+<权限设置> 使权限范围内的目录或者文件具有指定的权限
<权限范围>-<权限设置> 删除权限范围的目录或者文件的指定权限
<权限范围>=<权限设置> 设置权限范围内的目录或者文件的权限为指定的值
(3)权限范围:
u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组
(4)权限代号:
r :读权限,用数字4表示
w :写权限,用数字2表示
x :执行权限,用数字1表示
- :删除权限,用数字0表示
s :特殊权限
(5)该命令有两种用法。
一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
1)文字设定法:
chmod [who] [+ | - | =] [mode] 文件名
2)数字设定法
我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。
例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。
①数字设定法的一般形式为:
chmod [mode] 文件名
②数字与字符对应关系如下:
r=4,w=2,x=1
若要rwx属性则4+2+1=7
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
(6)使用实例:
实例1:增加文件所有用户组可执行权限
命令:
chmod a+x log2012.log
输出:
[root@localhost test]# ls -al log2012.log
-rw-r--r-- 1 root root 302108 11-13 06:03 log2012.log
[root@localhost test]# chmod a+x log2012.log
[root@localhost test]# ls -al log2012.log
-rwxr-xr-x 1 root root 302108 11-13 06:03 log2012.log
[root@localhost test]#
说明:
即设定文件log2012.log的属性为:文件属主(u) 增加执行权限;与文件属主同组用户(g) 增加执行权限;其他用户(o) 增加执行权限。
实例2:同时修改不同用户权限
命令:
chmod ug+w,o-x log2012.log
输出:
[root@localhost test]# ls -al log2012.log
-rwxr-xr-x 1 root root 302108 11-13 06:03 log2012.log
[root@localhost test]# chmod ug+w,o-x log2012.log
[root@localhost test]# ls -al log2012.log
-rwxrwxr-- 1 root root 302108 11-13 06:03 log2012.log
说明:
即设定文件text的属性为:文件属主(u) 增加写权限;与文件属主同组用户(g) 增加写权限;其他用户(o) 删除执行权限
实例3:删除文件权限
命令:
chmod a-x log2012.log
输出:
[root@localhost test]# ls -al log2012.log
-rwxrwxr-- 1 root root 302108 11-13 06:03 log2012.log
[root@localhost test]# chmod a-x log2012.log
[root@localhost test]# ls -al log2012.log
-rw-rw-r-- 1 root root 302108 11-13 06:03 log2012.log
说明:
删除所有用户的可执行权限
实例4:使用“=”设置权限
命令:
chmod u=x log2012.log
输出:
[root@localhost test]# ls -al log2012.log
-rw-rw-r-- 1 root root 302108 11-13 06:03 log2012.log
[root@localhost test]# chmod u=x log2012.log
[root@localhost test]# ls -al log2012.log
---xrw-r-- 1 root root 302108 11-13 06:03 log2012.log
说明:
撤销原来所有的权限,然后使拥有者具有可读权限
实例5:对一个目录及其子目录所有文件添加权限
命令:
chmod -R u+x test4
输出:
[root@localhost test]# cd test4
[root@localhost test4]# ls -al
总计 312drwxrwxr-x 2 root root 4096 11-13 05:50 .
drwxr-xr-x 5 root root 4096 11-22 06:58 ..
-rw-r--r-- 1 root root 302108 11-12 22:54 log2012.log
-rw-r--r-- 1 root root 61 11-12 22:54 log2013.log
-rw-r--r-- 1 root root 0 11-12 22:54 log2014.log
[root@localhost test4]# cd ..
[root@localhost test]# chmod -R u+x test4
[root@localhost test]# cd test4
[root@localhost test4]# ls -al
总计 312drwxrwxr-x 2 root root 4096 11-13 05:50 .
drwxr-xr-x 5 root root 4096 11-22 06:58 ..
-rwxr--r-- 1 root root 302108 11-12 22:54 log2012.log
-rwxr--r-- 1 root root 61 11-12 22:54 log2013.log
-rwxr--r-- 1 root root 0 11-12 22:54 log2014.log
说明:
递归地给test4目录下所有文件和子目录的属主分配权限
其他一些实例:
1).
命令:
chmod 751 file
说明:
给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
2).
命令:
chmod u=rwx,g=rx,o=x file
说明:
上例的另一种形式
3).
命令
chmod =r file
说明:
为所有用户分配读权限
3).
命令:
chmod 444 file
说明:
同上例
4).
命令:
chmod a-wx,a+r file
说明:
同上例
(二)chown
chown命令来更改某个文件或目录的所有者。
(三)chgrp
chgrp命令来更改某个文件或目录的用户组。
四、用户与用户组
1、新建用户
# useradd –d /usr/sam -m sam
此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。
假设当前用户是sam,则下面的命令修改该用户自己的口令:
# passwd
Old password:******
New password:*******
Re-enter new password:*******
如果是超级用户,可以用下列形式指定任何用户的口令:
# passwd sam
New password:*******
Re-enter new password:*******
1、添加用户
首先用adduser命令添加一个普通用户,命令如下:
#adduser tommy //添加一个名为tommy的用户
#passwd tommy //修改密码
Changing password for user tommy.
New UNIX password: //在这里输入新密码
Retype new UNIX password: //再次输入新密码
passwd: all authentication tokens updated successfully.
2、赋予root权限
方法一:修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
然后修改用户,使其属于root组(wheel),命令如下:
#usermod -g root tommy
修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
方法二:修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
tommy ALL=(ALL) ALL
修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
2、linux 如何强制退出普通用户
1、先用“who
”命令查询当前登录的用户
2、然后用“ps -u 用户名
”命令查看该用户的pid
3、再使用“kill pid
”命令,杀掉他的sshd或者是shell进程
3、赋予root权限
方法一:修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
然后修改用户,使其属于root组(wheel),命令如下:
#usermod -g root tommy
修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
方法二:修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
tommy ALL=(ALL) ALL
修改完毕,现在可以用tommy帐号登录,然后用命令 su - ,即可获得root权限进行操作。
方法三:修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示:
tommy:x:500:500:tommy:/home/tommy:/bin/bash
修改后如下
tommy:x:0:500:tommy:/home/tommy:/bin/bash
保存,用tommy账户登录后,直接获取的就是root帐号的权限。
4、查看系统当前登录用户信息
作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动。有些时候,你甚至需要知道他(她)们正在做什么。本文为我们总结了4种查看系统用户信息(通过编号(ID))的方法。
1. 使用w命令查看登录用户正在使用的进程信息
w命令用于显示已经登录系统的用户的名称,以及他们正在做的事。该命令所使用的信息来源于/var/run/utmp文件。w命令输出的信息包括:
• 用户名称
• 用户的机器名称或tty号
• 远程主机地址
• 用户登录系统的时间
• 空闲时间(作用不大)
• 附加到tty(终端)的进程所用的时间(JCPU时间)
• 当前进程所用时间(PCPU时间)
• 用户当前正在使用的命令
w命令还可以使用以下选项
• -h忽略头文件信息
• -u显示结果的加载时间
• -s不显示JCPU, PCPU, 登录时间
$ w
23:04:27 up 29 days, 7:51, 3 users, load average: 0.04, 0.06, 0.02
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
ramesh pts/0 dev-db-server 22:57 8.00s 0.05s 0.01s sshd: ramesh [priv]
jason pts/1 dev-db-server 23:01 2:53 0.01s 0.01s -bash
john pts/2 dev-db-server 23:04 0.00s 0.00s 0.00s w
$ w -h
ramesh pts/0 dev-db-server 22:57 17:43 2.52s 0.01s sshd: ramesh [priv]
jason pts/1 dev-db-server 23:01 20:28 0.01s 0.01s -bash
john pts/2 dev-db-server 23:04 0.00s 0.03s 0.00s w -h
$ w -u
23:22:06 up 29 days, 8:08, 3 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
ramesh pts/0 dev-db-server 22:57 17:47 2.52s 2.49s top
jason pts/1 dev-db-server 23:01 20:32 0.01s 0.01s -bash
john pts/2 dev-db-server 23:04 0.00s 0.03s 0.00s w -u
$ w -s
23:22:10 up 29 days, 8:08, 3 users, load average: 0.00, 0.00, 0.00
USER TTY FROM IDLE WHAT
ramesh pts/0 dev-db-server 17:51 sshd: ramesh [priv]
jason pts/1 dev-db-server 20:36 -bash
john pts/2 dev-db-server 1.00s w -s
2.使用who命令查看(登录)用户名称及所启动的进程
who命令用于列举出当前已登录系统的用户名称。其输出为:用户名、tty号、时间日期、主机地址。
$ who
ramesh pts/0 2009-03-28 22:57 (dev-db-server)
jason pts/1 2009-03-28 23:01 (dev-db-server)
john pts/2 2009-03-28 23:04 (dev-db-server)
如果只希望列出用户,可以使用如下语句:
$ who | cut -d' ' -f1 | sort | uniq
john
jason
ramesh
补充:users命令,可用于打印输出登录服务器的用户名称。该命令除了有help和version选项外,再没有其他选项。如果某用户使用了多个终端,则相应的会显示多个重复的用户名。
$ users
john jason ramesh
3. 使用whoami命令查看你所使用的登录名称
whoami命令用于显示登入的用户名。
$ whoami
john
whoami命令的执行效果和id -un的效果完全一样,例如:
$ id -un
john
whoami命令能显示当前登入的用户名称,以及当前所使用的tty信息。该命令的输出结果包括如下内容:用户名、tty名、当前时间日期,同时还包括用户登录系统所使用的链接地址。
$ who am i
john pts/2 2009-03-28 23:04 (dev-db-server)
$ who mom likes
john pts/2 2009-03-28 23:04 (dev-db-server)
Warning: Don't try "who mom hates" command.
当然,如果你使用su命令改变用户,则该命令(whoami)所显示的结果将随之改变。
4. 随时查看系统的历史信息(曾经使用过系统的用户信息)
last命令可用于显示特定用户登录系统的历史记录。如果没有指定任何参数,则显示所有用户的历史信息。在默认情况下,这些信息(所显示的信息)将来源于/var/log/wtmp文件。该命令的输出结果包含以下几列信息:
• 用户名称
• tty设备号
• 历史登录时间日期
• 登出时间日期
• 总工作时间
$ last jason
jason pts/0 dev-db-server Fri Mar 27 22:57 still logged in
jason pts/0 dev-db-server Fri Mar 27 22:09 - 22:54 (00:45)
jason pts/0 dev-db-server Wed Mar 25 19:58 - 22:26 (02:28)
jason pts/1 dev-db-server Mon Mar 16 20:10 - 21:44 (01:33)
jason pts/0 192.168.201.11 Fri Mar 13 08:35 - 16:46 (08:11)
jason pts/1 192.168.201.12 Thu Mar 12 09:03 - 09:19 (00:15)
jason pts/0 dev-db-server Wed Mar 11 20:11 - 20:50 (00:39
五、网络
六、配置文件
1、使环境变量生效
shell命令:source 配置文件
如:#source /etc/profile
七、安装软件
(一)yum常用命令:
1.安装软件包:
yum install package
yum localinstall package 从本机目录安装软件包
yum groupinstall group 安装某个组件的全部软件包
2.更新软件包:
yum update package
yum check-update 列出所有可更新的软件包
yum list updates MySQL* 查找mysql的更新
yum update 更新所有可更新的软件包
yum update mysql* 更新所有mysql的软件包
yum groupupdate group 更新某个组件的所有软件包
yum list 列出所有已安装和仓库中可用的软件包
yum list available 列出仓库中所有可用的软件包
yum list updates 列出仓库中比当前系统更新的软件包
yum list installed 列出已安装的软件包
yum list recent 列出新加入仓库的软件包
yum info 查询软件包信息
3.删除软件包:
yum remove package
yum groupremove group 删除某个组件的全部软件包
4.清除软件包
yum clean packages 清除遗留在缓存里的包文件
yum clean metadata 清除遗留在缓存里的元数据
yum clean headers 清除遗留在缓存里的头文件
yum clean all 清除包文件,元数据,头文件
5.搜索软件包:
yum search package
yum info package 查找一个软件包的信息
yum list package 列出包含指定信息的软件包
yum list installed 列出已安装的软件包
yum list extras 列出不是通过软件仓库安装的软件包
yum list *ttp* 列出标题包含ttp的软件包
yum list updates 列出可以更新的软件包
6.查找特定文件是由什么软件包提供的:
yum whatprovides filename
例子:
yum whatprovides httpd.conf
可用选项
-disalberepo=lib 禁用某个软件仓库
-enalberepo=lib 启用某个软件仓库
-C 禁用使用本机缓存的元数据
例子:
yum –disalberepo=livna|–enalberepo=livna install mplayer
yum -C info httpd
(二)rpm命令
在 Linux 操作系统下,几乎所有的软件均通过RPM 进行安装、卸载及管理等操作。RPM 的全称为Redhat Package Manager ,是由Redhat 公司提出的,用于管理Linux 下软件包的软件。Linux 安装时,除了几个核心模块以外,其余几乎所有的模块均通过RPM 完成安装。RPM 有五种操作模式,分别为:安装、卸载、升级、查询和验证。
1.RPM 安装操作
命令:
rpm -i 需要安装的包文件名
举例如下:
rpm -i example.rpm 安装 example.rpm 包;
rpm -iv example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息;
rpm -ivh example.rpm 安装 example.rpm 包并在安装过程中显示正在安装的文件信息及安装进度;
2.RPM 查询操作
命令:
rpm -q …
附加查询命令:
a 查询所有已经安装的包 以下两个附加命令用于查询安装包的信息;
i 显示安装包的信息;
l 显示安装包中的所有文件被安装到哪些目录下;
s 显示安装版中的所有文件状态及被安装到哪些目录下;以下两个附加命令用于指定需要查询的是安装包还是已安装后的文件;
p 查询的是安装包的信息;
f 查询的是已安装的某文件信息;
举例如下:
rpm -qa | grep tomcat4 查看 tomcat4 是否被安装;
rpm -qip example.rpm 查看 example.rpm 安装包的信息;
rpm -qif /bin/df 查看/bin/df 文件所在安装包的信息;
rpm -qlf /bin/df 查看/bin/df 文件所在安装包中的各个文件分别被安装到哪个目录下;
rpm -qpi rpm文件 查看一个软件包的用途、版本等信息;
rpm -qpl rpm文件 查看一件软件包所包含的文件;
rpm -qpd rpm文件 查看软件包的文档所在的位置;
rpm -qpc rpm文件 查看一个软件包的配置文件;
rpm -qpR rpm文件 查看一个软件包的依赖关系
3.RPM 卸载操作
命令:
rpm -e 需要卸载的安装包
在卸载之前,通常需要使用 rpm -q软件包 命令查出需要卸载的安装包名称。
举例如下:
rpm -e tomcat4 卸载 tomcat4 软件包
4.RPM 升级操作
命令:
rpm -U 需要升级的包
举例如下:
rpm -Uvh example.rpm 升级 example.rpm 软件包
5.RPM 验证操作
命令:
rpm -V 需要验证的包
举例如下:
rpm -Vf /etc/tomcat4/tomcat4.conf
输出信息类似如下:
S.5....T c /etc/tomcat4/tomcat4.conf
其中,S 表示文件大小修改过,T 表示文件日期修改过。限于篇幅,更多的验证信息请您参考rpm 帮助文件:man rpm
RPM 的其他附加命令
--force 强制操作 如强制安装删除等;
--requires 显示该包的依赖关系;
--nodeps
忽略依赖关系并继续操作;
(三)tar
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出
下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
# tar -cf all.tar *.jpg
这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
# tar -rf all.tar *.gif
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
# tar -uf all.tar logo.gif
这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。
# tar -tf all.tar
这条命令是列出all.tar包中所有文件,-t是列出文件的意思
# tar -xf all.tar
这条命令是解出all.tar包中所有文件,-x是解开的意思
压缩
• tar –cvf jpg.tar *.jpg 将目录里所有jpg文件打包成tar.jpg
• tar –czf jpg.tar.gz *.jpg 将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
• tar –cjf jpg.tar.bz2 *.jpg 将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
• tar –cZf jpg.tar.Z *.jpg 将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
• rar a jpg.rar *.jpg rar格式的压缩,需要先下载rar for linux
• zip jpg.zip *.jpg zip格式的压缩,需要先下载zip for linux
解压
• tar –xvf file.tar 解压 tar包
• tar -xzvf file.tar.gz 解压tar.gz
• tar -xjvf file.tar.bz2 解压 tar.bz2
• tar –xZvf file.tar.Z 解压tar.Z
• unrar e file.rar 解压rar
• unzip file.zip 解压zip
总结
1. *.tar 用 tar –xvf 解压
2. *.gz 用 gzip -d或者gunzip 解压
3. *.tar.gz和*.tgz 用 tar –xzf 解压
4. *.bz2 用 bzip2 -d或者用bunzip2 解压
5. *.tar.bz2用tar –xjf 解压
6. *.Z 用 uncompress 解压
7. *.tar.Z 用tar –xZf 解压
8. *.rar 用 unrar e解压
9. *.zip 用 unzip 解压
八、防火墙
(一)iptables防火墙
(这里iptables已经安装,下面进行配置)
1、指令:
vi /etc/sysconfig/iptables
#编辑防火墙配置文件
2、添加
# sampleconfiguration for iptables service
# you can edit thismanually or use system-config-firewall
# please do not askus to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT[0:0]
:OUTPUT ACCEPT[0:0]
-A INPUT -m state--state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -jACCEPT
-A INPUT -i lo -jACCEPT
-A INPUT -p tcp -mstate --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -jACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080-j ACCEPT
-A INPUT -j REJECT--reject-with icmp-host-prohibited
-A FORWARD -jREJECT --reject-with icmp-host-prohibited
COMMIT
3、保存
:wq!
#保存退出
4、重启
systemctl restart iptables.service
#最后重启防火墙使配置生效
systemctl enable iptables.service
#设置防火墙开机启动
备注:这里使用80和8080端口为例。***部分一般添加到“-A INPUT -p tcp -m state --state NEW -m tcp--dport 22 -j ACCEPT”行的上面或者下面,切记不要添加到最后一行,否则防火墙重启后不生效。
5、常用命令
# 1、查看是否已经安装了iptables以及iptables版本号。 (注意:V是大写字母V)
iptables -V
# 2、关闭iptables
service iptables stop
# 3、启动iptables
service iptables start
# 4、重启iptables
service iptables restart
# 5、保存命令行中设置的iptables规则到iptables文件中
service iptables save
或者
/etc/rc.d/init.d/iptables save
# 6、查看iptables规则
iptables -L -n
或者
service iptables status
或者
cat /etc/sysconfig/iptables
或者
iptables --list
或者
iptables-save
(二)firewall
使用命令的方式配置CentOS7防火墙
1、添加
##Add
firewall-cmd --permanent --zone=public --add-port=80/tcp
2、删除
##Remove
firewall-cmd --permanent --zone=public --remove-port=80/tcp
3、重载
##Reload
firewall-cmd --reload
4、其它
检查是否生效
firewall-cmd --zone=public --query-port=80/tcp
列出所有的开放端口
firewall-cmd --list-all
查看防火墙状态
systemctl status firewalld.service
启动防火墙
systemctl start firewalld.service
关闭防火墙
systemctl stop firewalld.service
重新启动防火墙
systemctl restart firewalld.service
(三)CentOS 7.0关闭默认防火墙启用iptables防火墙
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙步骤。
1、关闭firewall:
#停止firewall
systemctl stop firewalld.service
#禁止firewall开机启动
systemctl disable firewalld.service
#查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
firewall-cmd --state
2、iptables防火墙(这里iptables已经安装,下面进行配置)
#编辑防火墙配置文件
vi/etc/sysconfig/iptables
# sampleconfiguration for iptables service
# you can edit thismanually or use system-config-firewall
# please do not askus to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT[0:0]
:OUTPUT ACCEPT[0:0]
-A INPUT -m state--state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -jACCEPT
-A INPUT -i lo -jACCEPT
-A INPUT -p tcp -mstate --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
-A INPUT -j REJECT--reject-with icmp-host-prohibited
-A FORWARD -jREJECT --reject-with icmp-host-prohibited
COMMIT
:wq! #保存退出
备注:这里使用80和8080端口为例。
***部分一般添加到“-A INPUT -p tcp -m state --state NEW -m tcp–dport 22 -j ACCEPT”行的上面或者下面,切记不要添加到最后一行,否则防火墙重启后不生效。
#最后重启防火墙使配置生效
systemctlrestart iptables.service
#设置防火墙开机启动
systemctlenable iptables.service
九、Linux文件目录
Linux目录和Windows目录有着很大的不同,Linux目录类似一个树,最顶层是其根目录,如下图:
目录:/
目录 | 说明 |
---|---|
/ | 根目录是所有目录绝对路径的起始目录,如home目录的绝对路径为:/home |
/bin | Bin是binary的缩写。这一目录存放了所有用户都可以执行的且最经常使用的命令,如cp、ls和mv等。 |
/boot | 此目录是系统内核存放的目录,同时也是系统启动时所需文件的存放目录。如vmlinuz、initrd.img。建议在安装Ubuntu时,为boot目录创建一个分区,有利于对系统进行备份。 |
/dev | 此目录保存了接口设备文件,如/dev/hdal、/dev/cdrom等。 |
/etc | 此目录保存有关系统设置与管理的文件。 |
/home | 此目录放置所有普通用户的主文件夹或FTP站点目录。如dranyu的主文件夹为/home/dranyu,可以用~user表示。 |
/lib | 此目录仅包含执行/bin或/sbin目录中的二进制文件时所需的共享函数库。标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件。 |
/lost+found | 在ext2或ext3文件系统中,当系统意外崩溃或机器意外关机,而产生一些文件碎片放在此目录。当系统启动的过程中fsck工具会自动检查此目录,并修复已经损坏的文件系统。有时系统发生问题,有很多的文件被移到这个目录中,可能会用手工的方式来修复,或将文件移到原来的位置上。 |
/media | 此目录 |
/etc/rc.d | 启动的配置文件和脚本 |
/sbin | 超级管理命令,这里存放的是系统管理员使用的管理程序 |
/tmp | 公共的临时文件存储点 |
/root | 系统管理员的主目录 |
/mnt | 系统提供这个目录是让用户临时挂载其他的文件系统 |
/proc | 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。 |
/var | 某些大文件的溢出区,比方说各种服务的日志文件 |
目录:/usr
/usr 最庞大的目录,要用到的应用程序和文件几乎都在这个目录,其中包含:
/usr/x11R6 存放x window的目录
/usr/bin 众多的应用程序
/usr/sbin 超级用户的一些管理程序
/usr/doc linux文档
/usr/include linux下开发和编译应用程序所需要的头文件
/usr/lib 常用的动态链接库和软件包的配置文件
/usr/man 帮助文档
/usr/src 源代码,linux内核的源代码就放在/usr/src/linux里
/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的库根文件系统
十、查询系统配置、变量等
1、查看linux版本
uname -a
https://blog.csdn.net/zhangliao613/article/details/79021606
2、crontab
$ crontab --help
crontab:无效选项 -- -
crontab: usage error: unrecognized option
usage: crontab [-u user] file
crontab [-u user] [ -e | -l | -r ]
(default operation is replace, per 1003.2)
-e (edit user's crontab)
-l (list user's crontab)
-r (delete user's crontab)
-i (prompt before deleting user's crontab)
---------------------------------------------------------
so:
crontab -l 表示列出所有的定时任务
crontab -r 表示删除用户的定时任务,当执行此命令后,所有用户下面的定时任务会被删除,执行crontab -l后会提示用户:“no crontab for admin”
十一、端口占用情况
1、lsof:列出当前系统打开文件(list open files)
(1)查看指定端口号语法格式:lsof -i:端口号,如
# lsof -i:8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 6205 root 43u IPv6 146961136 0t0 TCP *:webcache (LISTEN)
如果命令找不到,则需要先安装
# lsof -i:8080
-bash: lsof: command not found
-- 安装命令
# yum install lsof -y
(2)查看所有端口:
# lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
hekad-dae 554 root 5u IPv4 132739015 0t0 TCP szvmapaml1-uat:scp-config (LISTEN)
hekad 563 root 3u IPv4 147543724 0t0 TCP szvmapaml1-uat:37088->10.142.140.109:5180 (ESTABLISHED)
sshd 1044 root 3u IPv4 19541 0t0 TCP *:ssh (LISTEN)
sshd 1044 root 4u IPv6 19543 0t0 TCP *:ssh (LISTEN)
master 1304 root 13u IPv4 19011 0t0 TCP localhost:smtp (LISTEN)
master 1304 root 14u IPv6 19012 0t0 TCP localhost:smtp (LISTEN)
java 6205 root 43u IPv6 146961136 0t0 TCP *:webcache (LISTEN)
java 6205 root 46u IPv6 147459199 0t0 TCP szvmapaml1-uat:55786->10.142.141.90:ncube-lm (ESTABLISHED)
java 6205 root 50u IPv6 146962297 0t0 TCP localhost:pxc-pin (LISTEN)
sshd 8891 root 3u IPv4 147539416 0t0 TCP szvmapaml1-uat:ssh->10.141.156.69:56930 (ESTABLISHED)
sshd 8896 root 3u IPv4 147537904 0t0 TCP szvmapaml1-uat:ssh->10.141.156.69:56933 (ESTABLISHED)
titanagen 18431 root 5u IPv4 78576518 0t0 TCP szvmapaml1-uat:48818->10.142.114.52:office-tools (ESTABLISHED)
java 26712 root 15u IPv6 10162166 0t0 TCP *:46203 (LISTEN)
java 26712 root 16u IPv6 10162167 0t0 TCP *:italk (LISTEN)
java 26712 root 17u IPv6 10162171 0t0 TCP *:44408 (LISTEN)
java 26712 root 45u IPv6 10162172 0t0 TCP *:6060 (LISTEN)
java 26712 root 46u IPv6 10162173 0t0 TCP *:6009 (LISTEN)
java 26712 root 48u IPv6 147496303 0t0 TCP szvmapaml1-uat:55930->10.142.141.90:ncube-lm (ESTABLISHED)
java 26712 root 50u IPv6 10166316 0t0 TCP localhost:6005 (LISTEN)
java 26712 root 51u IPv6 146909383 0t0 TCP szvmapaml1-uat:53630->10.142.141.90:ncube-lm (ESTABLISHED)
结果参数说明:
COMMAND(进程的名称)
PID(进程的标识符)
USER(进程所有者)
FD(文件描述符)
TYPE(文件类型)
SIZE/OFF(文件大小)
DEVICE(指定磁盘名称)
NODE(索引节点)
NAME(打开文件的确切名称)
2、netstat
(1)查看指定端口占用语法格式: netstat -tunlp | grep 端口号
# netstat -tunlp | grep 8080
tcp6 0 0 :::8080 :::* LISTEN 6205/java
命令参数说明:
- -t (tcp) 仅显示tcp相关选项
- -u (udp)仅显示udp相关选项
- -n 拒绝显示别名,能显示数字的全部转化为数字
- -l 仅列出在Listen(监听)的服务状态
- -p 显示建立相关链接的程序名
(2)查看所有端口:netstat -tunlp
# netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 10.142.143.145:10001 0.0.0.0:* LISTEN 554/hekad-daemon
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1044/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1304/master
tcp6 0 0 :::6060 :::* LISTEN 26712/java
tcp6 0 0 :::8080 :::* LISTEN 6205/java
tcp6 0 0 127.0.0.1:6005 :::* LISTEN 26712/java
tcp6 0 0 :::22 :::* LISTEN 1044/sshd
tcp6 0 0 :::44408 :::* LISTEN 26712/java
tcp6 0 0 :::6009 :::* LISTEN 26712/java
tcp6 0 0 :::12345 :::* LISTEN 26712/java
tcp6 0 0 ::1:25 :::* LISTEN 1304/master
tcp6 0 0 :::46203 :::* LISTEN 26712/java
tcp6 0 0 127.0.0.1:4005 :::* LISTEN 6205/java
在查到端口占用的进程后,如果你要杀掉对应的进程可以使用 kill 命令,语法为:kill -9 PID
如上,我们看到 8080端口对应的 PID 为 6205,使用以下命令杀死进程:
# kill -9 6205
显示网卡列表
# netstat -i
Kernel Interface table
Iface MTU RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
ens192 1500 64928486 0 4405 0 64017689 0 0 0 BMRU
lo 65536 7831 0 0 0 7831 0 0 0 LRU
3、ps:用于显示当前进程的状态
(1)显示本用户的进程 :ps
# ps
PID TTY TIME CMD
18961 pts/1 00:00:00 bash
18978 pts/1 00:00:00 ps
(2)显示所有用户的进程:# ps au
# ps au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 707 0.0 0.0 110044 436 tty1 Ss+ 2019 0:00 /sbin/agetty --noclear tty1 linux
root 18961 0.0 0.0 115392 2012 pts/1 Ss 12:06 0:00 -bash
root 19267 0.0 0.0 151064 1804 pts/1 R+ 12:08 0:00 ps au
(3)显示所有进程和其状态:ps aux
# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 194784 4004 ? Ss 2019 141:03 /usr/lib/systemd/systemd --switched-root --system --deserialize 21
root 2 0.0 0.0 0 0 ? S 2019 0:10 [kthreadd]
root 3 0.0 0.0 0 0 ? S 2019 0:49 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 2019 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S 2019 0:46 [migration/0]
root 8 0.0 0.0 0 0 ? S 2019 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S 2019 153:51 [rcu_sched]
root 10 0.0 0.0 0 0 ? S 2019 1:24 [watchdog/0]
root 11 0.0 0.0 0 0 ? S 2019 1:24 [watchdog/1]
root 12 0.0 0.0 0 0 ? S 2019 1:19 [migration/1]
root 13 0.0 0.0 0 0 ? S 2019 0:38 [ksoftirqd/1]
root 15 0.0 0.0 0 0 ? S< 2019 0:00 [kworker/1:0H]
root 16 0.0 0.0 0 0 ? S 2019 1:23 [watchdog/2]
root 17 0.0 0.0 0 0 ? S 2019 0:46 [migration/2]
root 18 0.0 0.0 0 0 ? S 2019 0:30 [ksoftirqd/2]
root 20 0.0 0.0 0 0 ? S< 2019 0:00 [kworker/2:0H]
root 21 0.0 0.0 0 0 ? S 2019 1:25 [watchdog/3]
root 22 0.0 0.0 0 0 ? S 2019 1:19 [migration/3]
root 23 0.0 0.0 0 0 ? S 2019 0:41 [ksoftirqd/3]
root 25 0.0 0.0 0 0 ? S< 2019 0:00 [kworker/3:0H]
root 27 0.0 0.0 0 0 ? S 2019 0:00 [kdevtmpfs]
root 28 0.0 0.0 0 0 ? S< 2019 0:00 [netns]
......
......
(4)显示指定进程和其状态:ps aux | grep java
# ps aux | grep java
root 6205 0.6 11.8 6735696 950812 ? Sl Mar17 6:25 /usr/bin/java -Djava.util.logging.config.file=/home/apache-tomcat-7.0.85/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx2048m -XX:NewSize=256m -XX:MaxNewSize=512m -XX:PermSize=1024m -XX:MaxPermSize=2048m -Dignore.endorsed.dirs= -classpath /home/apache-tomcat-7.0.85/bin/bootstrap.jar:/home/apache-tomcat-7.0.85/bin/tomcat-juli.jar -Dcatalina.base=/home/apache-tomcat-7.0.85 -Dcatalina.home=/home/apache-tomcat-7.0.85 -Djava.io.tmpdir=/home/apache-tomcat-7.0.85/temp org.apache.catalina.startup.Bootstrap start
root 19564 0.0 0.0 112660 968 pts/1 S+ 12:11 0:00 grep --color=auto java
root 26712 0.3 18.0 6759780 1448000 ? Sl 2019 929:09 /usr/bin/java -Djava.util.logging.config.file=/home/move/apache-tomcat-7.0.85/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1024m -Xmx2048m -XX:NewSize=256m -XX:MaxNewSize=512m -XX:PermSize=1024m -XX:MaxPermSize=2048m -Djava.rmi.server.hostname=10.142.143.145 -Djavax.management.builder.initial= -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dignore.endorsed.dirs= -classpath /home/move/apache-tomcat-7.0.85/bin/bootstrap.jar:/home/move/apache-tomcat-7.0.85/bin/tomcat-juli.jar -Dcatalina.base=/home/move/apache-tomcat-7.0.85 -Dcatalina.home=/home/move/apache-tomcat-7.0.85 -Djava.io.tmpdir=/home/move/apache-tomcat-7.0.85/temp org.apache.catalina.startup.Bootstrap start
4、pidof:查看服务的pid
语法:pidof 进程名
# netstat -tunlp | grep java
tcp6 0 0 :::6060 :::* LISTEN 26712/java
tcp6 0 0 :::8080 :::* LISTEN 6205/java
tcp6 0 0 127.0.0.1:6005 :::* LISTEN 26712/java
tcp6 0 0 :::44408 :::* LISTEN 26712/java
tcp6 0 0 :::6009 :::* LISTEN 26712/java
tcp6 0 0 :::12345 :::* LISTEN 26712/java
tcp6 0 0 :::46203 :::* LISTEN 26712/java
tcp6 0 0 127.0.0.1:4005 :::* LISTEN 6205/java
# pidof java
26712 6205