
正文
linuxsa1命令 linux sh命令详解
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
Linux下磁带管理命令
为什么备份?
一个备份计划对定期备份文件来说很有必要linuxsa1命令,如果你宁愿选择不备份linuxsa1命令,那么丢失重要数据的风险会大大增加。有了备份,你就有了从磁盘故障中恢复的能力。备份还可以帮助你抵御linuxsa1命令:意外的文件删除/文件或文件系统损坏/服务器完全毁坏,包括由于火灾或其linuxsa1命令他问题导致的同盘备份毁坏、硬盘或 SSD 崩溃、病毒或勒索软件破坏或删除文件、你可以使用磁带归档备份整个服务器并将其离线存储。
理解磁带文件标记和块大小
每个磁带设备能存储多个备份文件。磁带备份文件通过 cpio,tar,dd 等命令创建。同时,磁带设备可以由多种程序打开、写入数据、及关闭。你可以存储若干备份(磁带文件)到一个物理磁带上。在每个磁带文件之间有个“磁带文件标记”。这用来指示一个物理磁带上磁带文件的结尾以及另一个文件的开始。你需要使用 mt 命令来定位磁带(快进,倒带和标记)。
磁带上的数据是如何存储的
所有的数据使用 tar 以连续磁带存储格式连续地存储。第一个磁带归档会从磁带的物理开始端开始存储(tar #0)。接下来的就是 tar #1,以此类推。
Unix 上的磁带设备名
/dev/rmt/0 或 /dev/rmt/1 或 /dev/rmt/[0-127] :Unix 上的常规磁带设备名。磁带自动倒回。
/dev/rmt/0n :以无倒回为特征,换言之,磁带使用之后,停留在当前状态等待下个命令。
/dev/rmt/0b :使用磁带接口,也就是 BSD 的行为。各种类型的操作系统比如 AIX,Windows,Linux,FreeBSD 等的行为更有可读性。
/dev/rmt/0l :设置密度为低。
/dev/rmt/0m :设置密度为中。
/dev/rmt/0u :设置密度为高。
/dev/rmt/0c :设置密度为压缩。
/dev/st[0-9] :Linux 特定 SCSI 磁带设备名。
/dev/sa[0-9] :FreeBSD 特定 SCSI 磁带设备名。
/dev/esa0 :FreeBSD 特定 SCSI 磁带设备名,在关闭时弹出(如果可以的话)。
磁带设备名示例
/dev/rmt/1cn 指明正在使用 unity 1,压缩密度,无倒回。
/dev/rmt/0hb 指明正在使用 unity 0,高密度,BSD 行为。
Linux 上的自动倒回 SCSI 磁带设备名:/dev/st0
Linux 上的无倒回 SCSI 磁带设备名:/dev/nst0
FreeBSD 上的自动倒回 SCSI 磁带设备名:/dev/sa0
FreeBSD 上的无倒回 SCSI 磁带设备名:/dev/nsa0
如何列出已安装的 scsi 磁带设备?
输入下列命令:
### Linux(更多信息参阅 man) ###
lsscsi
lsscsi -g
### IBM AIX ###
lsdev -Cc tape
lsdev -Cc adsm
lscfg -vl rmt*
### Solaris Unix ###
cfgadm –a
cfgadm -al
luxadm probe
iostat -En
### HP-UX Unix ###
ioscan Cf
ioscan -funC tape
ioscan -fnC tape
ioscan -kfC tape
mt 命令示例
在 Linux 和类 Unix 系统上,mt 命令用来控制磁带驱动器的操作,比如查看状态或查找磁带上的文件或写入磁带控制标记。下列大多数命令需要作为 root 用户执行。语法如下:
mt -f /tape/device/name operation
设置环境
你可以设置 TAPE shell 变量。这是磁带驱动器的路径名。在 FreeBSD 上默认的(如果变量没有设置,而不是 null)是 /dev/nsa0。可以通过 mt 命令的 -f 参数传递变量覆盖它,就像下面解释的那样。
### 添加到你的 shell 配置文件 ###
TAPE=/dev/st1 #Linux
TAPE=/dev/rmt/2 #Unix
TAPE=/dev/nsa3 #FreeBSD
export TAPE
1:显示磁带/驱动器状态
mt status ### Use default
mt -f /dev/rmt/0 status ### Unix
mt -f /dev/st0 status ### Linux
mt -f /dev/nsa0 status ### FreeBSD
mt -f /dev/rmt/1 status ### Unix unity 1 也就是 tape device no. 1
你可以像下面一样使用 shell 循环语句遍历一个系统并定位其所有的磁带驱动器:
for d in 0 1 2 3 4 5
do
mt -f "/dev/rmt/${d}" status
done
2:倒带
mt rew
mt rewind
mt -f /dev/mt/0 rewind
mt -f /dev/st0 rewind
3:弹出磁带
mt off
mt offline
mt eject
mt -f /dev/mt/0 off
mt -f /dev/st0 eject
4:擦除磁带(倒带,在支持的情况下卸载磁带)
mt erase
mt -f /dev/st0 erase #Linux
mt -f /dev/rmt/0 erase #Unix
5:张紧磁带盒
如果磁带在读取时发生错误,你重新张紧磁带,清洁磁带驱动器,像下面这样再试一次:
mt retension
mt -f /dev/rmt/1 retension #Unix
mt -f /dev/st0 retension #Linux
6:在磁带当前位置写入 EOF 标记
mt eof
mt weof
mt -f /dev/st0 eof
7:将磁带前进指定的文件标记数目,即跳过指定个 EOF 标记
磁带定位在下一个文件的第一个块,即磁带会定位在下一区域的第一个块(见图01):
mt fsf
mt -f /dev/rmt/0 fsf
mt -f /dev/rmt/1 fsf 1 #go 1 forward file/tape (see fig.01)
8:将磁带后退指定的文件标记数目,即倒带指定个 EOF 标记
磁带定位在下一个文件的第一个块,即磁带会定位在 EOF 标记之后(见图01):
mt bsf
mt -f /dev/rmt/1 bsf
mt -f /dev/rmt/1 bsf 1 #go 1 backward file/tape (see fig.01)
这里是磁带定位命令列表:
fsf 前进指定的文件标记数目。磁带定位在下一个文件的第一块。
fsfm 前进指定的文件标记数目。磁带定位在前一文件的最后一块。
bsf 后退指定的文件标记数目。磁带定位在前一文件的最后一块。
bsfm 后退指定的文件标记数目。磁带定位在下一个文件的第一块。
asf 磁带定位在指定文件标记数目的开始位置。定位通过先倒带,再前进指定的文件标记数目来实现。
fsr 前进指定的记录数。
bsr 后退指定的记录数。
fss (SCSI tapes)前进指定的 setmarks。
bss (SCSI tapes)后退指定的 setmarks。
基本备份命令
让我们来看看备份和恢复命令。
9:备份目录(tar 格式)
tar cvf /dev/rmt/0n /etc
tar cvf /dev/st0 /etc
10:恢复目录(tar 格式)
tar xvf /dev/rmt/0n -C /path/to/restore
tar xvf /dev/st0 -C /tmp
11:列出或检查磁带内容(tar 格式)
mt -f /dev/st0 rewind; dd if=/dev/st0 of=-
### tar 格式 ###
tar tvf {DEVICE} {Directory-FileName}
tar tvf /dev/st0
tar tvf /dev/st0 desktop
tar tvf /dev/rmt/0 foo list.txt
12:使用 dump 或 ufsdump 备份分区
### Unix 备份 c0t0d0s2 分区 ###
ufsdump 0uf /dev/rmt/0 /dev/rdsk/c0t0d0s2
### Linux 备份 /home 分区 ###
dump 0uf /dev/nst0 /dev/sda5
dump 0uf /dev/nst0 /home
### FreeBSD 备份 /usr 分区 ###
dump -0aL -b64 -f /dev/nsa0 /usr
13:使用 ufsrestore 或 restore 恢复分区
### Unix ###
ufsrestore xf /dev/rmt/0
### Unix 交互式恢复 ###
ufsrestore if /dev/rmt/0
### Linux ###
restore rf /dev/nst0
### 从磁带媒介上的第6个备份交互式恢复 ###
restore isf 6 /dev/nst0
### FreeBSD 恢复 ufsdump 格式 ###
restore -i -f /dev/nsa0
14:从磁带开头开始写入(见图02)
### 这会覆盖磁带上的所有数据 ###
mt -f /dev/st1 rewind
### 备份 home ###
tar cvf /dev/st1 /home
### 离线并卸载磁带 ###
mt -f /dev/st0 offline
从磁带开头开始恢复:
mt -f /dev/st0 rewind
tar xvf /dev/st0
mt -f /dev/st0 offline
15:从最后一个 tar 后开始写入(见图02)
### 这会保留之前写入的数据 ###
mt -f /dev/st1 eom
### 备份 home ###
tar cvf /dev/st1 /home
### 卸载 ###
mt -f /dev/st0 offline
16:从 tar number 2 后开始写入(见图02)
### 在 tar number 2 之后写入(应该是 2+1)###
mt -f /dev/st0 asf 3
tar cvf /dev/st0 /usr
### asf 等效于 fsf ###
mt -f /dev/sf0 rewind
mt -f /dev/st0 fsf 2
从 tar number 2 恢复 tar:
mt -f /dev/st0 asf 3
tar xvf /dev/st0
mt -f /dev/st0 offline
关于第三方备份工具
Linux 和类Unix系统都提供了许多第三方工具,可以用来安排备份,包括磁带备份在内,如:
Amanda
Bacula
rsync
duplicity
rsnapshot
相关问答
Q1: sar命令查看历史数据
前言
有的时候,我们要通过对系统的cpu负载等性能数值的查看,来判排查系统产生某种故障(经常死机或者运行速度突然变慢)的原因。但是,简单的top,uptime,w等命令只可以查看当前的负载,而无法查看过去的某一时间段的cpu的负载情况。
下面就介绍一个用于性能分析的命令,其可以用于查看过去的某一时间段的cpu的负载情况(系统性能)。
查看某一时间段的cpu使用情况,请直接跳到第七节。
一、sar概念
sysstat是Linux 系统中的常用工具包,而sar 是 Linux中sysstat工具包中的用于监控Linux系统性能的工具之一。
sysstat 工具包中包含两种类型的工具:即时查看工具(iostat、mpstat、sar);累计统计工具(sar)
因此sar命令,又叫做系统活动情况报告。不仅可以实时查看服务器的性能,还可以做累计统计。
二、sar可监控的范围
文件的读写情况
系统调用的使用情况
磁盘I/O使用情况
CPU的使用统计
内存使用状况
进程活动
IPC有关的活动
三、sar命令使用环境
sar命令使用格式:
sar+ 命令行选项(可选) + 间隔时间(可选) + 次数(可选)
常用来判断一个系统瓶颈问题
查询CPU可用 sar -u 和 sar -q 等来查看查询内存可用 sar -B、sar -r 和 sar -W 等来查看查询io可用 sar -b、sar -u 和 sar -d 等来查看
四、sar命令累计统计的实现过程
系统会通过调用 /usr/lib64/sa/ 中的三个工具(sa1 sa2 sadc)来实现,周期地记录当时的系统性能的信息的功能。
sa1 :收集并将每天的系统性能的信息写入一个二进制的文件中,它是sadc的前端程序
sa2 :收集每天的系统活跃的信息并写入总结性的文件中,其作为 sar的前端程序
sadc :收集系统的动态数据的数据并写入一个二进制的文件中,其作为 sar 工具的后端
五、sar的日志
sar是由有类似日志切割的功能的,它会依据/etc/cron.d/sysstat中的计划任务,将日志放入/var/log/sa/中
注:日志为二进制文件,不可使用more、less、vim工具查看,必须使用sar或sadf
可以根据需求修改该计划任务
如要查看某一时间段的服务器的性能的其中一个方法就是:使用sar命令,查看当天的日志文件
sar -f /var/log/sa/sa15
[root@ lib64]#sar-f/var/log/sa/sa15Linux3.10.0-327.el7.x86_64(ops-node7)07/15/2018_x86_64_(24CPU)12:00:01AMCPU%user%nice%system%iowait%steal%idle12:10:01AMall1.350.000.850.120.0097.6712:20:01AMall1.320.000.860.110.0097.7112:30:02AMall1.370.000.870.110.0097.6512:40:01AMall1.320.000.910.110.0097.6612:50:01AMall1.350.000.890.110.0097.6501:00:01AMall1.360.000.870.110.0097.6601:10:01AMall1.360.000.850.110.0097.6801:20:01AMall1.350.000.890.100.0097.6601:30:01AMall1.320.000.890.110.0097.6801:40:01AMall1.290.000.950.110.0097.6501:50:01AMall1.350.000.880.120.0097.6402:00:01AMall1.340.000.880.110.0097.6802:10:01AMall1.330.000.900.110.0097.6502:20:01AMall1.360.000.870.120.0097.6502:30:01AMall1.350.000.850.120.0097.6802:40:01AMall1.410.000.920.120.0097.5602:50:01AMall1.570.000.950.130.0097.3503:00:01AMall4.210.000.810.160.0094.8103:10:01AMall2.500.000.870.130.0096.5003:20:01AMall1.370.000.870.120.0097.6503:30:01AMall1.360.000.950.130.0097.5603:40:01AMall1.480.000.970.240.0097.3003:50:01AMall1.350.010.910.130.0097.6004:00:01AMall1.390.000.950.190.0097.4704:10:01AMall1.360.000.990.130.0097.52
注意:
sar查看性能或其日志时,使用的12/24小时制;日志的切割是昨天晚上12点到今天12点为一天;默认只保留一个月的日志
六、sar命令参数及输出项详解
【1】格式
用法:sar + 选项 + 时间间隔(可选) + 次数 (可选)
interval: 取样周期,单位是秒count:取样次数,默认值为1options:命令行选项
【2】常用选项
-A 所有报告的总和-B 输出内存页面的统计信息-b 输出I/O和传送速率的统计信息-C 输出进程统计信息及每秒创建的进程数-d 输出每一个块设备的活动信息-H 输出交换空间利用率信息-h 输出帮助信息-p 输出友好设备名字,以方便查看,常与-d和-n参数结合使用-q 输出进程队列长度和系统平均负载状态统计信息-R 输出内存页面的统计信息-r 输出内存和交换空间的统计信息-S 输出交换空间利用率信息-t 读取 /var/log/sa/下的某日志的数据时显示其中记录的原始时间-u 输出整体CPU使用情况的统计信息-V 输出版本信息-v 输出内核表状况统计信息(inode、文件和其他内核表的统计信息)-W 输出系统交换的统计信息-w 输出任务创建与系统转换统计信息-y 输出终端设备的活动信息-----------I 输出指定中断的统计信息,后方可加参数{...|SUM|ALL|XALL} ... 指定中断号SUM 指定输出每秒接收到的中断总数ALL 指定输出前16个中断XALL 指定输出全部的中断信息-----------P 输出指定的部分的CPU的统计信息,后方可加参数{cpu|ALL}cpu 指定cpuALL 输出单个和整体cpu的统计数据-----------n 输出网络设备(网卡)状态统计信息,后方可加参数{DEV|EDEV|NFS|NFSD|SOCK|ALL} DEV 输出网络设备的统计信息EDEV 输出网络设备的错误统计信息NFS 输出NFS客户端的活动统计信息NFSD 输出NFS服务器的活动统计信息SOCK 输出网络套接字的使用统计信息ALL 输出所有类型的网络活动统计信息-----------f 从文件中读取数据信息。一般读取sar日志,也可读取-o选项生成的文件,后方要加文件名-o 将sar的输出信息保存到文件中,后方要加文件名-i 指定间隔时长,单位为秒-s 指定输出统计数据的起始时间(格式为hh:mm:ss;例如01:00:00) -e 指定输出统计数据的截至时间,通常与-S选项连用。无数值时默认为18:00:00(格式为hh:mm:ss;例如09:00:00)
【3】输出项
1cpu的输出
sar -u
%usr CPU在用户模式下,执行进程的时间百分比 %nice CPU在用户模式下,用于nice操作,所占用CPU总时间的百分比 %system CPU处在系统模式(内核态)下,执行进程的时间百分比 %iowait CPU用于等待I/O操作完成(等待输入输出完成),占用CPU总时间的百分比 %steal 管理程序为另一个虚拟进程提供服务而等待虚拟CPU的百分比%idle CPU空闲时间百分比
注意:
如果%iowait的值过高,表示硬盘存在I/O瓶颈 如果%idle值高,表示CPU较空闲如果%idle 的值高但系统响应慢时,有可能是 CPU 等待分配内存,此时应加大内存容量 如果%idle 的值持续低于10,则系统的 CPU 处理能力相对较低,表明系统中最需要解决的资源是 CPU
2I/O和传送速率输出
sar -b
tps 每秒向磁盘设备请求数据的次数,包括读、写请求,其为rtps与wtps的和。每一次IO下发后会先将多个请求合并为一个I/O磁盘请求,这里tps指请求合并后的请求计数rtps 每秒向磁盘设备的读请求次数 wtps 每秒向磁盘设备的写请求次数 bread/s 每秒钟从物理设备读入的数据量,单位为 块/s bwrtn/s 每秒钟向物理设备写入的数据量,单位为 块/s
3设备使用情况输出
sar -d
DEV 磁盘设备,加上用参数-p可以打印出sda等磁盘设备名称;如不加参数-p,设备则显示为dev253-0等tps 每秒向磁盘设备请求数据的次数,包括读、写请求,其为rtps与wtps的和。每一次IO下发后会先将多个请求合并为一个I/O磁盘请求,这里tps指请求合并后的请求计数rd_sec/s 每秒读扇区的次数wr_sec/s 每秒写扇区的次数avgrq-sz 平均每次设备I/O操作的数据大小(扇区)avgqu-sz 磁盘请求队列的平均长度await 从请求磁盘到系统处理完,每次请求的平均消耗时间,包括请求队列等待时间(单位是毫秒)svctm 系统处理每次请求的平均时间,不包括在请求队列中消耗的时间%util I/O请求占CPU的百分比
4网络设备统计信息输出
sar -n EDEV
IFACE 网络设备名rxpck/s 每秒接收的包数量txpck/s 每秒传输的包数量rxbyt/s 每秒接收的字节数(单位为byte)txbyt/s 每秒传输的字节数(单位为byte)rxkB/s 每秒收的数据量(单位为kB)txkB/s 每秒发的数据量(单位为kB)rxcmp/s 每秒接收压缩包的数量txcmp/s 每秒传输压缩包的数量rxmcst/s 每秒接收的多播(multicast)包的总数排查网络设备故障
5网络设备故障信息输出
EDEV |egrep ‘eth0|IFACE’ (本次指定了网卡etho0,可填入其他网卡)
IFACE网络设备名rxerr/s每秒接收的坏包数量txerr/s传输包时每秒发生错误的数量coll/s传输包时每秒发生冲突的数量rxdrop/s接收包时,每秒丢弃的包的数量(缺乏缓存导致)txdrop/s传输包时,每秒丢弃的包的数量(缺乏缓存导致)txcarr/s传输包时,每秒发生的传输错误的数量rxfram/s接收包时,每秒发生帧校验错误的数量rxfifo/s接收包时,每秒钟缓冲区溢出错误的数量txfifo/s传输包时,每秒钟缓冲区溢出错误的数量
6内存分页状态输出
sar -B
pgpgin/s每秒从磁盘空间或交换空间置换到内存的字节数(单位为KB)pgpgout/s每秒从内存置换到磁盘空间或交换空间的字节数(单位为KB)fault/s每秒钟系统产生的缺页数(主缺页加次缺页)majflt/s每秒钟产生的主缺页数pgfree/s每秒被放入空闲队列中的页个数pgscank/s每秒被kswapd扫描的页个数pgscand/s每秒直接被扫描的页个数pgsteal/s每秒钟从cache中被清除来满足内存需要的页个数%vmeff每秒清除的页占总扫描页的百分比
7进程队列长度和平均负载状态输出
sar -q
runq-sz 运行队列的长度,等待运行的进程数量
plist-sz 进程列表中进程和线程的数量
ldavg-1 最后1分钟的系统平均负载
ldavg-5 过去5分钟的系统平均负载
ldavg-15 过去15分钟的系统平均负载
8内存和交换空间状态输出
sar -r
kbmemfree空闲的内存数量(单位为KB)kbmemused已使用的内存数量,不包含内核使用的内存(单位为KB)%memused已使用内存的百分数kbbuffers内核缓冲区buffer,使用的内存数量(单位为KB)kbcached内核高速缓存cache数据使用的内存数量(单位为KB)kbcommit保证当前系统所需要的内存,即为了确保不溢出而需要的内存(RAM+swap)%commitkbcommit与所有内存总量的百分比
9系统交换活动信息输出
sar -W
pswpin/s 每秒系统换入的交换页面数量
pswpout/s 每秒系统换出的交换页面数量
七、sar使用实例-查看某一时间段的情况
1查看凌晨1点到3点的cpu
sar -s 01:00:00 -e 03:00:00
2查看凌晨1点到3点的系统的平均负载
若要看某时间段其他性能,加上对应选项
sar -s 01:00:00 -e 03:00:00 -q
3查看本月3号的cpu
注意:
该操作需要去查看sar的日志(第五节已经介绍一次)
默认只保存一个月的
sar查看性能或其日志时,注意自己的使用的是12还是24小时制
日志的切割是昨天晚上12点到今天12点为一天
cd/var/log/sa/sar -f sa03
Q2: Linux里面杀掉进程命令是什么?
方法一: Terminal终端输入: gnome-system-monitor,就可以打开system monitor
如图:
然后找到相应进程,右击选择kill process就可以了
方法二: 通过kill 进程id的方式可以实现,
首先需要知道进程id, 例如,想要杀死firefox的进程,通过 ps -ef|grep firefox,可以查到firefox的进程id:
然后通过 kill 3781 就可以关闭进程了.
补充: 1. kill -9 来强制终止退出, 例如: kill -9 3781
2.特殊用法:
kill -STOP [pid]
发送SIGSTOP (17,19,23)停止一个进程,而并不消灭这个进程。
kill -CONT [pid]
发送SIGCONT (19,18,25)重新开始一个停止的进程。
kill -KILL [pid]
发送SIGKILL (9)强迫进程立即停止,并且不实施清理操作。
kill -9 -1
终止你拥有的全部进程。
方法三: killall 通过程序的名字,来杀死进程
例如: killall firefox
注意: 该命令可以使用 -9 参数来强制杀死进程, killall -9 firefox
方法四: pkill 通过程序的名字, 直接杀死所有进程
例如: pkill firefox
方法五: 通过xkill 可以杀死图形程序应用, 例如firefox崩溃无响应,可以使用该命令.
例如: 用法xkill , 会出现一个白色的x, 然后用鼠标单击想要杀死的应用,如图
以下内容引用自:
◆编者注:
KILLALL(Section: User (1)/Updated: 1999年9月7日)
———————————————–
NAME (名称)
killall – 以名字方式来杀死进程
SYNOPSIS (总览)
killall [-egiqvw] [-signal] name …
killall -l
killall -V
DESCRIPTION (描述)
killall 发送一条信号给所有运行任意指定命令的进程. 如果没有指定信号名, 则发送SIGTERM.。
信号可以以名字 (如 -HUP ) 或者数字 (如 -1 ) 的方式指定. 信号 0 (检查进程是否存在)只能以数字方式指定。
如果命令名包括斜杠 (/), 那么执行该特定文件的进程将被杀掉, 这与进程名无关。
如果对于所列命令无进程可杀, 那么 killall 会返回非零值. 如果对于每条命令至少杀死了一个进程, killall 返回 0。Killall 进程决不会杀死自己 (但是可以杀死其它 killall 进程)。
OPTIONS (选项)
-e
对 于很长的名字, 要求准确匹配. 如果一个命令名长于 15 个字符, 则可能不能用整个名字 (溢出了). 在这种情况下, killall 会杀死所有匹配名字前 15 个字符的所有进程. 有了 -e 选项,这样的记录将忽略. 如果同时指定了 -v 选项, killall 会针对每个忽略的记录打印一条消息。
-g
杀死属于该进程组的进程. kill 信号给每个组只发送一次, 即使同一进程组中包含多个进程。
-i
交互方式,在杀死进程之前征求确认信息。
-l
列出所有已知的信号名。
-q
如果没有进程杀死, 不会提出抱怨。
-v
报告信号是否成功发送。
-V
显示版本信息。
-w
等待所有杀的进程死去. killall 会每秒检查一次是否任何被杀的进程仍然存在, 仅当都死光后才返回. 注意: 如果信号被忽略或没有起作用, 或者进程停留在僵尸状态, killall 可能会永久等待。
FILES(相关文件)
/proc proc文件系统的存在位置。
KNOWN bugS (已知 BUGS)
以文件方式杀死只对那些在执行时一直打开的可执行文件起作用, 也即, 混杂的可执行文件不能够通过这种方式杀死。
要警告的是输入 killall name 可能不会在非 Linux 系统上产生预期的效果, 特别是特权用户执行时要小心。
在两次扫描的间隙, 如果进程消失了而被代之以一个有同样 PID 的新进程, killall -w 侦测不到。
来源:
下面来了解相关命令:
一、查看进程的命令 有ps、pstree、pgrep等:
1、ps
显示进程信息,参数可省略
-aux 以BSD风格显示进程 常用
-efH 以System V风格显示进程
-e , -A 显示所有进程
a 显示终端上所有用户的进程
x 显示无终端进程
u 显示详细信息
f 树状显示
w 完整显示信息
l 显示长列表
在终端中执行ps aux,
各列输出字段的含义:
USER 进程所有者
PID 进程ID
PPID 父进程
%CPU CPU占用率
%MEM 内存占用率
NI 进程优先级。数值越大,占用CPU时间越少
VSZ 进程虚拟大小
RSS 页面文件占用
TTY 终端ID
STAT 进程状态
+---D 不可中断 Uninterruptible sleep (usually IO)
+---R 正在运行,或在队列中的进程
+---S 处于休眠状态
+---T 停止或被追踪
+---Z 僵尸进程
+---W 进入内存交换(从内核2.6开始无效)
+---X 死掉的进程
+--- 高优先级
+---N 低优先级
+---L 有些页被锁进内存
+---s 包含子进程
+---+ 位于后台的进程组;
+---l 多线程,克隆线程 multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
PID:进程标识符,系统为每一个进程分配一个识别码,称为PID。
ps命令极为常用,其他命令还有:
2.pstree
树状显示进程信息
-a 显示完整命令及参数
-c 重复进程分别显示
-c 显示进程ID PID
-n 按 PID 排列进程
3.pgrep 进程名
显示进程的PID
-l 显示进程名和进程PID
-o 进程起始ID
-n 进程终止ID
二、结束进程的命令 有kill、pkill、killall、xkill等:
kill [信号代码] 进程PID
根据PID向进程发送信号,常用来结束进程,默认信号为 -9
信号代码,可取值如下:
-l [信号数字] 显示、翻译信号代码
-9 , -KILL 发送 kill 信号退出
-6 , -ABRT 发送 abort 信号退出
-15 , -TERM 发送 Termination 信号
-1 , -HUP 挂起
-2 , -INT 从键盘中断,相当于 Ctrl+c
-3 , -QUIT 从键盘退出,相当于 Ctrl+d
-4 , -ILL 非法指令
-11 , -SEGV 内存错误
-13 , -PIPE 破坏管道
-14 , -ALRM
-STOP 停止进程,但不结束
-CONT 继续运行已停止的进程
-9 -1 结束当前用户的所有进程
pkill 进程名
结束进程族。如果结束单个进程,请用 kill
killall 进程名
killall和pkill 应用方法差不多,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill 来杀掉。
xkill
在图形界面中点杀进程。
当xkill运行时鼠标指针变为骷髅图案,哪个图形程序崩溃一点就OK了。如果您想终止xkill ,就按右键取消。
比如当firefox 出现崩溃不能退出时,点鼠标就能杀死firefox 。
xkill 调用方法:
[root@localhost ~]# xkill
来源:
linux中pkill的简单用法
pkill 和killall 应用方法差不多,也是直接杀死运行中的程序;如果您想杀掉单个进程,请用kill 来杀掉。
必要参数
-f 显示完整程序
-l 显示源代码
-n 显示新程序
-o 显示旧程序
-v 与条件不符合的程序
-x 与条件符合的程序
选择参数
-p进程号 列出父进程为用户指定进程的进程信息
-t终端 指定终端下的所有程序
-u用户 指定用户的程序
应用方法:
#pkill 正在运行的程序名
举例:
Java代码
[root@localhost beinan]# pgrep -l gaim
2979 gaim
[root@localhost beinan]# pkill gaim
也就是说:
kill 对应的是 PID
pkill 对应的是COMMAND
例如在Ubuntu中强制结束一个已成僵尸的名称为:firefox,PID为:1603的进程,可以如下操作:
方法一:
(1)ctrl+alt+t,调出终端,输入 top,然后就可以看到现在系统的进程,是按占用资源从多到少排列的。
找到要关掉的进程,记下该进程第一列的数字编号(假设是xx),然后输入q,退回终端。
(2)输入:sudo kill xx(对应刚才的编号)。
方法二:
ctrl+alt+t,调出终端,输入:sudo pkill firefox
范例1: 杀死指定进程
Java代码
root@snail-hnlinux:~# ps -A //显示所有进程
PID TTY TIME CMD
1 ? 00:00:03 init
2 ? 00:00:00 kthreadd
3 ? 00:00:00 migration/0
4 ? 00:00:00 ksoftirqd/0
5 ? 00:00:00 watchdog/0
……忽略部分
28382 ? 00:00:00 gvfsd-http
28391 ? 00:07:07 software-center
30467 ? 00:00:31 designer-qt4
30487 ? 00:00:06 gnome-terminal
30488 ? 00:00:00 gnome-pty-helpe
30489 pts/0 00:00:00 bash
30670 ? 00:00:00 debconf-communi
30749 pts/0 00:00:17 gedit
31155 ? 00:00:00 dhclient
31325 ? 00:00:01 sshd
31327 ? 00:00:00 sshd
31400 pts/1 00:00:00 bash
31485 pts/2 00:00:00 bash
31653 ? 00:00:00 aptd
31658 pts/1 00:00:00 ps
root@snail-hnlinux:~# pidof sshd //查看与sshd相关进程
31327 31325 2095
root@snail-hnlinux:~# pkill -9 sshd //杀死指定进程
范例2:杀死同义终端下的进程
Java代码
root@snail-hnlinux:~# pkill -t tty1 //杀死终端1下的所有进程
范例3: 杀死指定用户进程
Java代码
root@snail-hnlinux:~# pkill -u hnlinux
范例4:反向选择
Java代码
root@snail-hnlinux:~# pkill -vu hnlinux //杀死不属于hnlinux用户的所有进程
————————————————
版权声明:本文为CSDN博主「MrCoderr」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:
Q3: Linux中shell命令相关问题求助大佬
Linux Shell常用shell命令
一、文件、目录操作命令
1、ls命令
功能:显示文件和目录的信息
ls 以默认方式显示当前目录文件列表
ls -a 显示所有文件包括隐藏文件
ls -l 显示文件属性,包括大小,日期,符号连接,是否可读写及是否可执行
ls -lh 显示文件的大小,以容易理解的格式印出文件大小 (例如 1K 234M2G)
ls -lt 显示文件,按照修改时间排序
2、cd命令
功能:改名目录
cd dir 切换到当前目录下的dir目录
cd / 切换到根目录
cd .. 切换到到上一级目录
cd ../.. 切换到上二级目录
cd ~ 切换到用户目录,比如是root用户,则切换到/root下
根目录与家目录的区别:
根目录是系统的一级文件结构,家目录只是非root用户控制目录。相当于windows我的文档,非root用户只能完会控制家目录的文件,不能控制根目录下其它的文件。
根目录是设备的最顶层目录,用 / 表示
家目录是每个用户登录系统后所在的目录,通常在 /home 下,以用户名作为目录,可以用 ~ 表示。
cd / 进入根目录
cd ~/ 进入家目录
当然,也可以用 /home/someone 进入someone的家目录
3、cp命令
功能:copy文件
cp source target 将文件source复制为target
cp /root /source . 将/root下的文件source复制到当前目录
eg:cp /home/open_038_dev/external_files/test/test.sh .
cp –av soure_dir target_dir 将整个目录复制,两目录完全一样
4、rm命令
功能:删除文件或目录
rm file 删除某一个文件
rm -f file 删除时候不进行提示。可以于r参数配合使用
rm -rf dir 删除当前目录下叫dir的整个目录
5、mv命令
功能:将文件移动走,或者改名,在uinx下面没有改名的命令,如果想改名,可以使用该命令
mv source target 将文件source更名为target
命令参数:
-b :若需覆盖文件,则覆盖前先行备份。
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
-u :若目标文件已经存在,且 source 比较新,才会更新(update)
-t : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。
实例一:文件改名
命令:
mv test.log test1.txt
实例二:移动文件
命令:
mv test1.txt test3
将文件log1.txt,log2.txt,log3.txt移动到目录test3中。
mv log1.txt log2.txt log3.txt test3
将文件log1.txt log2.txt log3.txt异动到/opt/soft/test/test4目录下
mv -t /opt/soft/test/test4/ log1.txt log2.txt log3.txt
移动当前文件夹下的所有文件到上一级目录
mv * ../
6、diff
功能:比较文件内容
diff dir1 dir2 比较目录1与目录2的文件列表是否相同,但不比较文件的实际内容,不同则列出
diff file1 file2 比较文件1与文件2的内容是否相同,如果是文本格式的文件,则将不相同的内容显示,如果是二进制代码则只表示两个文件是不同的
comm file1 file2 比较文件,显示两个文件不相同的内容
7、ln命令
功能:建立链接。windows的快捷方式就是根据链接的原理来做的
ln source_path target_path 硬连接
ln -s source_path target_path 软连接
ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。例如:ln –s /bin/less /usr/local/bin/less
二、查看文件内容命令
1、cat命令
显示文件的内容,和DOS的type相同
cat file
2、more命令
功能:分页显示命令
more file
more命令也可以通过管道符(|)与其他的命令一起使用,例如:
ps ux|more
ls|more
3、tail 命令
功能:显示文件的最后几行
tail -n 100 aaa.txt 显示文件aaa.txt文件的最后100行
4、vi命令
vi file 编辑文件file
vi 原基本使用及命令:
输入命令的方式为先按[ESC]键,然后输入:w(写入文件),:w!(不询问方式写入文件),:wq保存并退出,:q退出,q!不保存退出
5、touch命令
功能:创建一个空文件
touch aaa.txt 创建一个空文件,文件名为aaa.txt
三、基本系统命令
1、man命令
功能:查看某个命令的帮助,如果你不知道某个命令的用法不懂,可以问他,他知道就回告诉你
例如:
man ls 显示ls命令的帮助内容
2、w命令
功能:显示登录用户的详细信息
例如:
Sarge:~# w
22:06:51 up 43 min, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
zhoulj pts/0 10.140.0.109 21:24 0.00s 0.85s 0.09s sshd: zhoulj [priv]
3、who命令
功能:显示登录用户
例如:
Sarge:~# who
zhoulj pts/0 Mar 13 21:24 (10.140.0.109)
4、last命令
功能:查看最近那些用户登录系统
例如:
Sarge:~# last
zhoulj pts/0 10.140.0.109 Mon Mar 13 21:24 still logged in
reboot system boot 2.6.8-2-386 Mon Mar 13 21:23 (00:43)
zhoulj pts/0 10.140.0.105 Sun Mar 12 22:51 - down (00:00)
zhoulj pts/0 10.140.0.105 Sun Mar 12 22:51 - 22:51 (00:00)
root tty1 Sun Mar 12 22:50 - down (00:01)
root tty1 Sun Mar 12 22:46 - 22:48 (00:02)
root tty1 Sun Mar 12 22:43 - 22:46 (00:02)
reboot system boot 2.6.8-2-386 Mon Mar 13 06:34 (-7:-41)
wtmp begins Mon Mar 13 06:34:11 2006
5、date命令
功能:系统日期设定
date 显示当前日期时间
date -s 20:30:30 设置系统时间为20:30:30
date -s 2002-3-5 设置系统时期为2003-3-5
date -s "060520 06:00:00" 设置系统时期为2006年5月20日6点整。
6、clock命令
功能:时钟设置
clock –r 对系统Bios中读取时间参数
clock –w 将系统时间(如由date设置的时间)写入Bios
7、uname命令
功能:查看系统版本
uname -R 显示操作系统内核的version
例如:
Sarge:~# uname -a
Linux Sarge 2.6.8-2-386 #1 Tue Aug 16 12:46:35 UTC 2005 i686 GNU/Linux
8、关闭和重新启动系统命令
reboot 重新启动计算机
shutdown -r now 重新启动计算机,停止服务后重新启动计算机
shutdown -h now 关闭计算机,停止服务后再关闭系统
halt 关闭计算机
一般用shutdown -r now,在重启系统是,关闭相关服务,shutdown -h now也是如此。
9、su命令
功能:切换用户
su - 切换到root用户
su - zhoulj 切换到zhoulj用户,
注意:- ,他很关键,使用-,将使用用户的环境变量
四、监视系统状态命令
1、top命令
功能:查看系统cpu、内存等使用情况
2、free命令
功能:查看内存和swap分区使用情况
例如:
Sarge:~# free -tm
total used free shared buffers cached
Mem: 187 42 145 0 6 16
-/+ buffers/cache: 19 167
Swap: 243 0 243
Total: 430 42 388
3、uptime
功能:现在的时间 ,系统开机运转到现在经过的时间,连线的使用者数量,最近一分钟,五分钟和十五分钟的系统负载
例如:
Sarge:~# uptime
21:54:46 up 31 min, 1 user, load average: 0.00, 0.00, 0.00
4、vmstat命令
功能:监视虚拟内存使用情况
例如:
# vmstat
procs memory swap io system cpu
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 0 63704 8100 32272 0 0 8 3 103 17 0 1 98 1
5、ps命令
功能:显示进程信息
ps ux 显示当前用户的进程
ps uxwww 显示当前用户的进程的详细信息
ps aux 显示所有用户的进程
ps ef 显示系统所有进程信息
6、kill命令
功能:干掉某个进程,进程号可以通过ps命令得到
kill -9 1001 将进程编号为1001的程序干掉
kill all -9 apache 将所有名字为apapche的程序杀死,kill不是万能的,对僵死的程序则无效。
五、磁盘操作命令
1、df命令
功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
参数 功能
-a 列出全部目录
-Ta 列出全部目录,并且显示文件类型
-B 显示块信息
-i 以i节点列出全部目录
-h 按照日常习惯显示(如:1K、100M、20G)
-x [filesystype] 不显示[filesystype]
例如:
# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext3 265M 64M 187M 26% /
tmpfs tmpfs 94M 0 94M 0% /dev/shm
/dev/sda6 ext3 714M 8.1M 667M 2% /home
/dev/sda8 ext3 956M 215M 691M 24% /usr
/dev/sda7 ext3 714M 57M 619M 9% /var
2、du命令
功能:检测一个目录和(递归地)所有它的子目录中的文件占用的磁盘空间。
参数 功能
-s [dirName] 显示目录占用总空间
-sk [dirName] 显示目录占用总空间,以k为单位
-sb [dirName] 显示目录占用总空间,以b为单位
-sm [dirName] 显示目录占用总空间,以m为单位
-sc [dirName] 显示目录占用总空间,加上目录统计
-sh [dirName] 只统计目录大小
例如:
# du -sh /etc
1.3M /etc
3、mount命令
功能:使用mount命令就可在Linux中挂载各种文件系统。
格式:mount -t 设备名 挂载点
(1)、mount /dev/sda1 /mnt/filetest
mount -t vfat /dev/hda /mnt/fatfile
mount -t ntfs /dev/hda /mnt/ntfsfile
mount -t iso9660 /dev/cdrom /mnt/cdrom
mount -o 设备名 挂载点
(2)、使用usb设备
modprobe usb-storage
mkdir /mnt/usb
mount -t auto /dev/sdx1 /mnt/usb
umount /mnt/usb
4、mkswap命令
功能:使用mkswap命令可以创建swap空间,如:
debian:~# mkswap -c /dev/hda4
debian:~# swapon /dev/hda4 #启用新创建的swap空间,停用可使用swapoff命令
5、fdisk命令
功能:对磁盘进行分区
fdisk /dev/xxx 格式化xxx设备(xxx是指磁盘驱动器的名字,例如hdb,sdc)
fdisk -l 显示磁盘的分区表
6、mkfs命令
功能:格式化文件系统,可以指定文件系统的类型,如ext2、ext3、fat、ntfs等
格式1:mkfs.ext3 options /dev/xxx
格式2:mkfs -t ext2 options /dev/xxx
参数 功能
-b 块大小
-i 节点大写
-m 预留管理空间大小
例如:
debian:~#mkfs.ext3 /dev/sdb1
7、e2fsck命令
功能:磁盘检测
e2fsck /dev/hda1 检查/dev/hda1是否有文件系统错误,提示修复方式
e2fsck -p /dev/hda1 检查/dev/hda1是否有错误,如果有则自动修复
e2fsck -y /dev/hda1 检查错误,所有提问均于yes方式执行
e2fsck -c /dev/hda1 检查磁盘是否有坏区
8、tune2fs命令
功能:调整ext2/ext3文件的参数
参数 功能
-l 查看文件系统信息
-c 设置强制自检的挂载次数
-i 设置强制自检的间隔时间,单位天
-m 保留块的百分比
-j 将ext2文件系统转换成ext3格式
# tune2fs -l /dev/sda1
9、dd命令
功能:功能:把指定的输入文件拷贝到指定的输出文件中,并且在拷贝过程中可以进行格式转换。
跟DOS下的diskcopy命令的作用类似。
dd if=/dev/fd0 of=floppy.img 将软盘的内容复制成一个镜像
dd if=floppy.img of=/dev/fd0 将一个镜像的内容复制到软盘,做驱动盘的时候经常用。
六、用户和组相关命令
1、groupadd命令
功能:添加组
groupadd test1 添加test1组
groupadd -g 1111 test2 添加test2组,组id为1111
2、useradd命令
功能:添加用户
useradd user1 添加用户user1,home为/home/user1,组为user1
useradd -g test1 -m -d /home/test1 test1 添加用户test1,home为/home/test1,组为test1
user list 显示已登陆的用户列表
3、passwd命令
功能:更改用户密码
passwd user1 修改用户user1的密码
passwd -d root 将root用户的密码删除
4、userdel命令
功能:删除用户
userdel user1 删除user1用户
5、chown命令
功能:改变文件或目录的所有者
chown user1 /dir 将/dir目录设置为user1所有
chown -R user1.user1 /dir 将/dir目录下所有文件和目录,设置为user1所有,组为user1。-R递归到下面的每个文件和目录
6、chgrp命令
功能:改变文件或目录的所有组
chgrp user1 /dir 将/dir目录设置为user1所有
7、chmod命令
功能:改变用户的权限
chmod a+x file 将file文件设置为可执行,脚本类文件一定要这样设置一个,否则得用bash file才能执行
chmod 666 file 将文件file设置为可读写
chmod 750 file 将文件file设置为,所有者为完全权限,同组可以读和执行,其他无权限
8、id命令
功能:显示用户的信息,包括uid、gid等
# id zhoulj
uid=500(zhoulj) gid=500(zhoulj) groups=500(zhoulj)
9、finger命令
功能:显示用的信息
注意:debian下没有该命令。
# finger zhoulj
Login: zhoulj Name:
Directory: /home/zhoulj Shell: /bin/bash
On since Sun May 21 07:59 (CST) on pts/0 from 192.168.1.4
No mail.
No Plan.
七、压缩命令
1、gzip格式命令
功能:压缩文件,gz格式的
注意:生成的文件会把源文件覆盖
gzip -v 压缩文件,并且显示进度
-d 解压缩
gunzip -f 解压缩
例如:
# gzip a.sh
#ll
-rwxr-xr-x 1 root root 71 12月 18 21:08 a.sh.gz
# gzip -d a.sh.gz
#ll
-rwxr-xr-x 1 root root 48 12月 18 21:08 a.sh
2、zip格式命令
功能:压缩和解压缩zip命令
zip
unzip
例如:
将/home/Blinux/html/这个目录下所有文件和文件夹打包为当前目录下的html.zip:
zip -q -r html.zip /home/Blinux/html
(-q:不显示指令执行过程 -r:递归处理,将指定目录下的所有文件和子目录一并处理)
# zip a.sh.zip a.sh
adding: a.sh (stored 0%)
# ll
-rw-r--r-- 1 root root 188 5月 21 10:37 a.sh.zip
# unzip a.sh.zip
Archive: a.sh.zip
replace a.sh? [y]es, [n]o, [A]ll, [N]one, [r]ename: r
new name: a1.sh
extracting: a1.sh
# ll
-rwxr-xr-x 1 root root 48 12月 18 21:08 a1.sh
3、bzip2根式命令
功能:bzip2格式压缩命令,
注意:生成的文件会把源文件覆盖
bzip2
bunzip2
例如:
# bzip2 a.sh
# ll
-rwxr-xr-x 1 root root 85 12月 18 21:08 a.sh.bz2
# bunzip2 a.sh.bz2
# ll
-rwxr-xr-x 1 root root 48 12月 18 21:08 a.sh
4、tar命令
功能:归档、压缩等,比较重要,会经常使用。
-cvf 压缩文件或目录
-xvf 解压缩文件或目录
-zcvf 压缩文件或,格式tar.gz
-zxvf 解压缩文件或,格式tar.gz
-zcvf 压缩文件或,格式tgz
-zxvf 解压缩文件或,格式tgz
举例:
# tar cvf abc.tar *.sh
# tar xvf abc.tar
# tar czvf abc.tar.gz *.sh
# ll
-rw-r--r-- 1 root root 20480 5月 21 10:50 abc.tar
-rw-r--r-- 1 root root 1223 5月 21 10:53 abc.tar.gz
# tar xzvf abc.tar.gz
八、网络相关命令
1、ifconfig命令
功能:显示修改网卡的信息
ifconfig 显示网络信息
ifconfig eth0 显示eth0网络信息
修改网络信息:
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 设置网卡1的地址192.168.1.1,掩码为255.255.255.0
ifconfig eth0:1 192.168.1.2 捆绑网卡1的第二个地址为192.168.1.2
ifconfig eth0:x 192.168.1.n 捆绑网卡1的第n个地址为192.168.1.n
例如:
# ifconfig eth0:1 192.168.1.11
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:06:9C:24
inet addr:192.168.1.5 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4220 errors:0 dropped:0 overruns:0 frame:0
TX packets:3586 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:342493 (334.4 Kb) TX bytes:469020 (458.0 Kb)
Interrupt:9 Base address:0x1400
eth0:1 Link encap:Ethernet HWaddr 00:0C:29:06:9C:24
inet addr:192.168.1.11 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:9 Base address:0x1400
2、route命令
功能:显示当前路由设置情况
route 显示当前路由设置情况,比较慢一般不用。
route add -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254 添加静态路由
route del -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254 添加静态路由
route add default gw 192.168.1.1 metric1 设置192.168.1.1为默认的路由
route del default 将默认的路由删除
举例:
# route add -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254
# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.0.0.0 192.168.1.254 255.255.0.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
# route del -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254
# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
3、netstat命令
功能:显示网络状态
netstat -an 查看网络端口信息
netstat -nr 查看路由表信息,比route快多了,
4、启动网络的命令
redhat族的命令:
/etc/init.d/network
debian命令:
/etc/init.d/networking
例如:
/etc/init.d/network stop 停止网络,
/etc/init.d/network start 启动网络,
5、手工修改网络配置
(1)、debian系统
配置文件位置为:/etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0 eth1
iface eth0 inet static
address 10.4.5.6
netmask 255.255.255.0
network 10.4.5.0
broadcast 10.4.5.255
iface eth1 inet static
address 219.25.5.60
netmask 255.255.255.192
network 219.25.5.0
broadcast 219.25.5.63
gateway 219.25.5.30
修改后保存配置后,运行
/etc/init.d/networking restart
网络配置就改变了
(2)、redhat系统
配置文件位置为:/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.1.255
IPADDR=192.168.1.5
NETMASK=255.255.255.0
NETWORK=192.168.1.0
GATEWAY=192.168.1.254
ONBOOT=yes
TYPE=Ethernet
修改后保存配置后,运行
/etc/init.d/network restart
或者
service network restart
网络配置就改变了。
默认DNS的文件的位置为:/etc/resolv.conf
#cat /etc/resolv.conf
search test.com.cn
nameserver 192.168.1.11
6、网络排错
(1)、ping命令
功能:不说了,不知道就用干这行了。
ping
(2)、traceroute命令
功能:路由跟踪
traceroute
traceroute 207.68.173.7
(3)、nslookup命令
功能:域名解析排错
例如:
$ nslookup
Note: nslookup is deprecated and may be removed from future releases.
Consider using the `dig' or `host' programs instead. Run nslookup with
the `-sil[ent]' option to prevent this message from appearing.
Server: 192.168.1.11
Address: 192.168.1.11#53
Non-authoritative answer:
Name:
Address: 202.118.66.66
server 202.118.66.6
Default server: 202.118.66.6
Address: 202.118.66.6#53
Server: 202.118.66.6
Address: 202.118.66.6#53
Non-authoritative answer: canonical name =
.
Name:
Address: 202.108.22.5
九、其他命令
1、ssh命令
功能:远程登陆到其他UNIX主机
ssh -l user1 192.168.1.2 使用用户名user1登陆到192.168.1.2
ssh
使用用户名user1登陆到192.168.1.2
2、scp命令
功能:安全copy
例如:
scp abc.tar.gz
:~ 将本地的abc.tar.gz 复制到 192.168.1.5的user1用户的根(/home/user1)下。
3、telnet命令
功能:登陆到远程主机
例如:
telnet 192.168.1.5
————————————————
版权声明:本文为CSDN博主「Sunshine~LH」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:
linuxsa1命令的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于linux sh命令详解、linuxsa1命令的信息别忘了在本站进行查找喔。








