Linux云计算命令大全

云计算命令总结

    • 一、系统命令精讲
    • 二、目录和文件管理
    • 三、安装及管理程序
    • 四、账号管理
    • 五、权限及归属管理
    • 六、磁盘管理
    • 七、文件系统与LVM
    • 八、服务器RAID及配置实战
    • 九、引导过程与服务控制
    • 十、进程和计划任务管理
    • 十一、系统安全及应用
    • 十二、Linux文件系统与日志

一、系统命令精讲

序号 命令 含义 范例
0 Tab 自动补齐、连按两次输出所有名称列表
1 \ 强制换行
2 Ctrl + U 快速删除光标之前所有字符
3 Ctrl + K 快速删除光标之后所有字符
4 Ctrl + Y 黏贴刚才所剪切的字符
5 Ctrl + L 清屏
6 Ctrl + C 取消当前命令行编辑、结束当前执行的命令
7 Ctrl + D 从shell提示中注销关闭、类似exit
8 Ctrl + A 把光标移动到行首、类似Home
9 Ctrl + E 把光标移动到行尾、类似End
10 Ctrl + Z 转入后台运行
11 Ctrl + R 在历史命令中查找
12 man 提供在线帮助
13 pwd 显示当前位置
14 ls 列表显示目录内的文件及目录 ls /root
-l 以长格式显示文件和目录的列表 ls -l /root
-a 显示所有子目录和文件的信息 ls -a /root
-A 与-a类似、两个特殊隐藏目录 . 和 … 不显示
-d 显示目录本身的属性,常与-l同用
-h 更人性化的显示目录或文件大小、常与-l同用
-R 递归显示目录及其子目录中的所有内容
15 du 统计制定目录或文件所占用磁盘空间的大小 du -sh /data/1.txt
-a 统计磁盘空间占用时所有的文件所占用磁盘空间的大小
-s 只统计所占用空间的大小
16 touch 创建空文件、若文件存在更新时间戳 touch 1.txt
17 mkdir 创建新目录 mkdir -pv /a/b/c
-p 一次性创建多层目录
-v 显示详细
-m 跳出当前的umask值
18 cp 复制文件或目录 cp -r /a /root
-f 覆盖同名文件或目录,强制复制 cp -rf /a /root
-i 提醒用户确认 cp -if /a /root
-p 保持源文件权限、属性、属主及时间标记等不变
-r 递归复制
19 rm 删除制定的文件或目录 rm -rf /1.txt
-f 不提示强制删除 rm -rf /a/*
-i 提示用户确认
-r 递归删除整个目录树
20 mv 将指定文件或目录转移位置(剪切)(位置相同重命名) mv /a /b
21 which 查找Linux命令程序所在的位置 wchich du(mkdir)
22 find 精细查找文件或目录
-name 按名称查找 find /etc -name “tesol*.conf"
-size 按大小查找 find /etc -size +1M 【k、M、G】
-user 按属性查找 find /etc -user root
-type 按类型查找 find /root -type d 【d:目录;f:普通文件;b:块设备;c:字符设备】
-a (and)逻辑与运算 find /boot -size +1M -a -name “vm*" 【查找boot下大于1M文件名为vm的所有文件】
-o (or)逻辑或运算 find /boot -size +1M -o -name “vm*" 【查找boot下大于1M的文件或名为vm的所有文件】

二、目录和文件管理

序号 命令 含义 范例
23 cat 查看文件内容、可同时显示多个文件内容
-n 显示内容的同时显示行号 cat -n /etc/yum.conf 【cat从头查看】
-A 显示所有的字符 tac -nA /etc/yum.conf 【tac从尾查看】
nl /etc/yum.conf
24 more 全屏方式分页显示文件内容
Enter 向下滚动一行 more /etc/passwd
Spice 向下滚动一页
q 退出
25 less 与more基本相同、扩展功能更多
PgUp 向上翻页 less /etc/passwd
PgDn 向下翻页
/ 查找内容、“n”下一个、“N”上一个
其他功能与more基本类似
26 head 查看文件开头部分内容默认为10行
-1~ 查看文件开头几行 head -5 /etc/passwd
27 tail 查看文件结尾部分内容默认为10行
-1~ 查看文件结尾几行 tail -5 /etc/passwd
-f 动态更新尾部的信息 Ctrl+C 终止
28 wc 统计文件中的单词数量等 wc /etc/hots 【显示行数、单词数、字节数】
-l 统计行数 wc -l /etc/hots
-w 统计单词个数 wc -w /etc/hots
-c 统计字节数 wc -c /etc/hots
29 grep 在文件中查找并显示包含指定字符串的行
-i 查找时忽略大小 grep ftp /etc/passwd
-v 反转查找、输出与条件不相符的行 grep -v ^# /etc/yum.conf (管道符) grep -v ^$
-E 查找时使用扩展的模式匹配
-o 查找时过滤出文件中匹配的部分
^…表示以…开头
…$表示以…结尾
^$表示空行
30 egrep 增强过滤型 egrep -v ^# (管道符) ^$ /etc/yum.conf
31 gzip 压缩、文件格式为.gz
-9 有9个级别 gzip 1.txt 【1.txt.gz】 gzip -9 1.txt
32 gunzip 解压缩、格式为.gz gunzip 1.txt.gz
-d解压缩 gzip -d 1.txt.gz
33 bzip2 压缩、文件格式为.bz2
-9 有9个级别 bzip2 1.txt 【1.txt.bz2】 bzip2 -9 1.txt
34 bunzip2 解压缩、 格式为.bz2 bunzip2 1.txt.bz2
-d解压缩 bzip2 -d 1.txt.bz2
35 tar 制作归档文件、释放归档文件 (可省略-)
-c 创建.tar格式的包文件 tar cjvf a.tar.bz2 /a
-x 解开.tar格式的包文件 tar xf a.tat.bz2 -C /b
-v 输出详细信息 tar tf a.tar.bz2
-f 表示使用归档文件(后面紧跟归档文件名)
-p 打包时保留原始文件及目录的权限
-t 列表查看包内的文件
-C 解包时指定释放的目标目录
-z 调用gzip程序进行压缩或解压
-j 调用bzip2程序进行压缩或解压
-P 打包时保留文件及目录的绝对路径
36 vi 文本编辑器 (命令模式、输入模式、末行模式) ESC键退出
a 在光标后插入内容
A 在光标所在行末尾插入内容
i 从当前光标前插入内容
l 在光标所在行行首插入内容
o 在当前光标下插入空行
O 在当前光标上插入空行
常用操作
方向移动 ↑、↓、←、→ 上、下、左、右
翻页 Page Down或Ctrl+F 向下翻动一整页内容
Page Up或Ctrl+B 向上翻动一整页内容
行内快速跳转 Home键或“^”、数字“0” 跳转至行首
End键或“$”键 跳转至行尾
行间快速跳转 1G或者gg 跳转到文件的首行
G 跳转到文件的末尾行
#G 跳转到文件中的第#行
行号显示 :set nu 在编辑器中显示行号
:set nonu 取消编辑器中的行号显示
删除 x或Del 删除光标处的单个字符
dd 删除当前光标所在行
#dd 删除从光标所在行开始的#行内容
d^ 删除当前光标之前到行首的所有字符
d$ 删除当前光标处到行尾的所有字符
复制 yy 复制当前行整行的内容到剪切板
#yy 复制从光标所在行开始的#行内容
粘贴 p 将缓冲区中的内容粘贴到光标位置处之后
P 粘贴到光标位置处之前
/word 从上而下在文件中查找字符串“word”
?word 从下而上在文件中查找字符串“word”
n 定位下一个匹配的被查找字符串
N 定位上一个匹配的被查找字符串
u 按一次取消最近的一次操作;重复u键、恢复多步操作
U 用于取消对当前行所做的所有编辑
ZZ 保存当前的文件内容并退出vi编辑器
保存文件 :w 保存修改的内容
:w /root/newfile 另存为其他文件
退出vi :q 未修改退出
:q! 放弃对文件内容的修改并退出
保存退出 :wq 保存修改的内容并退出
:e ~/install.log 打开新的文件进行编辑
:r /etc/filesystems 在当前文件中读入其他文件内容
:s /old/new 将当前行中查找到的第一个字符“old”串替换为“new”
:s /old/new/g 将当前行中查找到的所有字符串“old”替换为“new”
:#,# s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”
:% s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”
:s /old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认
常规操作补充
:x 保存退出、如果未修改、时间戳不改变
:w file 将当前文件另存为file (vim)
:X 加密 (vim)
:7 跳转到第7行
:1,$ co $ 从第一行到第最后一行复制,复制到最后一行后
J 合并当前行和下一行
Ctrl+r 对使用u命令撤销操作进行恢复

三、安装及管理程序

序号 命令 含义 范例
37 rpm 包安装
-qa 查看已安装的所有RPM软件包 rpm -q bash 【查询是否安装bash软件包】
-qi 查看指定软件的详细信息 rpm -ql postfix 【查询postfix软件包安装的文件列表】
-ql 查询软件包安装的目录、文件列表
-qf 查询文件或目录属于哪个RPM软件 (which vim) rpm -qf /usr/bin/vim
-qp 查询未安装的RPM包文件
-qpi 查看该软件的详细信息 rpm -qpi ethtool-3.5-1.el6.x86_64.rpm
-qpl 查看包内所含的目录、文件列表 rpm -qpl ethtool-3.5-1.el6.x86_64.rpm
rpm 安装、升级RPM软件
-i 安装一个新的rpm软件包 rpm -q lynx
-U 升级、若未安装则进行安装 rpm -ivh lynx-2.8.6-27.el6.x86_64.rpm
-h 以“#”号显示安装的进度
-v 显示安装过程中的详细信息
-F 更新某个rpm软件、若未安装则放弃安装
rpm 卸载RPM软件
-e 卸载 rpm -e lynx
–nodeps安装、升级卸载时忽略依赖关系
重建RPM数据库 rpm --rebuilddb
rpm --inintdb
38 yum 构建本地yum仓库(自动解决依赖关系) -y 表示不进行交互
前提 构建环境
-y install 安装软件 yum -y install ftp-libs.1.el6.x86_64
-y remove 卸载软件 yum -y remove ftp-libs.1.el6.x86_64
-y update 升级软件 yum -y update ftp-libs.1.el6.x86_64
源代码安装编译
文件类型
普通执行程序文件 /usr/bin
服务器执行程序文件和管理程序文件 /usr/sbin
应用程序配置文件 /etc
日志文件 /var/log
应用程序文档文件 /usr/share/doc
应用程序手册页文件 /usr/share/man
封装类型 .
rpm软件包 扩展名为“.rpm”
deb软件包 扩展名为“.deb”
源代码软件包 一般为“.tar.gz”、“.tar.bz2”等格式的压缩包包含程序原始代码
附带安装程序软件包 压缩包内提供install.sh、setup等安装程序
确认源代码编译环境 需要支持C/C++程序语言的编辑器
gcc-4.4.7-4.el6 gcc --version
gcc-c+±4.4.7-4.el6 make --version
make-3.81-20.el6
解包 习惯上将软件包释放到/usr/crc目录 tar xf httpd-2.2.17.tar.gz -C /usr/src (源代码目录)
预配置 使用源码目录中的configure脚本 cd /usr/src/httpd-2.2.17
执行“./configure -help”可查看帮助 ./configure --prefix=/usr/local/apache
典型的配置选项 –prefix=软件安装目录
编译 执行make命令 make
安装 执行make install命令 make install
编译安装步骤 备份后修改配置文件 cd /usr/local/apache/conf
cp httpd.conf httpd.conf.bak
vi /usr/local/apache/conf/httpd.conf
#ServerName www.example.com:80
ServerName www.example.com:80
启动Apache /usr/local/apache/bin/apachectl start
运行 lynx 127.0.0.1

四、账号管理

序号 命令 含义 范例
39 tail -l /etc/passwd
amber : x:500:500::/home/amber:/bin/bash (x左右没空格)
第一字段 amber:用户帐号名
第二字段 x:密码占位符5
第三字段 500:uid编号
第四字段 500:gid编号
第五字段 空:用户备注
第六字段 /home/amber:用户宿主目录
第七字段 /bin/bash:登录的shell (若为/sbin/nologin 则不能登录)
tail -1 /etc/shadow
amber: 6 6 6sEip~~:16799:0:99999:7:::
第一字段 amber:用户帐号名
第二字段 6 6 6sEip~~:密文
第三字段 16793:帐号上次修改时间距1970年1月1日过去多少天
第四字段 0:距上次密码修改提多少天内不能再次修改密码、单位天
第五字段 99999:密码过期天数 (99999表示永久)
第六字段 7:强制密码修改提醒时间
第七字段 空:当密码过期后经过多少天该帐号会被禁用
第八字段 空:密码过期日期,若设置则显示为过期日期距1970年1月1日多少天
40 useradd 添加用户帐号
P28 -u 指定uid标记号 groupadd group1
-d 指定宿主目录、缺省默认为/home用户名 mkdir -pv /testgroup1
-e 指定帐号失效时间 groupadd jiaoxue
-M 不为用户建立初始化宿主目录 useradd -d /testgroup1/tom -g group1 -G jiaoxue -s /bin/bash -e 2016-01-01 tom
-s 指定用户的登录shell passwd tom
-g 指定用户的基本组名(gid号)
-G 指定用户的附加组名(gid号) tail -1 /etc/passwd
-c 添加备注、显示在、etc/passwd第五字段 tail -1 /etc/shadow
41 passwd 设置、更改用户口令 passwd user1
-d 清空用户密码 passwd -l user1 (锁定用户)
-l 锁定用户帐号 passwd -S user1 (查看用户状态)
-S 查看用户帐号的状态(是否被锁定) passwd -u user1 (解锁用户)
-u 解锁用户帐号 passwd -d user1 (清除用户密码)
-x 密码的最长有效时限 passwd -x 120 user1
-n 密码的最短有效时限 passwd -n 1 user1
-w 在密码过期前多少天开始提醒用户 passwd -w 5 user1
-i 当密码过期后经过多少天该帐号会被禁用 passwd -i 7 user1
42 usermod 修改用户属性
-l 更改用户帐号的登录名字 usermod -l user1 user2
-c 修改用户备注 tail -1 /etc/passwd
-L 锁定用户帐号 usermod -c jiaoxue user2
-U 解锁用户帐号 tail -1 /etc/passwd
附加 -u、-d、-e、-s、-c、与useradd含义相同
43 userdel 删除用户帐号
-r 删除用户的同时删除用户的宿主目录 userdel -r user1
44 groupadd 添加组帐号
-g GID groupadd -g GID group1
基本组(私有组) groupadd -g 500 group1
附加组(公有组) tail -5 /etc/group
45 gpasswd 设置组帐号密码、添加删除组成员
-a 向附加组内添加一个用户 gpasswd -a user1 group1
-d 从附加组内删除一个用户 gpasswd -d user1 group1
-M 定义组成员列表,多个添加组成员 gpasswd -M user1,user2,user3 group1
也可用vi编辑 vi /etc/group
/etc/group group1 : x:500:user1,user2,user3
46 groupdel 删除组帐号 groupdel group1
tail -5 /etc/group
47 id 查询用户身份标识 id user1
id [用户名] uid=500(user1) gid=500(user1) 组=500(user1)
48 groups 查询客户所属的组 groups user1
groups [用户名] user1:user1
49 finger 查询帐号的详细信息
finger [用户名] finger user1
50 w 查询已登录到主机的用户信息 w
51 whoami 查询当前登录的帐号名 whoami
52 who 查询已登录到主机的用户 who

五、权限及归属管理

序号 命令 含义 范例
53 读权限r 允许查看文件内容
写权限w 允许修改文件内容
可执行x 允许运行程序
属主 拥有该文件的用户帐号
属组 拥有该文件的组帐号
-rw-r–r--. 1 root root 34298 04-02 00:23
文件类型、权限 属主 属组
第一位表示文件类型
- 表示一般文件
d 表示目录
l 表示软链接
p 表示PIPE管道文件
s 表示socket通信套接字文件
c 表示字符设备文件
b 表示块设备文件
权限 字母表示 7进制表示
读权限 r 4
写权限 w 2
可执行 x 1
无权限 - 0
drwxr-xr-x 权限为755的目录
-rw-r–r-- 权限为644的文件
54 chmod 设置文件或目录的权限 chmod u+x,g+w,o-r /a/1.txt (-rwxrw----. 1 root root 0 12月 31 19:06 /a/1.txt)
-R 递归设置目录及子目录下所有目录及文件权限 chmod a=rwx /a/1.txt (-rwxrwxrwx. 1 root root 0 12月 31 19:06 /a/1.txt)
u 属主 chmod a-x /a/1.txt (-rw-rw-rw-. 1 root root 0 12月 31 19:06 /a/1.txt)
h 属组 chmod 777 /a/1.txt (-rwxrwxrwx. 1 root root 0 12月 31 19:06 /a/1.txt)
o 其他人 chmod 000 /a (d---------. 2 root root 4096 12月 31 19:06 /a)
a 所有人 chmod -R 000 /a (ll /a)
+ 添加 ---------. root root 0 12月 31 19:06 1.txt
- 删除 ---------. root root 0 12月 31 19:06 2.txt
= 重置 ---------. root root 0 12月 31 19:06 3.txt
建立目录时用-m可直接设定新建目录权限 mkdir -m 777 /b
ll -d /b (drwxrwxrwx. 2 root root 4096 12月 31 19:46 /b)
55 chown 设置文件的归属
属主 chown user1 1.txt (-rw-r–r--. 1 user1 root 0 12月 31 19:58 1.txt)
:属组 chown :user1 1.txt (-rw-r–r--. 1 root user1 0 12月 31 19:58 2.txt)
属主:属组 chown user1:user1 1.txt (-rw-r–r--. 1 user1 user1 0 12月 31 19:58 3.txt)
56 umask 控制新建的文件或目录的权限
umask值 目录权限值 文件权限值
0 7 6
1 6 6
2 5 4
3 4 4
4 3 2
5 2 2
6 1 0
7 0 0
umask值为0000 目录权限值为777、文件权限值为666
umask值为0022 目录权限值为755、文件权限值为644
查看umask值 umask
设置umask值 umask 020

六、磁盘管理

序号 命令 含义 范例
57 扇区 盘片被分为多个扇形区域、每个扇区存放512字节的数据
磁道 统一盘片不同半径的同心圆
柱面 不同盘片相同半径构成的圆柱面
硬盘存储容量=磁头数x磁道(柱面)数x每道扇区数x每扇区字节数
可以用柱面/磁头/扇区来唯一定位磁盘上的每一个区域
IDE(并口) SATA(串口) 速度快、纠错能力强
SCSI 转速快、CPU占用资源低、支持热插拔
定义 MBR主引导记录
位置 MBR位于硬盘第一个物理扇区处
MBR中包含硬盘主引导程序和硬盘分区表、分区表有4个分区记录区每个分区占16字节、共64字节
446字节存放主引导程序、2字节校验
/dev(硬件设备文件所在的目录)/hd(hd表示IDE设备、sd表示SCSI设备)
/hd[abc](硬盘的顺序号以字母a、b、c…表示)/hda[123](分区的顺序号以数字1、2、3…表示)
硬盘中的主分区数只有4个、主分区和扩展分区的序号被限制在1~4
扩展分区再分为逻辑分区、逻辑分区的序号始终从5开始
文件系统类型
EXT4第四代扩展文件系统 存放文件和目录数据的分区、典型的日志型文件系统、系统中默认使用的文件系统
SWAP交换文件系统 为Linux系统建立交换分区、类似于Windows系统的虚拟缓存
Linux支持的其他系统文件类型 FAT16、FAT32、NIFS、XFS、JFS…
58 fdisk -l 检测并确认新硬盘 System:分区类型
Device:分区的设备文件名称 Blocks:块、默认大小为1024字节
Boot:是否是引导分区、若是有“*”标识 ld:分区对应的系统ID号、83表示Linux中的EXT4分区、8e表示LVM逻辑卷
Stat/End:分区的起始/结束位置(柱面数) 82表示swap、fd表示RAID
59 fdisk 规划硬盘中的分区 在交互式的操作环境中管理磁盘分区
m 查看操作指令的帮助信息 fdisk /dev/sd[bcd]…
p 列表查看分区信息 Command(m for help):m、p、n
n 新建分区 n
d 删除分区 p (primare partition(1-4)【主分区】
t 变更分区类型 Partition numbei(1-4):1 【主分区序号】
w 保存分区设置并退出 First cylinder(1-2610,default 1):回车 【分区初始大小】
q 放弃分区设置并退出 Last cylinder,+cylinders or +size{k,M,G}(1-2610,default 2610):+5G 【分区最终大小】
Ctrl+← 删除输入的错误字符 Commadn (m for help):w 【保存分区设置】
60 parted 规划大小超过2T的分区、也可小分区规划 parted [选项][分区设备]
?/help/–help:帮助 parted -l
quit/q:保存退出 parted /dev/sdb
print/p:打印
mklabel:改变硬盘的文件类型
mkpart:分区
rm:删除某分区、后跟分区号

七、文件系统与LVM

序号 命令 含义 范例
61 mkfs 创建文件系统(格式化) mkfs -t 文件系统类型 分区设备
-t 指定格式化文件类型 mkfs 【两次Tab】
-b 指定block大小、单位为字节 fdisk -l /dev/sdb
-I inode大小 mkfs -t ext4 /dev/sdb1
-U 设置UUID号 mkfs.ext4 /dev/sdb1
-q 执行时不显示任何信息
62 mkswap 创建交换文件系统 mkswap 分区设备
mkswap /dev/sdb5
swapon -s
cat /proc/meminfo (管道符) grep -i swaptotal
swapon /dev/sdb5
swapon -s
cat /proc/meminfo (管道符)grep -i swaptotal
63 mount 挂载文件系统、ISO镜像
mount [-t 类型] 存储设备 挂载点目录 mount /dev/sdb1 /a
mount -o -loop ISO 镜像文件 挂载点目录 mount /dev/sdb1 /b
mount 查看当前的挂载 mount -o loop /root/DBC.ISO /a
mount -a 挂载/etc/fstab中已记录的所有挂载 df -hT
mount /dev/cdrom /mnt 【挂载光盘】
partprobe /dev/sdb (刷新)
blkid /dev/vg1/lv1 >> /etc/fstab (追加)
64 umount 卸载已挂载的文件系统 umount /dev/sdb1
umount 存储设备位置 umount /a
umount 挂载点目录 umount -a
umount -a 卸载所有/etc/fstab已记录的挂载 df -hT
65 设置文件系统自动挂载/etc/fstab文件 vi /etc/fstab
defaults:默认 auto:系统自动挂载、fstab默认此选项
noauto:开机不自动挂载 nouser:只有超级用户可以挂载
ro:按制度权限挂载 rw:按可读写权限挂载
user: 任何用户都可以挂载
dumo备份设置 fsck磁盘检查设置
/dev/sdb1 /a ext4 defaults 0 0
其值是一个顺序、值为0时、永远不检查;而/根目录分区永远都为1、其他分区一般为2
66 df 查看磁盘使用情况 df [选项][文件]
-h 显示更易读的容量单位 df -hT
-T 显示对应文件系统的类型 df -i /dev/sdb1
-i 显示inode数量
67 blkid 查看分区UUID号 分区必须格式化后才会有UUID号
tail -2 /etc/fstab blkid /dev/sdb6
68 管理LVM逻辑卷 动态调整磁盘容量、提高磁盘管理的灵活性
/boot分区用于存放引导文件、不能基于LVM创建
PV 物理卷 整个硬盘、使用fdisk等工具建立的普通分区
VG 卷组 由多个物理卷组成的卷组
LV 逻辑卷 从卷组中分割处一部分空间、用于建立文件系统
功能 物理卷管理 卷组管理 逻辑卷管理
扫描 pvscan vgscan lvscan
建立 pvcreate vgcreate lvcreate
显示 pvdisplay vgdisplay lvdisplay
删除 pvremove vgremove lvremove
扩展 vgextend lvextend
减少 vgreduce lvreduce
69 pvcreate 创建物理卷 pvcreate /dev/sd[bcd]1
70 vgcreate 创建卷组 vgcreate vg1 /dev/sd[bcd]1
71 lvcreate 创建逻辑卷 lvcreate -L 容量大小 (-l指定PE个数) -n 逻辑卷名 卷组名
lvcreatr -L 20G -n xuexi vg1
或lvcreate -l 5000 -n xuexi vg1
72 lvextend 扩展逻辑卷 lvextend -L +大小或直接写增加后的最终大小 /dev/卷组名/逻辑卷名
lvcreate -L +5G /dev/vg1/xuexi
lvextend -L 30G /dev/vg1/xuexi
73 resize2fs 调整 (刷新)逻辑卷分区大小 resize2fs /dev/卷组名/逻辑卷名
resize2fs /dev/vg1/xuexi

八、服务器RAID及配置实战

序号 命令 含义 范例
74 RAID0、RAID1、RAID2、RAID3、RAID4、RAID5、RAID6、RAID0+1
mdadm 实现软件RAID、不同选项不同作用 mdadm [选项]参数
-C –create 创建一个新的软RAID、后跟raid设备名称
-A –assemble 加载一个已存在的阵列、后跟阵列以及设备的名称
-S –stop 停止指定的RAID设备
-D –detail 输出指定RAID设备的详细信息
-s –scan 扫描配置文件或/proc/mdstat 文件来搜索RAID的配置信息 该参数不能单独使用
-l –level 设置RAID的级别
-n –raid-devices 指定阵列中活动磁盘的数目
-x
-G –grow 改变在用阵列的大小或形态
-v –verbose 显示细节
fdisk -l (管道符) grep raid
mdadm -Cv /dev/md5 -l5 -n3 -x1 /dev/sd[bcde]1
mkfs.ext4 /dev/md5
mkdir -pv /xuexi
mount /dev/md5 /xuexi
df -hT
vi /etc/fstab (/dev/md5 /xuexi ext4 defaults 1 2 )
手动创建RAID配置文件/etc/mdadm.conf mdadm -D -s > /etc/mdadm.conf
vi /etc/mdadm.conf (UUID=~~ auto=yes )
RAID拉伸 添加新硬盘/dev/sdf并创建sdf1分区、添加到RAID5中作为热备盘
mdadm /dev/md5 -a /dev/sdf1
mdadm -G /dev/md5 -n 4
cat /proc/mdstat (查看)
删除软raid/dev/md5设备 umount /dev/md5
mdadm -S /dev/md5
vi /etc/fstab 删除/dev/md5行
rm -f /etc/mdadm.conf

九、引导过程与服务控制

序号 命令 含义 范例
75 由Linux内核加载运行/sbin/init程序
是系统中的第一个进程、所有进程的父进程
PID(进程标记)号永远为1
Upstart启动方式
参数 说明
/etc/inittab 配置默认运行级别
/etc/sysconfig/init 控制tty终端的开启数量、终端颜色方案
/etc/init/rcS.conf 加载rc.sysinit脚本、完成系统初始化任务
/etc/init/rc.conf 兼容脚本、负责各运行级别的调用处理
为单用户模式启动/sbin/sushell环境
/etc/init/control-alt-delete.conf 控制终端下的Ctrl+Alt+Del热键操作
/etc/init/start-ttys.conf 配置tty终端的开启数量、设备文件
/etc/init/tty.conf 控制tty终端的开启
runlevels——运行级别 init 0(0~6)
0: 关机状态、使用该级别时将会关机
1: 单用户模式、无需密码验证即可登录系统、用于系统维护
2: 字符界面的多用户模式(不支持访问网络)【很少使用】
3: 字符界面的完整多用户模式、大多数服务器运行在此级别
未分配使用(省电模式)
5: 图形界面的多用户模式、提供了图形桌面操作环境
6: 重新启动、使用该级别时将会重启主机
书MBR扇区修复 P83
mkdir /backup
mount /dev/sdb1 /backup
dd if=/dev/sda of=/backup/sda.mbr.bak bs=513 count=1 (备份)
dd if=/dev/zero of=/dev/sda bs=512 count=1
reboot
进入急救模式
fdisk -l (管道符) grep /dev
mkdir /bacjup
mount /dev/sdb1 /backup
dd if=/backup/sda/mbr.bak of=/dev/sda bs=512 count=1
reboot
书GRUB引导故障
mount /dev/sdb1 /backup
cd /boot/grub
cp grub.conf /backup
mv grub.conf grub.conf.bak
reboot
进入急救模式
chroot /mnt/sysimage
mv /boot/grub grub.conf.bak grub.conf
或chroot /mnt/sysimage
grub-install /dev/sda
vi /boot/grub/grub.conf (手动添加)
清除Linux各种密码 口诀:e2e、空格1、回车再按b passwd reboot
76 服务器控制及优化 ./etc/rc.d/init.d 服务名称 控制类型
service 服务名称 控制类型 /etc/init.d 是/etc/rc.d/init.d 的快捷方式
start 启动 示例
stop 停止 /etc/rc.d/init.d/posrfis status
restart 重启 /etc/init.d/postfis restart
reload 平滑重启、无需停止服务【常用】 service postfis stop
status 查看状态
77 runlevel 查看运行级别 runlevel 使用init 0~6运行级别参数
78 ntsysv 优化启动过程 提供一个交互式、可视化窗口、可以在字符终端运行、便于集体管理多个服务
79 chkconfig 优化服务 不提供交互式、可视化窗口、管理单个服务效率更高
–list 查询服务列表
–list 服务名 chkconfig --list iptables
–level 级别 服务名 on/off chkconfig --level 35 iptables on (不指定级别时默认2345)
添加服务 使服务可以用/etc/init.d或service启停
将服务脚本文件拷入/etc/rc.d/init.d 保证其状态为可执行
将服务添加到服务列表中 chkconfig --add camsd
删除服务 chkconfig --del camsd

十、进程和计划任务管理

序号 命令 含义 范例
80 ps 以简单列表的形式显示出进程信息 ps (只显示当前用户回话中打开的进程)
a 显示当前终端下的所有进程信息包括其他用户 ps aux
u 使用以用户为主的格式输出进程信息 ps aux
x 显示当前用户在所有终端下的进程信息
ps -elf (管道符) gerp 进程名 ps -elf (管道符) grep bash
81 top 动态查看进程统计信息 top -d 5
-d 指定刷新的间隔时间、单位秒 top -b -n2
-b 以批量处理模式操作、一般与-n同用 top -b -n1 > /1.txt
-n 指定循环显示的次数 cat /1.txt
-u 指定用户名 top -u user1
-p 指定进程名 top -p 2305
82 pgrep 根据特定条件查询PID信息
-l 显示进程名 pgrep -l log
-U 指定特定用户 pgrep -l -U user1 -t tty1
-t 指定终端
83 pstree 以树形结构列出进程信息
-a 显示完整信息 pstree -aup
-u 列出对应用户名 pstree -ap user1
-p 列出对应PID号
84 & 命令后输入&符号后台启动 cp /dev/cdrom nycd.iso &
Ctrl+Z 将当前进程挂起、调入后台并停止执行
jobs 查看处于后台的任务列表、加-l同时显示PID号
fg 将后台进程恢复到前台运行、可指定任务程序号
bg 将后台暂停的进程调至后台运行
vi 123.txt (Ctrl+Z)
jobs -l
fg 1
85 kill 终止指定PID号的进程 pgrep -l vi (2305 vi)
killall 终止指定名称的所有进程 kill -9 2305
-9 选项用于强制终止 killall -9 vi
86 pkill 根据特定条件终止相应的进程
-U 根据进程所属的用户名终止相应进程 pgrep -l -U hackli
-t 根据进程所在的终端终止相应进程 pkill -9 -U hackli
87 at 调度启用、设置一次性任务计划 服务脚本/etc/init.d/atd
at [HH:MM][yyyy-mm-dd] 设置当天的任务计划可不加日期
Ctrl+D 保存退出
atp 查询现有的一次性任务计划
atrm[任务序号] 删除第几项任务
at 18:40
at>init 0 (Ctrl+D)
at>
atq (查询)
at 22:00 +7 days (七天后)
at 22:00 tomorrow (明天)
88 date 查询当前时间 date
89 crontab 设置周期性计划任务 脚本名称/etc/init.d/crond 全局配置文件/etc/crontab
编辑 crontab -e [-u 用户名] (仅root用户可用)
查看 crontab -l [-u 用户名]
删除 crontab -r [-u 用户名]
* 表示该范围内的任意时间
表示间隔的多个不连续时间点
- 表示一个连续的时间范围
/ 指定间隔的时间频率
crontab -e (设置周期性任务)
每周一、三的17:30打包备份/etc/httpd目录 30 17 * * 1,3 /bin/tar jcf httpdconf.tar.bz2 /etc/httpd
每隔5天清空一次FTP服务器公共目录/var/ftp/pub 0 0 * /5 * * /bin/rm -rf /var/ftp/pub/ *

十一、系统安全及应用

序号 命令 含义 范例
90 cat /etc/shells (控制台种类)
91 系统帐号清理 将非登录用户的shell设为/sbin/nologin
usermod -s usermod -s /sbin/nologin user1
chsh 交互式修改 chsh user1
/New shell [/bin/bash]:/sbin/nologin
chsh -s chsh -s /sbin/nologin user1
92 锁定(解锁)长期不使用的帐号
passwd -S 查看用户状态
passwd -l (密文前加2个!) passwd -l user1 (锁定用户user1的密码)
usermod -L (密文前加1个!) usermod -L user1
passwd -u passwd -u user1 (解锁用户user1的密码)
usermod -U usermod -U user1 (此命令需进行相同两次才能完全解锁)
93 密码安全控制 设置密码有效期
chage -M 天数 用户名 chage -M 60 user1
passwd -x 天数 用户名 passwd -x 30 30 user1
设置今后添加用户时的默认密码有效期 vi /etc/login.defs (PASS_MAX_DAYS 99999)
94 要求用户下次登录时修改密码 chage -d 0 user1
95 命令历史限制
减少历史的命令条数 vi /etc/profile 文件 修改HISTSIZE=后面的数值
export HISTSIZE=数值
vi /etc/profile (HISTSIZE=1000)
使/etc/profile配置文件生效、全局生效 source /etc/profile
export HISTSIZE=100 export HISTSIZE=100 (仅当前用户环境下生效)
96 注销时自动清空历史命令 宿主目录下的.bash_logout文件、添加history -c
vi ~user1/.bash_logout
history -c
clean
97 终端自动注销
编辑/etc/profile文件、添加TMOUT=数值 vi /etc/profile (TMOUT=600)单位秒
exprot TMOUT=数值 export TMOUT=600 (仅当前用户环境下生效)
98 su 切换用户 (需要当前用户密码)
su - 目标用户 su - user1 (完全切换)
exit
su user1 (环境变量不改变)
查看su操作记录 tac /var/log/srcure (管道符) less
99 sudo 提升权限 以其他用户身份执行授权的命令
visudo或vi /etc/sudoers添加配置内容 用户名 主机名列表=命令程序列表 (命令程序路径)命令前加“!”表示“除了”此项命令
user1 www(ALL)=/sbin/,/usr/sbin/,!/sbin/reboot,!/sbin/init
批量授权 将用户添加至 wheel组
%wheel www=/sbin/,/usr/sbin/,!/sbin/reboot~~~
查看sudo操作记录 vi sudo 或vi /etc/sudoers 添加 Defaults logfile=/var/log/sudo
cat /var/log/sudo
查询授权操作 sudo -l
100 PAM安全认证 ls /lib64/security
cat /etc/pam.d/su
101 设置仅允许用户user1,2使用su进行切换 vi /etc/pam.d/su
(#)aut required pam_wheel.so use_uid (去除#)
102 开关机安全控制 书P126 调整BIOS基本引导设置
禁用重启热键Ctrl+Alt+Del 避免用户误操作
vi /etc/init/control-alt-delete.conf (将最后两行改为注释)
init q 不重启、即时生效配置文件
103 gurb菜单限制 cp grub.conf grub.conf.bak (修改配置文件前先备份)
vi grub.conf
password 123456
title CentOS (2.6.32-431.el6.x86_64) 【主机名】
password 654321
104 密码设置方式
password 明文串
password --md5 加密密码串 (使用grub-md5-crpypt获取加密密码串)
grub-md5-crypt
password:123456
Retype password:123456
$1 $ LLMybRjruHe0gqgP7zrIy/dnN1 (将加密密码串复制进grub.conf文件)
105 终端登录安全控制 减少开放终端个数
vi 编辑/etc/init/start-ttus.conf以及/etc/sysconfig/init两个配置文件
vi /etc/init/start-ttys.conf
env ACTIVE_CONSOLES=/dev/tty[1-3]
vi /etc/sysconfig/init
ACTIVE_CONSOLES=/dev/tty[1-3]
106 限制root只在安全终端登录 vi编辑/etc/securetty配置文件、将禁止的终端前加#注解
vi /etc/securetty (此文件修改后立即生效)
107 禁止普通用户登录 touch /etc/nologin (即可) 删除此空文件即可恢复
108 JR 弱口令检测 需 john-1.8.0tar.xz
tar xf john-1.8.0.tar.xz
cd john-1.8.0/crc
make clean linux-x86-64
cd …/run
cp /etc/shadow ./shadow.txt
./john --show shadow.txt
(添加用户设置密码)
grep user1 /etc/shadow > ./user1.shadow.txt
./john --wordlist=./passwprd.lst ./user1.shadow.txt
cat john.pot (查看破解记录)
:>john.pot (清空破解记录)
109 NMAP 端口检测 nmap [扫描类型][选项]<扫描目标>
-sS TCP SYN扫描(半开)
-sT TCP链接扫描(全开) 安装nmap
-sF TCP FIN扫描 mount /dev/cdrom /mnt
-sU UDP扫描 cd /mnt/Packages
-sP ICMP扫描 rpm -ivh nmap-5.51-3.el6.x86 64.rpm
-sO 跳过ping检测
-n 禁止DNS反向解析
-p 指定端口号
本机测试 nmap 127.0.0.1
nmap -sU 127.0.0.1
检测当前192.168.1.0/24网段有哪些主机提供FTP服务 nmap -n -p 21 192.168.1.0/24
检测192.168.1.0/24网段有哪些存活主机 nmap -n -sP 192.168.1.0/24
检测192.168.1.100~254/24哪些主机开启文件共享服务 nmap -n -p 139,445 192.168.1.100-254

十二、Linux文件系统与日志

序号 命令 含义 范例
110 stat 查看文件的indoe内容 stat install.log
cat 1.txt
stat 1.txt
111 查看文件系统的inode与block的信息
df -i 设备名 文件系统已挂载时查询、查询inode总数与已用数量
dumpe2fs -h 设备名 文件系统无需挂载
tune2fs -l 设备名 文件系统无需挂载
df -i
dumpe2fs -h /dev/sdb1 (管道符)less
tune2fs -l /dev/sdb1
112 格式化时指定文件系统的inode个数与block大小
mkfs.ext4 -N indoe数 -b 块大小 (单位字节) 设备名
mkfs.ext4 -N 10000 -b 1024 /dev/sdb1
113 解决inode耗尽导致的磁盘故障
mkdir -pv /backup
mv /test/* /backup
umount /dev/sdb1
mkfs.ext4 -N 10000 /dev/sdb1
mount /dev/sdb1 /test
mv /backup/* /text
114 kink hard link硬链接 cd /test
>a.txt
ln a.txt hard lin.a.txt
删除源文件硬链接不受影响 ll -i
cd /test2
ln /test/a.txt lin.a.txt
soft link软链接 cd /test
ln -s a.txt soft.a.txt
cd /test2
重命名源文件软链接失效 ln -s /test/a.txt soft.a.txt
ln -s /test/ soft.a.txt
115 恢复误删除的文件 详见书P151 (yum -y install gcc-c++)
116 日志文件分析 tail -1 /var/log/messages
117 last 用于查询成功登录到系统的用户记录、最近的登录情况在最前面
-a 把从何处登录系统的主机名称或IP地址、显示在左后一行
-d 将IP地址转换成主机名称
-f [记录文件]:指定记录文件
-R 不显示登入系统的主机名称或IP地址
-x 显示系统关闭、重新开机、以及执行等级的改变等
-n n代表数字、表示最近n次登录的记录
118 lastlog 用于显示系统中所有用户最近一次登录信息
119 lastb 用于显示用户错误的登录列表、此指令可以发现系统的登录异常

你可能感兴趣的:(linux,服务器,运维)