Linux系统(二)

来源:互联网 发布:烟台南山学院教务网络 编辑:程序博客网 时间:2024/06/06 13:20

修改主机名

永久生效:修改配置文件

vi /etc/sysconfig/network

临时生效:

hostname 主机名   

修改Ip地址

修改配置文件(以网络方式为NAT示例)

vi /etc/sysconfig/network-scripts/ifcfg-eth0

BOOTPROTO=static静态ip

ONBOOT=yes自启动选确定

TYPE="Ethernet"类型是英特网

IPADDR=192.168.8.11Ip地址

NETMASK=255.255.255.0子网掩码

GATEWAY=192.168.8.2 (规定是网关的2,本机是1)

DNS1=114.114.114.114   两个DNS地址

DNS2=8.8.8.8

重启网络生效:

# service network restart



如果网络重启失败解决方案:

#chkconfig NetworkManager off

#chkconfig network on

#service NetworkManager stop

#service network start




修改映射关系(另一篇文章有详细说明)是在本机操作,而非虚拟机,同时关闭防火墙


Linux常用命令

Linux命令的分类

内部命令:

属于Shell解析器的一部分,也称为内建(Built-IN)指令。

内部命令属于Shell的一部分,所以并没有单独对应的系统文件,只要Shell解释器被运行,内部指令也就自动载入内存了,用户可以直接使用。内部命令无需从硬盘中重新读取文件,因此执行效率更高。

内部命令找不到命令所在路径。

外部命令:

指的是Linux系统中能够完成特定功能的脚本文件或二进制程序,每个外部命令对应了系统中的一个文件,是独立于Shell解析器之外的文件程序。Linux系统必须知道外部命令对应的文件位置,才能够由Shell加载并执行。 

可简单理解为,系统读取环境变量文件,去找Path路径,然后加载进内存中。



查看帮助文档

内部命令:help+命令(help cd)

外部命令:man+命令(man ls)


type命令

type cd    cd is a shell builtin(提示cd是shell自带命令)

type grep grep is /bin/grep(提示grep是一个外部命令,并说明路径)

Linux系统默认会将存放外部命令、程序的目录(如/bin/usr/bin/usr/local/bin等)添加到用户的搜索路径中,当使用位于这些目录中的外部命令时,用户不需要指定具体的位置。


ln 链接命令  

英文: link命令路径:/bin/ln执行权限:所有用户

作用:产生链接文件     

硬链接 软连接

语法:

ln -s   [源文件]    [目标文件]   创建软链接      源文件使用绝对路径   windows下的快捷方式

ln  [源文件]    [目标文件]   创建硬链接


eg:# ln -s /etc/service  .service.soft

创建文件/etc/service的软链接.service.soft

eg:# /etc/service  /service.hard 

创建文件/etc/service的硬链接/service.hard    

软连接类似于windows下的快捷方式

软连接文件格式:

lrwxrwxrwx. 1 root root     13 Jul 20 07:50 service -> /etc/services

硬链接数量,如果该文件没有硬链接,就只有本身一个硬链接。

13   链接文件的长度

格式解析(特征):

   1软连接的文件类型是 l(软连接),软连接文件的权限都是  lrwxrwxrwx 

   2->  箭头指向到源文件

真正的权限取决于对源文件的权限

时间值为创建软连接的时间

软连接可以跨文件系统生成

硬链接特征(了解)

1,相当于 cp -p +同步更新  

2,通过i节点识别,与源文件有相同的inode节点

3,硬链接不能跨分区,ln /home/test/issuels /boot/test(错误)  

4,不能针对目录使用  ln /tmp/ aa.hard  (无法将目录/tmp生成硬链接)

删除软连接

rm -rf symbolic_name 


man

英文:manual命令路径:/usr/bin/man执行权限:所有用户

作用:获取命令或配置文件的帮助信息

语法:man [命令]

egman ls    man  services   

(查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)

调用的是more命令来浏览帮助文档,按空格翻下一页,按回车翻下一行,按q退出。

使用/加上关键的参数可直接定位搜索,  n  查找下一个,shift+n  查找上一个

eg: /-l   直接查看-l的介绍

man 只能查看外部命令的帮助信息,如果使用man查不到一个命令的帮助信息,那么就使用help命令来查看帮助。


扩展:man的级别(帮助文档的类型,了解1 5即可)

man man-pages 查看每一种类型代表的含义   man文档的类型(1~9)

1是命令,5是配置文件  man优先显示命令,可指定帮助类型

eg:man 5 passwd (5代表配置文件级别)

查看/etc/passwd配置文件的信息

help

help  查看shell内置命令的帮助信息

eg:help cd

内置命令,使用whereis,which,man都不能查看


命令名 --help

命令名 --help 列举该命令的常用选项

 eg: cp --help


文件搜索命令

find      

命令路径:/bin/find执行权限:所有用户

作用:查找文件或目录      

语法:find [搜索路径] [匹配条件]

如果没有指定搜索路径,默认从当前目录查找

find命令选项

-name 按名称查找 精准查找

eg:find  /etc  -name  init 在目录/etc中查找文件init

-iname 按名称查找

find查找中的字符匹配:

*:匹配所有

?:匹配单个字符

eg:find  /etc  -name  init???    在目录/etc中查找以init开头的,且后面有三位的文件


-size  按文件大小查找

block为单位,一个block512B,0.5K    +大于  -小于  不写是等于 

eg:find /etc -size -204800  etc目录下找出大于100MB的文件

 100MB=102400KB=204800block 

-type  按文件类型查找 

 f 二进制文件  l软连接文件 d目录   

eg: find /dev -type c


find查找的基本原则

占用最少的系统资源,即查询范围最小,查询条件最精准

eg

如果明确知道查找的文件在哪一个目录,就直接对指定目录查找,不查找根目录/


grep命令 

命令路径:/bin/grep执行权限:所有用户

作用:在文件中搜寻字串匹配的行并输出      

 语法:grep [-cinv] '搜寻字符串' filename

 选项与参数:

   -c :输出匹配行的次数(是以行为单位,不是以出现次数为单位

   -i :忽略大小写,所以大小写视为相同

   -n :显示匹配行及行号

   -v :反向选择,显示不包含匹配文本的所有行。

eggrep ftp  /etc/services 

eg:#grep -v ^# /etc/inittab         去掉文件行首的#

eg:# grep -n “init”/etc/inittab  显示在inittab文件中,init匹配行及行号

eg:# grep -c“init”/etc/inittab   显示在inittab文件中,init匹配了多少次

还可以把一个命令的执行结果当作grep命令的输入

# ll  /   | grep proc


which    

命令路径:/usr/bin/which执行权限:所有用户

作用:显示系统命令所在目录(绝对路径及别名)  

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令

# which ls

alias ls='ls --color=auto'

/bin/ls

# which zs

/usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)


whereis

命令路径:/usr/bin/whereis执行权限:所有用户

作用:搜索命令所在目录配置文件所在目录  及帮助文档路径      

eg: which passwd       whereis  passwd   

eg:查看/etc/passwd配置文件的帮助,就用  man 5 passwd



网络通信命令

ping 

命令路径:/bin/ping执行权限:所有用户

作用:测试网络的连通性

语法:ping 选项 IP地址 

 -c 指定发送次数    

ping 命令使用的是icmp协议,不占用端口

eg: # ping -c 3 127.0.0.1

ifconfig 

英文:interfaceconfigure命令路径:/sbin/ifconfig执行权限:root

作用:查看和设置网卡网络配置

语法:ifconfig [-a] [网卡设备标识]   

-a:显示所有网卡信息

ifconfig [网卡设备标识] IP地址修改ip地址

netstat 

英文:networkstatistics命令路径:/bin/netstat执行权限:所有用户

作用:主要用于检测主机的网络配置和状况

-a  all显示所有连接和监听端口

-n 使用数字方式显示地址和端口号

-l listening  显示监听中的服务器的socket

-t   tcp

-u   udp

eg: 

# netstat -natpl      查看本机监听的端口

# netstat –natpl   | grep 80  查看80端口的监听情况

# netstat –natpl   | grep httpd  查看httpd程序的端口监听

两个常用的方式:

根据程序名称,查看网络 端口信息

根据端口号,查询网络信息,还可以查询端口号是否被占用


磁盘空间命令

df命令

作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。看剩余空间

语法:df [-hkam] [挂载点]

-hhuman-readable)根据磁盘空间和使用情况以易读的方式显示 KB,MB,GB
-k
 以KB 为单位显示各分区的信息,默认

-M MB为单位显示信息
-a
 显示所有分区包括大小为0 的分区

du命令

作用:用于查看文件或目录的大小(磁盘使用空间)

语法:du [-abhs] [文件名目录]

-a 显示子文件的大小

-h以易读的方式显示 KB,MB,GB

-s summarize 统计总占有量

eg:
du -a(all) /home 
 显示/home 目录下每个子文件的大小,默认单位为kb

du -h /home KM,G为单位显示/home 文件夹下各个子目录的大小

du -sh /home  以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize

du -h --max-depth=0 /home 

--max-depth=n表示只深入到第n层目录,此处设置为0,即表示不深入到子目录。


df命令和du命令的区别:

df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间。

du命令面向文件,只计算文件或目录占用的空间。


free 

作用:查看内存及交换空间使用状态

语法: free [-bkmg]

选项:

-k:    KB为单位显示,默认就是以KB为单位显示

-m:    MB为单位显示

-g:    GB为单位显示

清理缓存命令:

echo 1 > /proc/sys/vm/drop_caches



压缩解压缩命令

gzip 

英文:GNUzip 命令路径:/bin/gzip执行权限:所有用户

作用:压缩(解压)文件,压缩文件后缀为.gz    

gzip只能压缩文件,不能压缩目录;不保留原文件

语法:gzip文件

-d将压缩文件解压(decompress

解压使用gzip –d或者 gunzip


bzip2  

命令路径:/usr/bin/bzip2执行权限:所有用户

作用:压缩(解压)文件,压缩文件后缀为.bz2

语法:bzip2 [-k] [文件]   

-k:产生压缩文件后保留原文件(压缩比高)

-d 解压缩的参数(decompress

解压使用bzip2 –d或者 bunzip2

# bzip2 install.log


zip   

命令路径:/usr/bin/zip执行权限:所有用户

作用:压缩(解压)文件,压缩文件后缀为.zip

需要指定文件名称

语法:zip 选项[-r]  [压缩后文件名称] [文件或目录]   

 -r压缩目录

eg# zip services.zip /etc/services  压缩文件

# zip -r test.zip  /test  压缩目录

如果不加-r选项,压缩后的文件没有数据。

unzip 

命令路径:/usr/bin/unzip执行权限:所有用户

作用:解压.zip的压缩文件

tar 

命令路径:/bin/tar执行权限:所有用户

作用:文件、目录打(解)包

语法:tar [-zcf]压缩后文件名 文件或目录

-c 建立一个压缩文件的参数指令(create

-x 解开一个压缩文件的参数指令(extract

 -z gzip命令压缩/解压缩  

-j  bzip2命令压缩/解压缩 

-v 压缩的过程中显示文件(verbose

-f file 指定文件名(必须项 必须放在最后面)


两步完成:

  1. 打包  tar -cvf app.tar  apps
  2. Gzip压缩   gzip app.tar

一步完成:

Tar  -zcvf app.tar.gz   appps



tar -cf   -xf     单独压缩  解压缩

tar  -z gzip打包目录并压缩  文件格式.tar.gz.tgz

tar  -j bzip2打包目录并压缩  文件格式.tar.bz2

 eg:tar -zcvf dir1.tar.gz  dir1  使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz

 eg: tar -zxvf  dir1.tar.gz  解压到当前目录

     tar -zxvf  dir1.tar.gz -C(大写的)  /root    解压到指定的/root目录

 eg: tar -cvf bak.tar  .    将当前目录的文件打包为bak.tar

 eg: tar -xvf bak.tar   解压

 eg: tar -zcvf bak.tar.gz  bak.tar   gzip  bak.tar    使用gzip将打包文件bak.tar压缩为bak.tar.gz

 eg: tar -jcvf bak.tar.bz2  bak.tar   bzip2 bak.tar  使用bzip2将打包文件bak.tar压缩为bak.tar.bz2

 eg: tar -rvf bak.tar /etc/password    /etc/password追加文件到bak.tar(r)

 eg: tar -ztvf a.tar.gz  查看压缩包内容 

 egtar -cjvf test.tar.bz2  test  生成test.tar.bz2的压缩文件

 egtar -xjf test.tar.bz2        解压

最常用: 

tar –zcvf 压缩    (压缩目录并显示目录中文件的内容)

tar –zxvf  解压()


进程管理命令

ps命令

作用:查看系统中的进程信息

语法:ps [-auxle]

常用选项

    a:显示所有用户的进程

    u:显示用户名和启动时间

    x:显示没有控制终端的进程

    e:显示所有进程,包括没有控制终端的进程

    l:长格式显示

f:显示程序间关系

查看系统中所有进程

# ps aux     #查看系统中所有进程,使用BSD操作系统格式,unix

# ps -le        #查看系统中所有进程,使用Linux标准命令格式

ps应用实例
    # ps -u or ps -l  
查看隶属于自己进程详细信息

# ps aux | grep sam    查看用户sam执行的进程 
    # ps -ef | grep init        
查看指定进程信息


pstree

作用:查看当前进程树

语法:pstree [选项]

-p显示进程PID

-u显示进程的所属用户

# pstree -up


top     

作用:查看系统健康状态  

显示当前系统中耗费资源最多的进程,以及系统的一些负载情况。

语法:top [选项]

-d秒数,指定几秒刷新一次,默认3秒(动态显示)

交互模式中可执行的命令:

M                  根据内存使用大小进行排序(降序)

P                  根据cpu使用百分比大小进行排序(默认排序)

T                  根据时间/累计时间进行排序

NPID排序


kill 

作用:关闭进程

语法:kill [-选项] pId

kill -9 进程号(强行关闭) 常用

kill -1 进程号(重启进程)

系统关机命令

shutdown  [选项]时间    

eg:

# shutdown -h  now  立即关机  

reboot  重启系统    

注意:生产环境中,关机命令和重启命令谨慎执行。

重启:# init 6

关机:#init 0

系统中7种运行级别

0:关机

1:单用户模式(类似windows安全模式,无图形化界面,只有root可登录)

2:字符界面的多用户模式,是广泛使用的服务器模式(未启动NFS服务)

3:字符界面的多用户模式,是广泛使用的服务器模式

4:自定义的运行级别

5:图形化的多用户的模式(系统默认的级别)

6:重启

etc/rc.d/rc*.d (*可取值:0,1,2,3,4,5,6)不同的运行级别,运行不同的目录下文件


















原创粉丝点击