当前位置:   article > 正文

【Linux】基础篇三--linux shell命令_shell su命令

shell su命令

本篇作为资料篇,当字典即可,别尝试去背!

一、shell基本维护指令

1、man命令

使用man命令可以找到特定的联机帮助页,并提供简短的命令说明。一般语法格式为:
man commandname
通常联机帮助信息包括以下几个部分:

  • NAME:命令的名称
  • SYNOPSIS:命令的语法格式
  • DESCRIPTION:命令的一般描述以及用途
  • OPTIONS:描述命令所有的参数或选项
  • SEE ALSO:列出联机帮助页中与该命令直接相关或功能相近的其他命令
  • BUGS:解释命令或其输出中存在的任何已知的问题或缺陷
  • EXAMPLES:普通的用法示例
  • AUTHORS:联机帮助页以及命令的作者

使用案例
man 3 printf 查库函数
man 2 open 查系统调用
man -a open 会将系统中与open相关的都列出来


2、passwd命令

可以使用passwd命令,为已有账户重新修改用户密码

说明:
超级用户root可以修改所有其他用户的口令,而普通用户只能修改自己的用户口令,如果确要修改超级用户或其他用户口令的话,需要具有超级用户的权限。

passwd命令的一般语法格式为:passwd username
单独使用passwd命令,意为修改当前用户自己的口令。


3、su命令

su命令用于临时改变用户身份,具有其他用户的权限。
su命令的一般语法格式为:

  • su [-c | -m - ] username

当需要放弃当前用户身份,可以使用exit命令切换回来。

-c”表示执行一个命令后就结束;-m表示仍保留环境变量不变;-表示转换用户身份时,同时使用该用户的环境。
单独使用su命令,默认为要转换为超级用户root


4、echo命令

用于在标准输出——显示器上显示一段文字,一般起到提示作用。

echo命令的一般语法格式为:

  • echo [-n] information

说明:
选项-n表示输出文字后不换行。提示信息字符串可以加引号,也可以不加,输入信息字符串不使用引号,字符串之间用一个空格隔开


5、mount命令

用于将文件系统连接到指定的挂载点

mount一般指令格式:

  • mount [-l][-t <文件系统类型>][-o <选项>] <设备名称> <挂载路径>

说明:
-l:以列表的形式显示当前已挂载的文件系统。
-t <文件系统类型>:指定要挂载的文件系统的类型。
-o <选项>:指定挂载选项,比如读写权限、访问控制等。

举例:

mount /dev/sdb1 /mnt

将设备文件sdb1挂载到mnt上去


6、date、clear、df、du命令的用法

(1) date
①date命令用于显示和设置系统日期和时间。date命令的一般语法格式为:
date [-d | -s|-u ] datestr
②选项-s表示按照datestr日期显示格式设置日期;单独使用date命令,用于显示系统时钟中当前日期。

  • 时间的格式为:“hh:mm:ss”,日期格式为:“mm/dd/yy”。
  • 设置新时间,需要系统管理员权限

(2) clear
clear命令用于清除屏幕上的信息。清屏后,sell命令提示符移动到屏幕左上角。

(3) df
df命令用于查看磁盘空间的使用情况。

df命令的一般格式为:
df [-a | -T | -h | -k ] Filesystem

	选项          			含义
	-a       显示所有物理文件系统的使用情况,包括虚拟文件系统,如/proc、/sys等
	-T	     显示物理文件系统的文件格式类型
	-h	     物理文件系统大小按兆字节为单位显示
	-k	     物理文件系统大小按千字节为单位显示
 b. 从以下命令的执行结果可以看到,这台计算机只有一块硬盘(/dev/sda1),文件格式类型为Ext3,已经使用36%的存储空间。
    同时,可以发现计算机上还安装了CD-ROM(/dev/hdc)、USB存储器(/dev/sdb1)。其他分区均为专用的虚拟文件系统

	linux@ubuntu:~$ df –T
	文件系统    1K-块    已用        可用    已用%    挂载点
	/dev/sda1    ext3     7850996  2664868   4787316   36%    /
 c. df 命令
	常用参数:
		 -a :列出所有文件系统
		 -k :列出磁盘的分配情况(KB)
		 -h :同-k, 但大小以G、M,K单位显示
		 -l :仅列出本地文件系统	
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

(4) du命令
列出目录和文件所使用的磁盘块数,每块占512个字节。
常用参数:
-a :仅列出空闲的文件数
-h :列出磁盘的使用情况(KB)
-s :列出总的空闲空间(KB)
例:
#du –h /etc


二、linux的用户管理

1、用户管理相关文件介绍

(1)用户管理
用户的属性
1)用户名
2)口令
3)用户ID(UID)
4)用户主目录(HOME)
5)用户shell


(2)/etc/passwd文件
用户登陆时,系统查询这个文件,确定用户的UID并验证用户口令
1)登陆名
2)经过加密的口令
3)UID
4)默认的GID
5)个人信息
6)主目录
7)登陆shell


(3)/etc/group文件
1)包含了UNIX组的名称和每个组中成员列表
2)每一行代表一个组,包括4个字段:
组名
加密的口令
GID号
成员列表,彼此用逗号隔开


(4)添加用户
adduser
语法:adduser username


(5)adduser配置文件
/etc/adduser.conf

  • FIRST_UID=1000
  • LAST_UID=29999
  • USERS_GID=100
  • DHOME=/home
  • DSHELL=/bin/bash
  • SKEL=/etc/skel

(6)SKEL模板
/etc/skel目录是被 /usr/sbin/useradd使用
把想要新用户拥有的配置文件从/etc/skel目录拷贝,常用的文件:

  • .bash_profile
  • .bashrc
  • .bash_logout
  • dircolors
  • .inputrc
  • .vimrc

2、用户管理相关命令介绍

(1)添加新用户的过程
1) 系统
①编辑passwd和shadow文件,定义用户帐号
②设置一个初始口令
③创建用户主目录,用chown和chmod命令改变主目录的属主和属性
2) 为用户所进行的步骤
①将默认的启动文件复制到用户主目录中
②设置用户的邮件主目录并建立邮件别名


(2) 设置初始口令
1) 使用passwd命令可以修改用户口令
2) root用户可以修改任何用户的口令
语法:passwd [-k] [-l] [u] [-f] [-d] [-S] username
使用方法:
passwd username


(3) 修改用户属性
usermod
语法:usermod [-u uid [-o]] [-g group] [-G gropup,…]
[-d home [-m]] [-s shell] [-c comment]
[-l new_name] [-f inactive][-e expire]
[-p passwd] [-L|-U] name

举例用户oldname改名为newname,注意要同时更改家目录: 
usermod  –d  /home/newname  –m  –l  newname  oldname
  • 1
  • 2

(4) 删除用户
deluser
语法: deluser

  使用方法: 
		     deluser  --remove-home  user1			
	 删除用户user1的同时删除用户的工作目录 
  • 1
  • 2
  • 3

(5) 添加用户组
addgroup
语法: addgroup groupname

 使用方法: 
	     addgroup  groupname
  • 1
  • 2

(6) 删除用户组
delgroup
语法: delgroup groupname

 使用方法: 
	    delgroup  groupname1
  • 1
  • 2

三、进程管理相关命令

1、进程概念

程序的一次执行就是一个进程


2、使用ps命令查看进程

(1)ps的作用
显示进程的动态

      语法:
                   ps [options]
  • 1
  • 2

(2)常见的参数

  • -A 列出所有的行程
  • -w 显示加宽可以显示较多的资讯
  • -au 显示较详细的资讯
  • -aux 显示所有包含其他使用者的行程

(3) 显示参数

  • %CPU 占用的 CPU 使用率
  • %MEN 占用的记忆体使用率
  • VS2 占用的虚拟记忆体大小
  • RSS 占用的记忆体大小
  • STAT 该进程的状态
  • START 进程开始时间
  • TIME 执行的时间

(3)进程的状态标志

  • D: 不可中断的静止
  • R: 正在执行中
  • S: 阻塞状态
  • T: 暂停执行
  • Z: 不存在但暂时无法消除
  • <: 高优先级的进程
  • N: 低优先级的进程
  • L: 有内存分页分配并锁在内存中

(4) top命令

实时显示进程状态


(7) pstree命令
1) 将所有行程以树状图显示,树状图将会以pid(如果有指定)或是以init这个基本进程为根,
如果有指定使用者id,则树状图会只显示该使用者所拥有的进程。
2)参数:
-a 显示该进程的完整指令及参数,如果是被记忆体置换出去的进程则会加上括号
-c 如果有重覆的进程名,则分开列出


3、使用kill命令终止进程

使用kill命令终止进程

使用说明:
	 kill  [-signal]  PID 
signal是信号,PID是进程号
  • 1
  • 2
  • 3

四、文件系统的类型

1、Linux文件系统的类型

①关于Linux的文件系统,用户既可以使用界面友好的Nautilus图形文件管理器,也可以使用功能强大的shell文件系统管理工具

②linux是一种兼容性很高的操作系统,支持的文件系统格式很多,

(1)linux下的文件系统

  • 磁盘文件系统:指本地主机中实际可以访问到的文件系统,包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等。
  • 网络文件系统:是可以远程访问的文件系统,这种文件系统在服务器端仍是本地的磁盘文件系统,客户机通过网络远程访问数据。
    常见文件系统格式有:NFS、Samba等;
  • 专有/虚拟文件系统:不驻留在磁盘上的文件系统。常见格式有:TMPFS(临时文件系统)、PROCFS(Process File System,进程文件系统)和LOOPBACKFS(Loopback File System,回送文件系统)。

(2)

  • 目前Ext4是Linux系统广泛使用的一种文件格式。在Ext3基础上,对有效性保护、数据完整性、数据访问速度、向下兼容性等方面做了改进。
  • 最大特点是日志文件系统:可将整个磁盘的写入动作完整地记录在磁盘的某个区域上,以便在必要时回溯追踪。

(3)SCSI与IDE设备命名

  • sata硬盘的设备名称是“/dev/sda”
    /dev/sda1 含义?
    /dev/sdb3 含义?
  • IDE硬盘的设备名称是“/dev/hda”
    /dev/hdc2 含义?
  • 如果很在意系统的高性能和稳定性,应该使用SCSI硬盘
    cat /proc/partitions

(4)Linux分区的命名方式

  • ①字母和数字相结合
  • ②前两个字母表示设备类型
    “hd”代表IDE硬盘
    “sd”表示SCSI或SATA硬盘
  • ③第三个字母说明具体的设备
    “/dev/hda”表示第一个IDE硬盘
    “/dev/hdb”表示第二个IDE硬盘

(5)交换分区
1)将内存中的内容写入硬盘或从硬盘中读出,称为内存交换(swapping)
2)交换分区最小必须等于计算机的内存
3)可以创建多于一个的交换分区
4)尽量把交换分区放在硬盘驱动器的起始位置


2、Linux文件系统的结构

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


五、文件系统相关命令

1、file、mkdir、rmdir、ln命令

(1)文件和目录相关的命令
pwd ls cd touch cp mv rm cat head tail已经在之前的文章中讲过


(2)file命令
1)file命令功能用于判定一个文件的类型。

 file命令一般语法格式为:
		file  [ filename ]		
其中filename是文件名。
命令的输出将显示该文件是二进制文件、文本文件、目录文件、设备文件,
还是Linux中其他类型的文件。
  • 1
  • 2
  • 3
  • 4
  • 5

(3)mkdir命令
mkdir命令用于创建一个目录。mkdir命令一般语法格式为:
mkdir [ -p ] directory_name

     说明:
     使用选项“-p”表示可以嵌套创建子目录,即多层目录。
     例如:
		linux@ubuntu:~$ mkdir  –p  dir1/dir2/dir3
		linux@ubuntu:~$ ls  –R  dir1
		dir1:
		dir2
		dir1/dir2:
		dir3
		dir1/dir2/dir3:
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

(4)rmdir命令
用于删除一个目录。rmdir命令一般语法格式为:
rmdir [ -p ] directory_name

	说明:
	其中,directory_name为要删除的一个或多个目录名。
	使用选项“-p”表示可以递归删除子目录,即多层目录。
	例如
		linux@ubuntu:~$ rmdir  –p  dir1/dir2/dir3
  • 1
  • 2
  • 3
  • 4
  • 5

(5)创建链接文件
①Linux中有两种类型的链接:

  • 硬链接是利用Linux中为每个文件分配的物理编号——inode建立链接。因此,硬链接不能跨越文件系统。
  • 软链接(符号链接)是利用文件的路径名建立链接。
    通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性。

②需要注意的是,如果是修改硬链接的目标文件名,链接依然有效;如果修改软链接的目标文件名,则链接将断开;

对一个已存在的链接文件执行移动或删除操作,有可能导致链接的断开。

假如删除目标文件后,重新创建一个同名文件,软链接将恢复,硬链接不再有效,因为文件的inode已经改变。


(6)ln命令
命令可以用于创建文件的链接文件。ln命令一般语法格式为:
ln [ -s ] target link_name

  说明:
  其中,选项“-s”表示为创建软链接。在缺省情况下,创建硬链接。
  参数target为目标文件,link_name为链接文件名。
     如果链接文件名已经存在但不是目录,将不做链接。
     目标文件可以是任何一个文件名,也可以是一个目录。
	linux@ubuntu:~$ ln  -s  /proc/cpuinfo   mycpuinfo
	linux@ubuntu:~$ ls  –l  mycpuinfo 
	lrwxrwxrwx  1  wdl  wdl  13  2007-09-22 00:43  mycpuinfo -> /proc/cpuinfo
     以上命令为/proc/cpuinfo文件创建了一个软链接文件。
     使用“ls –l”命令可以查看到新创建的链接文件所指向的目标文件名。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

2、文件的归档和压缩

(1)压缩文件
用户在进行数据备份时,需要把若干文件整合为一个文件以便保存。尽管整合为一个文件进行管理,但文件大小仍然没变。


(2)

  • 归档文件是将一组文件或目录保存在一个文件中。

  • 压缩文件也是将一组文件或目录保存一个文件中,并按照某种存储格式保存在磁盘上,所占磁盘空间比其中所有文件总和要少。

    如果用户需要经常在Linux和微软Windows间交换文件,建议使用zip。 
      	压缩工具     解压工具    文件扩展名
      	gzip          gunzip       .gz
      	bzip2         bunzip2      .bz2
      	zip           unzip        .zip
    
    • 1
    • 2
    • 3
    • 4
    • 5

如果用户需要经常在Linux和微软Windows间交换文件,建议使用zip。


(3) tar命令
tar命令可以把很多文件(甚至磁带)合并到一个称为tarfile的文件中,通常文件扩展名为.tar。
然后,再使用zip、gzip或bzip2等压缩工具进行压缩。


(4) shell归档和压缩工具
使用shell归档和压缩工具可以更直接地完成文档的打包任务。由于该类shell命令是成对使用的,因此下面按对介绍相关命令。


(5) gzip与gunzip命令
与zip明显区别在于只能压缩一个文件,无法将多个文件压缩为一个文件。gzip命令符号模式的一般语法格式为:
gzip [ -l| -d | -num ] filename

	说明
	其中,filename表示要压缩的文件名,
	gzip会自动在这个文件名后添加扩展名为.gz,作为压缩文件的文件名。
	
 选项             描述
  -l        查看压缩文件内的信息,包括文件数、大小、压缩比等参数,并不进行文件解压
  -d        将文件解压,功能与gunzip相同
  -num      指定压缩比率,num为1~9个等级
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

gunzip命令符号模式的一般语法格式为:
gunzip [ -f ] file.gz

其中,选项“-f”用于解压文件时,对覆盖同名文件不做提示。
在执行gzip命令后,它将删除旧的未压缩的文件并只保留已压缩的版本。
以下命令以最大的压缩率对文件file_1进行压缩,生成file_1.gz文件。
使用“-l”选项可以查看压缩的相关信息。最后使用gunzip命令对文件进行了解压。
与压缩时相反,file_1.gz文件会被删除,继之生成file_1。
linux@ubuntu:~$ gzip  -9  file_1
linux@ubuntu:~$ gzip  -l   file_1.gz	
compressed  uncompressed    ratio    uncompressed_name
1200                  4896           76.0%       file_1
linux@ubuntu:~$ gunzip    file_1.gz
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

(6) tar命令
tar命令主要用于将若干文件或目录合并为一个文件,以便备份和压缩。当然,之后出现tar程序的改进版本,可以实现在合并归档的同时进行压缩。
tar命令符号模式的一般语法格式为:
tar [ -t | -x | -u | -c | -v | -f | -j | -z ] tarfile filelist
-t 显示归档文件的内容
-x 释放归档文件
-u 更新归档文件
-c 创建一个新的归档文件
-v 显示归档和释放的过程信息
-f 用户指定归档文件的文件名,否则使用默认名称
-j 由tar生成归档,然后由bzip2压缩
-z 由tar生成归档,然后由gzip压缩

linux@ubuntu:~$ tar  –cf   myExamples.tar      myExamples
linux@ubuntu:~$ tar  -cjf   myExamples.tar.bz   myExamples
linux@ubuntu:~$ tar  -czf  myExamples.tar.gz    myExamples
linux@ubuntu:~$ ls   -lh   myExamples.tar* 
-rw-r--r-- 1  wdl  wdl  9.3M  2007-09-23 00:42  myExamples.tar
-rw-r--r-- 1  wdl  wdl  8.6M  2007-09-23 00:43  myExamples.tar.bz
-rw-r--r-- 1  wdl  wdl  8.5M  2007-09-23 00:44  myExamples.tar.gz

如果想查看一下归档文件中的详细内容,使用类似以下命令:
	linux@ubuntu~$ tar  –tvf   myExamples.tar.gz
使用以下命令完成tar文件的释放。其中,“tar -xjf”和“tar –xzf”等效与先解压缩后释放tar文件。
	linux@ubuntu:~$ tar  –xvf   myExamples.tar
	linux@ubuntu:~$ tar  -xvjf   myExamples.tar.bz
	linux@ubuntu:~$ tar  -xvzf  myExamples.tar.gz
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

六、linux网络配置管理

1、网络配置基础

  • (1)用户既可以通过命令行的方式,也可以通过友好的图形界面,轻松完成网络配置。

  • (2)实现Linux网络配置的惟一目标就是修改系统中众多的网络配置文件,
    如/etc/interfaces、/etc/hosts,/etc/resolv.conf 等等。

  • (3)通常,用户可能使用普通以太网卡、无线网卡、调制解调器等不同类型的设备接入网络。

    不同类型的网络设备在主机中被映射为相应的网络接口,比如以太网卡映射为eth,无线网卡映射为wlan。有时,用户还可能同时使用多个网络设备,就会出现eth0、eth1…,或wlan0、wlan1…的情况。

    那么,如何标识每个连接到Internet的网络接口呢?
    解决办法是:为每个网络接口分配一个全世界范围内惟一的32bit的标识符。这个标识符就是IP(Internet Protocol)地址。

2、配置IP地址

接入网络的计算机主机依靠IP地址,惟一地标识其在网络中的身份,因此为主机配置IP地址是接入网络的关键。
配置IP地址的方法有两种:

  • 配置静态IP:在主机进入网络之前,事先为主机设置固定的IP地址;
  • 配置动态IP:选择DHCP网络服务,在主机进入网络之后,动态随机获取IP地址

3、Ifconfig命令

ifconfig是GNU/Linux中配置网卡的基本命令,包含在net-tools软件包中。它可用于显示或设置网卡的配置,
ifconfig命令有以下两种格式:
ifconfig [interface]
ifconfig interface [aftype] option | address…

4、interfaces配置文件

无论是配置静态IP还是动态IP,计算机系统将IP信息保存放在什么地方?答案是配置文件“/etc/network/interfaces”。
在Ubuntu Linux启动时就能获得IP地址的配置信息。若是配置静态IP,就从配置文件中读取IP地址参数,直接配置网络接口设备;
若是配置动态IP,就通知主机通过DHCP协议获取网络配置。

5、DNS客户端配置文件—resolv.conf

Ubuntu Linux将DNS服务器地址保存在配置文件/etc/resolv.conf中。

6、ping命令

它使用了Internet控制报文协议(ICMP)回送请求与回送应答报文,测试两个主机之间的连通性。
格式如下所示
ping [DomainName | IP-address]
例如
linux@ubuntu:~$ ping www.ustb.edu.cn

说明:
使用-c参数设置发送测试数据包的次数,以便在有限时间内完成测试。
		linux@ubuntu:~$ ping  -c 3   www.google.com
  • 1
  • 2
  • 3

7、DNS服务器地址

DNS域名解析可以在更大范围的计算机网络、Internet,提供域名到IP地址的转换
网络中的每台计算机都是一个DNS客户端,向DNS服务器提交域名解析的请求;DNS服务器完成域名到IP地址的映射。

8、nslookup命令

使用nslookup命令可以查看当前系统所使用的DNS服务器的IP地址。

例如:
linux@ubuntu:~$ nslookup   www.google.com
	Server:   192.168.182.2
	Address:   192.168.182.2#53
	Non-authoritative answer:
	www.google.com canonical name = www.l.google.com.
	www.l.google.com canonical name = www-china.l.google.com.
	Name: www-china.l.google.com
	Address: 66.249.89.99
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

服务器192.168.182.2完成了域名解析。Server表示提供服务的DNS服务器,Address中的#53表示TCP/UDP命名服务的端口号。
若所有的DNS服务器都访问失败,则出现如下的执行结果。

	linux@ubuntu:~$ nslookup   www.google.com
	connection timed out;   no servers could be reached
  • 1
  • 2

到这里就结束啦!
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/83484
推荐阅读
相关标签
  

闽ICP备14008679号