1. shell基本系统维护命令
1.1 man命令
-使用man命令可以找到特定的联机帮助页,并提供简短的命令说明。一般语法格式为:
man commandname
-联机帮助页提供了指定命令commandname的相关信息,包括:名称、函数、语法以及可选参数描述等。无论帮助多长,都遵循这个格式显示。在页面很多的情况下使用PageUp和PageDown键翻页。最后使用“:q”退出帮助页面。
man也可以用来查函数
man 3 查库函数
man 2 查系统调用
联机帮助包括以下几部分:
-NAME:命令的名称
-SYNOPSIS:命令的语法格式
-DESCRIPTION:命令的一般描述以及用途
-OPTIONS:描述命令所有的参数或选项
-SEE ALSO:列出联机帮助页中与该命令直接相关或功能相近的其他命令
-BUGS:解释命令或其输出中存在的任何已知问题或缺陷
-EXAMPLES:普通用法示例
-AUTHORS:联机帮助页以及命令的作者
1.2 passwd命令
-出于系统安全考虑,LLinux系统中的每一个账号都必须同时具备用户名和密码
-可以使用passwd命令,为已有账户重新修改用户口令
-超级用户root可以修改所有其他用户的口令,而普通用户只能修改自己的用户口令
passwd命令的一般语法格式为:
passwd username
1.3 su命令
-su命令用于临时改变用户身份,具有其他用户的权限。普通用户可以使用su命令临时具有超级用户的权限;超级用户页可以使用普通用户身份完成一些操作。当需要放弃当前用户身份,可以使用exit命令切换回来。
-su命令的一般语法格式为:
su [-c|-m -] username
-选项:“-c”表示执行一个命令后就结束;-m表示仍保留环境变量不变;-表是转换用户身份时,同时使用该用户的环境
1.4 echo命令
- echo命令用于在标准输出——显示器上显示一段文字,一般起到提示作用。echo命令的一般语法格式为:
ehco [-n] information
- 选项-n表示输出文字后不换行。提示信息字符串可以加引号,也可以不加[不加的,单词之间只加一个空格]
linux@ubuntu:~/Linux_c$ echo "Hello everyone"
Hello everyone
linux@ubuntu:~/Linux_c$ echo everyone
everyone
linux@ubuntu:~/Linux_c$
1.5 date命令
- date命令用于显示和设置系统日期和时间。date命令的一般语法格式为:
date [-d | -s|-u] datestr
- 选项-s表示按照datestr日期显示格式设置日期;单独使用date命令,用于显示系统时钟中当前日期。时间的格式为:“hh:mm:ss”,日期格式为:“mm/dd/yy”
linux@ubuntu:~/Linux_c$ date
Thu Aug 1 16:39:42 CST 2024
1.6 clear命令
-用于清屏 使用ctrl+l也可以清屏
1.7 df命令
-df命令用于查看磁盘空间的使用情况。格式为:
df [-a|-T|-h|-k] Filesystem
Filesystem表示物理文件系统
-a 显示所有物理文件系统的使用情况,包括虚拟文件系统
-T 显示物理文件系统的文件格式类型
-h 物理文件系统大小按兆字节为单位显示
-k 物理文件系统大小按千字节为单位显示
linux@ubuntu:~/Linux_c$ df -T -h
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext4 29G 4.5G 23G 17% /
udev devtmpfs 494M 4.0K 494M 1% /dev
tmpfs tmpfs 201M 796K 200M 1% /run
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 501M 200K 501M 1% /run/shm
1.8 du命令
du命令。列出目录和文件所使用的磁盘块数,每块占512字节。
常用参数:
-a:仅列出空闲的文件数
-h:列出磁盘的使用情况(KB)
-s:列出总的空闲空间(KB)
2. 用户管理命令
2.1 用户管理相关文件介绍
用户的属性:
- 用户名
- 口令
- 用户ID(UID)
- 用户主目录(HOME)
- 用户shell
/etc/passwd文件:
它是系统能够识别的用户清单。用户登录时,系统查询这个文件,确定用户的UID并验证用户口令
登录名 经过加密的口令 UID 默认的GID 个人信息 主目录 登录shell
/etc/group文件:
包含了UNIX组的名称和每个组中成员列表,每一行代表一个组,包括4个字段:
组名 加密口令 GID号 成员列表,彼此用逗号隔开
2.2 用户管理相关命令介绍
adduser:
语法:adduser <username>
创建新的用户
usermod
语法:usermod [-u uid [-o]] [-g group] [-d home [-m]] [-l new_name]
修改用户属性
eg:usermod -d /home/newname -m -l newname oldname
修改oldname的家目录为/home/newname【-m为没有就建立】 修改新名字为newname
deluser
语法:deluser <username>
使用方法:deluser --remove-home user1
删除用户user1的同时删除用户的工作目录
addgroup
语法:addgroup groupname
使用方法:addgroup groupname
创建一个组
delgroup
语法:delgroup groupname
删除一个组
3. 进程管理命令
3.1 进程的概念
程序的一次执行就是一个进程
3.2 进程管理相关命令
ps命令
显示进程的动态
语法:ps[options]
常见的参数:
-A 列出所有的进程
-w 显示加宽可以显示更多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的进程
进程的状态标志
R 正在执行中
S 阻塞状态
T 暂停执行
Z 不存在但暂时无法消除
D 不可中断的静止
< 高优先级的进程
N 低优先级的进程
L 有内存分页分配并锁在内存中
+ 表示前台运行
top命令
监视进程,通常会全屏显示,而且会随着进程状态的变化不断更新
整个系统的信息也会显示,为查找问题提供了便利,可以显示系统总共有多少CPU和内存资源以及负载平衡等信息
pstree命令
将所有进程以树状图显示,树状图将会以pid(如果有指定)或是以init这个基本进程为根,如果有指定使用者id,则树状图只会显示该使用者所拥有的进程
kill命令
使用kill命令终止进程(kill是用来发信号的,也可以发送很多信号,杀死进程信号[15]只是其中的一个)
-kill [-signal] PID
signal是信号,PID是进程号
kill命向指定的进程发出一个信号signal,在默认的情况下,kill命令向指定进程发出信号15,正常情况下,将杀死那些不捕捉或不忽略这个信号的进程
4. 文件系统的类型和结构
4.1 Linux文件系统的类型
在任何一个操作系统中,文件系统无疑是最重要的组件,用于组织和管理计算机存储设备上的大量文件,并提供用户交互接口。
Linux是一种兼容性很高的操作系统,支持的文件系统格式很多,大体可分以下几类:
磁盘文件系统:指本地主机中实际可以访问到的文件系统,包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等。常见的文件系统格式有:autofs、coda、Ext(Extended File sytem,扩展文件系统)、Ext3、Ext4、ISO9660(通常是CD-ROM)、FAT、FAT16、FAT32、NTFS等
网络文件系统:是可以远程访问的文件系统,这种文件系统在服务器端仍是本地磁盘文件系统,客户机通过远程访问数据。常见的文件系统格式有:NFS、Samba等
专有/虚拟文件系统:不驻留在磁盘上的文件系统。常见的格式有:TMPFS(临时文件系统)、PROCFS(进程文件系统)和LOOPBACKFS(回送文件系统)
Linux分区的命名方式:
字母和数字相结合
前两个字母表示设备类型
-“hd”代表IDE硬盘
-“sd”表示SCSI或SATA硬盘
第三个字母说明具体的设备
-“/dev/hda”表示第一个IDE硬盘
-“/dev/hdb”表示第二个IDE硬盘
最后一个数字
表示第几个盘的第几分区
交换分区:
将内存中的内容写入硬盘或从硬盘中读出,称为内存交换(swapping)
交换分区最小必须等于计算机的内存,可以创建多于一个的交换分区
尽量把交换分区放在硬盘驱动器的起始位置
4.2 Linux文件系统的结构
Linux的文件组织模式像一颗倒置的树。所有存储设备作为这棵树的一个子目录。存取文件时只需要确定目录就可以了,无需考虑物理存储位置
分区与目录的关系:
在Linux下,分区属于目录结构
在Linux中,将所有的硬件都视为文件来处理,包括硬盘分区、CD-ROM软驱以及其他USB移动设备等。Linux中提供了对每种硬件设备相应的设备文件。一旦Linux系统可以访问到硬件,就将其上的文件系统挂载到目录树中的一个子目录中。
/ Linux文件系统根目录
/bin 存放系统中最常用的可执行文件(二进制)
/boot 存放Linux内核和系统启动文件,包括Grub、lilo启动器程序
/dev 存放所有设备文件,包括硬盘、分区、键盘、鼠标、USB、tty等
/etc 存放系统的所有配置文件,例如paddwd存放用户账户信息,hostname存放主句名等
/home 用户主目录默认位置
/initrd 存放启动时挂载initrd.img映像文件的目录,以及载入所需设备模块的目录
/lib 存放共享的库文件,包含许多被/bin和/sbin中程序使用的库文件
/lost+found 存放由fsck放置的零散文件
/media Ubuntu系统自动挂CD-ROM、软驱、USB存储器,存放临时读入的文件
/mnt 该目录通常用于作为被挂载的文件系统的挂载点
/opt 作为可选文件和程序的存放目录,主要被第三方开发者用来简易地安装和卸装它们地软件包
/proc 存放所有标志为文件地进程,它们通常通过进程号或其他地系统动态信息进行标识
/root 根用户(超级用户)地主目录
/sbin 存放更多地可执行文件(二进制),包括系统管理、目录查询等关键命令文件
/srv
/sys
/tmp 存放用户和程序地零食文件,所有用户对该目录都有读写权限
5. 文件系统相关命令
file命令
功能:用于判定一个文件地类型
语法格式:file [filename]
命令地输出将显示该文件是二进制、文本文件、目录文件、设备文件,还是Linux中其他类型地文件
mkidr命令
功能:创建一个目录
使用 -p 表示可以嵌套创建子目录,即多层目录
rmdir命令
功能:删除一个目录
使用 -p 表示可以递归删除子目录,即多层目录,删除目录必须是空目录
可用rm -r 目录名代替,rm效果更高,它不要求各层目录均为空
创建链接文件
Linux中有俩种类型地链接:
-硬链接是利用Linux中为每个文件系统分配地物理编号——inode建立链接
-软链接(符号链接)是利用文件地路径名建立链接
ln命令
ln [-s] 路径 目录或文件 //建立地软链接,不加-s为硬链接
压缩文件
gzip [-l|-d|-num] filename
-l 查看压缩文件内的信息,包括文件数、大小、压缩比等参数,并不进行文件解压
-d 将文件解压,功能与gunzip相同
-num 指定压缩比率,num为1~9个等级
gunzip [-f] file.gz
tar命令
功能:用于将若干文件或目录合并为一个文件,以便备份和压缩
语法格式:tar [-t|-x|-u|-c|-v|-f|-j|-z] tarfile filelist
-t 显示归档文件中的内容
-x 释放归档文件
-u 更新归档文件
-c 创建一个新的归档文件
-v 显示归档和释放过程
-f 用户指定归档文件的文件名
-j 由tar生成归档,然后又bzip2压缩
-z 由tar生成归档,然后由gzip压缩
6. Linux网络配置管理
6.1 网络配置基础
用户既可以通过命令行的方式,也可以通过友好的图形化界面,轻松完成网络配置
实现Linux网络配置的唯一目标就是修改系统中众多的网络配置文件
6.2 配置IP地址
ifconfig
查看网络设备的相关信息
IP地址存放地址:
/etc/network/interfaces
DNS客户端配置文件:
/etc/resolv.conf
网络服务重启命令
/etc/init.d/networking restart
6.3 网络相关命令
ping命令
测试远程主机
ping [域名 | IP地址] -c num
-c num ping回复次数
nslookup命令
根据域名获取IP地址