date 用法: date [OPTION]… [+FORMAT]
date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
直接输入date
date 指定格式显示时间: date +%Y_%m_%d, date +%Y:%m:%d
date 可以用来显示或设定系统的日期期与时间。
1.在显示方面
使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下:
%n : 下一行
%t : 跳格
%H : 小时(00…23)
%I : 小时(01…12)
%k : 小时(0…23)
%l : 小时(1…12)
%M : 分钟(00…59)
%p : 显示本地 AM 或 PM
%r : 直接显示时间 (12 小时时制,格式为 hh:mm:ss [AP]M)
%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到当前为为止的秒数
%S : 秒(00…61)
%T : 直接显示时间 (24 小时制)
%X : 相当于 %H:%M:%S
%Z : 显示时区 %a : 星期几(Sun…Sat)
%A : 星期几 (Sunday…Saturday)
%b : 月份 (Jan…Dec)
%B : 月份 (January…December)
%c : 直接显示期与时间
%d : 日 (01…31)
%D : 直接显⽰⽇期 (mm/dd/yy)
%h : 同 %b
%j : 一年中的第几天 (001…366)
%m : 月份 (01…12)
%U : 一年中的第几周 (00…53) ( 以 Sunday 为一周的第几天的情形)
%w : 一周中的第几天 (0…6)
%W :一年中的第几周 (00…53) ( 以 Monday 为几周的第几天的情形)
%x : 直接显示日期 (mm/dd/yy)
%y : 年份的最后两位数字 (00.99)
%Y : 完整年份 (0000…9999)
2.在设定时间方面
date -s //设置当前时间,只有root权限才能设置,其他只能查看。date -s 20100101 //设置成20100101,这样会把具体时间设
置成空00:00:00
date -s 01:01:01 //设置具体时间,不会对日期期做更改
date -s “01:01:01 2010-01-01 ″ //这样可以设置全部时间
date -s “01:01:01 20100101″ //这样可以设置全部时间
3.date命令本身提供了日期的加减运算
date +%Y%m%d //显示现在的年月日
date +%Y%m%d --date="+1 day" //显示后一天的日期
date +%Y%m%d --date="-1 day" //显示前一天的日期
date +%Y%m%d --date="-1 month" //显示上一月的日期
date +%Y%m%d --date="+1 month" //显示下一月的日期
date +%Y%m%d --date="-1 year" //显示前一年的日期
date +%Y%m%d --date="+1 year" //显示下一年的日期
注意在mac中加减日期使用-v选项,如
chenfeihaodeMacBook-Pro:conf.d chenfeihao$ date --help
date: illegal option -- -
usage: date [-jnRu] [-d dst] [-r seconds] [-t west] [-v[+|-]val[ymwdHMS]] ...
[-f fmt date | [[[mm]dd]HH]MM[[cc]yy][.ss]] [+form
chenfeihaodeMacBook-Pro:conf.d chenfeihao$ date +%Y-%m-%d
2018-10-07
chenfeihaodeMacBook-Pro:conf.d chenfeihao$ date -v+2d +%Y-%m-%d
2018-10-09
chenfeihaodeMacBook-Pro:conf.d chenfeihao$ date -v-2d +%Y-%m-%d
2018-10-05
时间戳
时间->时间戳: date +%s
时间戳->时间: date +%Y:%m:%d -d @1425384141
Unix时间戳(英文为Unix epoch, Unix time, POSIXme 或 Unix timestamp)是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。

Linux系统移植
第一部分 前言....................................................................................................................................8
1 硬件环境......................................................................................................................................8
1.1 主机硬件环境.......................................................................................................................8
1.2 目标板硬件环境...................................................................................................................8
1.3 工具介绍...............................................................................................................................8
2 软件环境.......................................................................................................................................8
2.1 主机软件环境.......................................................................................................................8
2.1.1 Windows 操作系统.......................................................................................................8
2.1.2 Linux 操作系统 .......................................................................................................8
2.1.3 目标板最后运行的环境...............................................................................................9
2.2 Linux 下工作用户及环境....................................................................................................9
2.2.1 交叉工具的安装...........................................................................................................9
2.2.2 uboot移植工作目录....................................................................................................9
2.2.3 内核及应用程序移植工作...........................................................................................9
2.3 配置系统服务.....................................................................................................................10
2.3.1 tftp 服务器的配置.......................................................................................................10
2.4 工具使用.............................................................................................................................12
2.4.1 minicom的使用..........................................................................................................12
3 作者介绍....................................................................................................................................13
3.1 策划, 组织, 指导, 发布者...................................................................................................13
3.2 ADS bootloader部分..........................................................................................................13
3.3 交叉工具部分.....................................................................................................................13
3.4 uboot 部分...........................................................................................................................13
3.5 内核部分.............................................................................................................................13
3.6 应用程序部分.....................................................................................................................13
3.7 网卡驱动部分.....................................................................................................................13
3.8 Nand Flash 驱动部分.........................................................................................................13
第二部分 系统启动bootloader 的编写(ADS).................................................................................14
1 工具介绍....................................................................................................................................14
1.1 ADS 命令行命令介绍........................................................................................................14
1.1.1 armasm........................................................................................................................14
1.1.2 armcc, armcpp.............................................................................................................14
1.1.3 armlink.........................................................................................................................14
2 基本原理....................................................................................................................................15
2.1 可执行文件组成及内存映射.............................................................................................15
2.1.1 可执行文件的组成.....................................................................................................15
2.1.2 装载过程.....................................................................................................................16
2.1.3 启动过程的汇编部分.................................................................................................17
2.1.4 启动过程的 C部分.....................................................................................................17
3 AXD的使用以及源代码说明...................................................................................................18
3.1 源代码说明.........................................................................................................................18
3.1.1 汇编源代码说明.........................................................................................................18
3.1.2 C语言源代码说明......................................................................................................23
3.1.3 源代码下载.................................................................................................................23
3.2 AXD的使用.......................................................................................................................23
3.2.1 配置仿真器.................................................................................................................23
3.2.2 启动 AXD 配置开发板...............................................................................................23
第三部分 GNU交叉工具链.............................................................................................................25
1 设置环境变量,准备源码及相关补丁...................................................................................25
1.1 设置环境变量.....................................................................................................................25
1. 2 准备源码包............................................................................................................................25
1.2.1 binuils..........................................................................................................................25
1.2.2 gcc...............................................................................................................................25
1.2.3 glibc.............................................................................................................................25
1.2.4 linux kernel..................................................................................................................26
1.3 准备补丁.............................................................................................................................26
1.3.1 ioperm.c.diff................................................................................................................26
1.3.2 flow.c.diff....................................................................................................................26
1.3.3 tlinux.diff....................................................................................................................26
1.4 编译 GNU binutils...........................................................................................................26
1.5 准备内核头文件.................................................................................................................26
1.5.1 使用当前平台的 gcc编译内核头文件......................................................................26
1.5.2 复制内核头文件.........................................................................................................27
1.6 译编glibc头文件.............................................................................................................27
1.7 编译gcc第一阶段............................................................................................................27
1.8 编译完整的glibc..............................................................................................................27
1.9 编译完整的gcc.................................................................................................................28
2 GNU 交叉工具链的下载...........................................................................................................28
2.1 ARM 官方网站...................................................................................................................28
2.2 本文档提供的下载.............................................................................................................28
3 GNU 交叉工具链的介绍与使用...............................................................................................29
3.1 常用工具介绍.....................................................................................................................29
3.2.1 armlinuxgcc的使用.................................................................................................29
3.2.2 armlinuxar 和 armlinuxranlib 的使用..................................................................30
3.2.3 armlinuxobjdump 的使用.........................................................................................30
3.2.4 armlinuxreadelf 的使用............................................................................................31
3.2.6 armlinuxcopydump 的使用......................................................................................32
4 ARM GNU 常用汇编语言介绍.................................................................................................32
4.1 ARM GNU常用汇编伪指令介绍.....................................................................................32
4.2 ARM GNU专有符号.........................................................................................................33
4.3 操作码.................................................................................................................................33
5 可执行生成说明........................................................................................................................33
5.1 lds文件说明.......................................................................................................................33
5.1.1 主要符号说明.............................................................................................................33
5.1.2 段定义说明.................................................................................................................34
第四部分 uboot 的移植...................................................................................................................35
1 uboot的介绍及系统结构.........................................................................................................35
1.1 uboot 介绍.........................................................................................................................35
1.2 获取uboot.........................................................................................................................35
1.3 uboot 体系结构.................................................................................................................35
1.3.1 uboot目录结构..........................................................................................................35
2 uboot的启动过程及工作原理...................................................................................................36
2.1 启动模式介绍.....................................................................................................................36
2.2 阶段1 介绍.........................................................................................................................36
2.2.1 定义入口.....................................................................................................................36
2.2.2 设置异常向量.............................................................................................................37
2.2.3 设置 CPU的模式为SVC模式..................................................................................37
2.2.4 关闭看门狗.................................................................................................................37
2.2.5 禁掉所有中断.............................................................................................................37
2.2.6 设置以 CPU的频率....................................................................................................37
2.2.7 设置 CP15...................................................................................................................37
2.2.8 配置内存区控制寄存器.............................................................................................38
2.2.9 安装 UBOOT 使的栈空间........................................................................................38
2.2.10 BSS 段清 0................................................................................................................38
2.2.11 搬移 Nand Flash 代码...............................................................................................39
2.2.12 进入 C代码部分.......................................................................................................39
2.3 阶段2 的C语言代码部分 .............................................................................................39
2.3.1 调用一系列的初始化函数.........................................................................................39
2.3.2 初始化网络设备.........................................................................................................41
2.3.3 进入主 UBOOT 命令行..............................................................................................41
2.4 代码搬运.............................................................................................................................41
3 uboot的移植过程.......................................................................................................................42
3.1 环境.....................................................................................................................................42
3.2 步骤.....................................................................................................................................42
3.2.1 修改 Makefile..............................................................................................................42
3.2.2 在 board 子目录中建立 crane2410.............................................................................42
3.2.3 在 include/configs/中建立配置头文件......................................................................42
3.2.4 指定交叉编译工具的路径.........................................................................................42
3.2.5 测试编译能否成功.....................................................................................................42
3.2.6 修改 lowlevel_init.S 文件...........................................................................................43
3.2.9 UBOOT 的 Nand Flash 移植......................................................................................45
3.2.8 重新编译uboot..........................................................................................................45
3.2.9 把 uboot烧入flash....................................................................................................45
4 UBOOT 命令的使用................................................................................................................46
4.1 UBOOT命令的介绍.........................................................................................................46
4.1.1 获得帮助信息.............................................................................................................46
4.2 常用命令使用说明.............................................................................................................47
4.2.1 askenv(F).....................................................................................................................47
4.2.2 autoscr.........................................................................................................................47
4.2.3 base ...........................................................................................................................47
4.2.4 bdinfo...........................................................................................................................47
4.2.5 bootp............................................................................................................................47
4.2.8 tftp(tftpboot)................................................................................................................48
4.2.9 bootm...........................................................................................................................48
4.2.10 go...............................................................................................................................48
4.2.11 cmp .........................................................................................................................48
4.2.12 coninfo .....................................................................................................................48
4.2.13 cp...............................................................................................................................48
4.2.14 date............................................................................................................................49
4.2.15 erase(F)......................................................................................................................49
4.2.16 flinfo(F).....................................................................................................................49
4.2.17 iminfo........................................................................................................................49
4.2.18 loadb..........................................................................................................................49
4.2.19 md..............................................................................................................................49
4.2.20 mm ............................................................................................................................50
4.2.21 mtest .......................................................................................................................50
4.2.22 mw.............................................................................................................................50
4.2.23 nm ...........................................................................................................................50
4.2.24 printenv......................................................................................................................50
4.2.25 ping ..........................................................................................................................51
4.2.26 reset...........................................................................................................................51
4.2.27 run ...........................................................................................................................51
4.2.28 saveenv(F).................................................................................................................51
4.2.29 setenv.........................................................................................................................51
4.2.30 sleep...........................................................................................................................51
4.2.31 version.......................................................................................................................51
4.2.32 nand info....................................................................................................................51
4.2.33 nand device ........................................................................................................51
4.2.34 nand bad....................................................................................................................51
4.2.35 nand read...................................................................................................................52
4.2.36 nand erease................................................................................................................52
4.2.37 nand write..................................................................................................................52
4.3 命令简写说明.....................................................................................................................52
4.4 把文件写入NandFlash.......................................................................................................53
4.5 下载提供.............................................................................................................................53
5 参考资料....................................................................................................................................53
第五部分 linux 2.6 内核的移植.......................................................................................................53
1 内核移植过程............................................................................................................................53
1.1 下载linux 内核...................................................................................................................53
1.2 修改Makefile.....................................................................................................................53
1.3 设置flash 分区...................................................................................................................54
1.3.1 指明分区信息.............................................................................................................54
1.3.2 指定启动时初始化.....................................................................................................56
1.3.3 禁止 Flash ECC校验 ................................................................................................56
1.4 配置内核.............................................................................................................................56
1.4.1 支持启动时挂载 devfs................................................................................................56
1.4.2 配置内核产生.config 文件.........................................................................................57
1.4.3 编译内核.....................................................................................................................58
1.4.4 下载 zImage到开发板................................................................................................58
2 创建 uImage................................................................................................................................61
2.1 相关技术背景介绍.............................................................................................................61
2.2 在内核中创建uImage 的方法...........................................................................................61
2.2.1 获取 mkimage工具.....................................................................................................61
2.2.2 修改内核的 Makefile文件.........................................................................................61
3 追加实验记录.............................................................................................................................62
3.1 移植 linux2.6.15.7..............................................................................................................62
3.2 移植 linux2.6.16.21............................................................................................................62
3.3 移植linux2.6.17................................................................................................................62
4 参考资料....................................................................................................................................62
第六部分 应用程序的移植..............................................................................................................63
1 构造目标板的根目录及文件系统.............................................................................................63
1.1 建立一个目标板的空根目录.............................................................................................63
1.2 在 my_rootfs 中建立Linux 目录树...................................................................................63
1.3 创建linuxrc文件................................................................................................................63
2 移植 Busybox.............................................................................................................................64
2.1 下载busybox......................................................................................................................64
2.3 编译并安装Busybox..........................................................................................................65
3 移植 TinyLogin...........................................................................................................................66
3.1 下载.....................................................................................................................................66
3.2 修改tinyLogin 的 Makefile................................................................................................66
3.3 编译并安装.........................................................................................................................66
4 相关配置文件的创建................................................................................................................66
4.1 创建帐号及密码文件.........................................................................................................66
4.2 创建profile文件................................................................................................................67
4.4 创建fstab 文件...................................................................................................................67
4.5 创建inetd.conf 配置文件...................................................................................................67
5 移植 inetd....................................................................................................................................67
5.1 inetd 的选择及获取............................................................................................................67
5.1.1 获取 inetd....................................................................................................................67
5.2 编译inetd............................................................................................................................67
5.2.1 修改 configure文件....................................................................................................67
5.2.2 编译 ...........................................................................................................................68
5.3 配置inetd............................................................................................................................68
5.3.1 拷贝 inetd 到根文件系统的usr/sbin 目录中.............................................................68
6 移植 thttpd Web 服务器.............................................................................................................69
6.1 下载.....................................................................................................................................69
6.2 编译thttpd...........................................................................................................................69
6.3 配置.....................................................................................................................................69
6.3.1 拷贝 thttpd 二进制可执行文件到根文件系统/usr/sbin/目录中...............................69
6.3.2 修改 thttpd 配置文件..................................................................................................69
6.3.3 转移到根文件系统目录,创建相应的文件.............................................................69
7 建立根目录文件系统包............................................................................................................70
7.1 建立CRAMFS 包...............................................................................................................70
7.1.1 下载 cramfs 工具........................................................................................................70
7.1.2 制作 cramfs 包............................................................................................................70
7.1.3 写 cramfs 包到Nand Flash.........................................................................................70
8 参考资料....................................................................................................................................70
第七部分 Nand flash 驱动的编写与移植........................................................................................71
1 Nand flash 工作原理..................................................................................................................71
1.1 Nand flash 芯片工作原理..................................................................................................71
1.1.1 芯片内部存储布局及存储操作特点.........................................................................71
1.1.2 重要芯片引脚功能.....................................................................................................71
1.1.3 寻址方式.....................................................................................................................71
1.1.4 Nand flash 主要内设命令详细介绍...........................................................................72
1.2 Nand Flash 控制器工作原理.............................................................................................72
1.2.1 Nand Flash 控制器特性..............................................................................................72
1.2.2 Nand Flash 控制器工作原理......................................................................................72
1.3 Nand flash 控制器中特殊功能寄存器详细介绍 ............................................................72
1.4 Nand Flash 控制器中的硬件ECC介绍............................................................................73
1.4.1 ECC产生方法............................................................................................................73
1.4.2 ECC生成器工作过程................................................................................................74
1.4.3 ECC的运用................................................................................................................74
2 在 ADS下flash 烧写程序.........................................................................................................74
2.1 ADS 下 flash 烧写程序原理及结构...................................................................................74
2.2 第三层实现说明.................................................................................................................74
2.1.1 特殊功能寄存器定义.................................................................................................74
2.1.2 操作的函数实现.........................................................................................................74
2.3 第二层实现说明.................................................................................................................75
2.3.1 Nand Flash 初始化......................................................................................................75
2.3.3 获取 Nand flash ID......................................................................................................75
2.3.4 Nand flash 写入...........................................................................................................76
2.3.5 Nand flash 读取...........................................................................................................77
2.3.6 Nand flash 标记坏块...................................................................................................78
2.3.7 Nand Flash 检查坏块..................................................................................................79
2.3.8 擦除指定块中数据.....................................................................................................79
2.4 第一层的实现....................................................................................................................80
3 在 UBOOT 对Nand Flash 的支持............................................................................................82
3.1 UBOOT对从 Nand Flash 启动的支持.............................................................................82
3.1.1 从 Nand Flash 启动UBOOT 的基本原理................................................................82
3.1.2 支持 Nand Flash 启动代码说明.................................................................................82
3.2 UBOOT对 Nand Flash 命令的支持.................................................................................84
3.2.1 主要数据结构介绍.....................................................................................................84
3.2.2 支持的命令函数说明.................................................................................................85
4 在 Linux 对Nand Flash 的支持.................................................................................................87
4.1 Linux 下Nand Flash 调用关系..........................................................................................87
4.1.1 Nand Flash 设备添加时数据结构包含关系..............................................................87
4.1.2 Nand Flash 设备注册时数据结构包含关系..............................................................87
4.2 Linux 下Nand Flash 驱动主要数据结构说明..................................................................88
4.2.1 s3c2410 专有数据结构...............................................................................................88
4.2.2 Linux 通用数据结构说明..........................................................................................89
4.3.1 注册 driver_register....................................................................................................94
4.3.2 探测设备 probe...........................................................................................................94
4.3.3 初始化 Nand Flash 控制器.........................................................................................94
4.3.4 移除设备.....................................................................................................................94
4.3.5 Nand Flash 芯片初始化..............................................................................................94
4.3.6 读 Nand Flash............................................................................................................95
4.3.7 写 Nand Flash.............................................................................................................95
第八部分 Cs8900a网卡驱动的编写与移植...................................................................................95
1 Cs8900a工作原理......................................................................................................................95
2 在 ADS下cs8900a的实现........................................................................................................95
2.1 在 cs8900a下实现的ping 工具.........................................................................................95
3 在 uboot下cs8900a的支持......................................................................................................96
3.1 uboot 下cs8900a的驱动介绍...........................................................................................96
3.2 uboot 下cs8900a的移植说明...........................................................................................96
4 在 linux 下cs8900a驱动的编写与移植....................................................................................96
4.1 Linux 下cs8900a的驱动说明............................................................................................96
4.2 Linux 下 cs8900a的移植说明...........................................................................................96
4.2.1 为 cs8900a建立编译菜单..........................................................................................96
4.2.2 修改 S3C2410相关信息............................................................................................97
该文档的目的是总结我们在工作中的一些经验,并把它们分享给喜欢 ARM 和 Linux 的朋友, 如有错误
之处,请大家多多指点. 同样, 我们也希望更多人能把自己的工作经验和体会加入该文档,让大家共同进步.
该文档是一份交流性文档, 只供个人学习与交流,不允许公司和企业用于商业行为
clock_gettime(CLOCK_REALTIME, &time); //获取相对于1970到现在的秒数
tm nowTime;
localtime_r(&time.tv_sec, &nowtime);
char current[1024];
sprintf(current, dddd:d:d, nowTime.tm_year + 1900, nowTime
jiffies的引入
他是内核中的一个全局变量,用来记录以内核节拍时间(也就是调度时间、取决于操作系统的配置、一般为1ms/10ms)为时间单位的一个时间长度。
linux系统如何记录时间
liunx内核启动时,jiffies就有一个基准值(是通过调用RTC所获得的当前时间点值换
Linux基本命令一、查看目录的内容(ls)二、获取当前目录三、查看文件的内容四、删除(rm)五、拷贝(cp)六、移动(mv)七、创建目录(mkdir)八、rmdir删除一个目录(此目录必须是空目录)九、切换目录(cd)十、查找字符串(grep)十一、查找文件(find)十二、从文件的开头或尾部显示十三、对一个文件的内容进行排序并显示在屏幕上(文件本身的内容不会改变)十四、去掉文件中相邻的行(uniq)十五、比较两个文件(diff)十六、显示字符串echo十七.显示日期(date)十八、压缩文件(不能是目录)十九、解压缩二十.打包二十一、查看进程信息(ps)二十二 、杀死一个进程二十三、查看磁
1.命令简介
date命令用于按照指定格式显示当前时间或者指定的时间,也可以设置系统时间。很多Shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作,此时可以使用date命令来完成。在类Unix系统中,日期被存储为一个整数,其大小为协调世界时(UTC)1970年1月1日0时0分0秒起流逝的秒数,即Unix时间戳。
2.命令格式
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
其中,FORMAT为格式控制字符串,可取如下值:
%% 字符%
%a 星期的简称(Su
在我们使用linux服务器时,肯定会遇到Linux服务器时间不准确的情况,如何查看Linux系统的时间,如何修改Linux系统上的当前时间呢。
查看Linux系统当前时间。
命令: date +回车
修改Linux系统当前时间。
1.不修改年的情况:
命令: date 月日时分.秒 --注意每个单位都是两位数,例如 date 05241636.00
2.修改年月日:
命令: d...
Linux的时间分为系统时间和硬件时间。一般系统时间与硬件时间不同步。
系统时间:指当前Linux Kernel(内核)中的时间.
硬件时间:主板上有电池供电的时间。(命令hwclock,hardware clock)
查看系统时间的命令: $ date
一、修改系统时间的命令:$ sudo date -s
两种方式:
1、一次性修改时间与日期
$ sudo date -s “月/日/年 10:1...
1:ls 显示文件目录 语法:ls 选项[-ald][文件或目录]
2:cat 显示文件内容(内容少适合) 语法:cat[文件名]
3:tac 显示文件内容 语法:tac[文件名]
4:more 分页显示文件内容(只能往下翻页,不能往上反) 语法:more[文件名]
5:less 分页显示文件内容(上下翻页) 语法:less[文件名]
6:head 显示文件前面几行 语法:head[文件名]
7:tail 显示文件后面几行 语法:tail[文件名]
8:touch 创建空文件 语法:touch[文件名字]
9:mkdir 创建新目录 语法:mkdir -p 目录
10:cd 切换目录 语法:cd 目录
11:pwd 显示当前目录的绝对路径 语法:pwd
12:rmdir 删除空目录 语法:rmdir 目录名字
13:rm 删除文件或目录 语法:rm -rf[文件或目录]
14:cp 复制文件或目录 语法:cp -rp[源文件或目录][目标目录]
15:scp 远程和本地互传文件 语法:scp [参数] [原路径] [目标路径]
16:mv 剪切文件或该名 语法:mv[源文件或目录][目标目录]
17:ln 生成连接文件 语法:ln -s[原件名][目标文件]
常用命令/文件搜索
1:find 文件搜索 语法:find [搜索范围][比配条件]
2:locate 在文件资料库中查找文件 语法:locate 文件名
3:which 搜索命令所在目录级别名信息 语法:which[命令名称]
4:whereis 搜索命令所在目录级帮助文档路径 语法:whereis[命令名称]
5:grep 在文件中搜索字串匹配的行并输出 语法:grep -iv[指定字串][文件]
6:uname 显示当前操作系统名称
常用命令/压缩解压
1:gzip 压缩文件 语法:gzip [文件]
2:gunzip 解压缩.gz文件 语法:gunzip [压缩文件]
3:tar 打包目录 语法:tar 选项[-zcf][压缩后文件名字][目录]
4:zip 压缩文件或目录 语法:zip 选项[-r][压缩后文件名字][文件或目录]
5:unzip 压缩文件或目录 语法:unzip [压缩文件]
6:bzip2 压缩文件 语法:bzip2 选项[-k][文件]
7:bunzip2 解压缩 语法:bunzip2 选项[-k][解压文件]
常用命令/网络
1:write 给在线用户发消息 语法:write
2:wall 发广播消息 语法:wall [发送的消息]
3:ping 测试网络连通性 语法:ping 选项IP地址
4:ifconfig 查看和设置网卡信息 语法:ifconfig [网卡名称] [IP地址]
5:mail 查看发送电子邮件 语法:mail [用户名]
6:last 列出目前与过去登陆系统的用户信息 语法:last
7:lastlog 检查某用户上次登陆的时间 语法:lastlog
8:traceroute 显示数据包到主机间的路径 语法:traceroute 网址
9:netstat 显示网络相关信息 语法:netstat [-tulrn]
10:setup 配置网络 语法:setup
11:mount 挂载 语法:mount [-t 文件系统] 设备文件名挂载点
12:nmap 端口扫描
13:ifup/ifdown 启动/禁止网卡
常用命令/关机重启
1:shutdown 关机或重启 语法:shutdown [选项] 时间
2:halt 关机 语法:halt
3:poweroff 关机 语法:poweroff
4:init 关机或重启 语法:init [0~6]数字
5:reboot 重启 语法:reboot
6:logout 退出终端 语法:logout
常用命令/帮助
1:man 获得帮助信息 语法:man [命令或配置文件]
2:whatis 获得帮助简短信息 语法:whatis 命令
3:apropos 查看配置文件信息 语法:apropos 配置文件
4:--help 查看命令主要选项 语法:命令 --help
5:info 获取帮助信息 语法:info 命令
6:help 获取Shell内置命令的帮助信息 语法:help 命令
7:apt-get 安装卸载程序
第二部分:文件系统
文件系统/文件系统
0:tree 以树形结构显示文件目录结构
1:分区和文件系统
2:文件系统常用命令
df [选项][挂载点] //统计文件系统占情况
du [选项][目录或文件] //统计目录或文件大小
df和du命令的区别
fsck [选项] 分区设备文件名 //文件系统修复命令
dumpe2fs 分区设备文件名 //显示磁盘状态命令
3:挂载命令 mount [选项] 设备文件名 挂载点
4:挂载光盘与U盘
文件系统/fdisk分区
1:fdisk命令分区过程
2:分区自动挂载与fstab文件修复
文件系统/swap分区
1:free 查看内存与swap分区使用状况
2:创建swap分区或开机自动挂载
第三部分:用户权限
用户权限/用户管理命令
1:useradd 添加新用户 语法:useradd [选项] 用户名
2:passwd 设置用户密码 语法:passwd [选项] 用户名
3:usermod 修改用户信息 语法:usermod [选项] 用户名
4:chage 修改用户密码状态 语法:chage [选项] 用户名
5:userdel 删除用户 语法:userdel [-r] 用户名
6:id 查看用户id 语法:id 用户名
7:su 切换用户身份 语法:su [选项]用户名
8:env 查看用户环境变量 语法:env
9:who 查看登陆用户信息 语法:who
10:w 查看登陆用户详细信息 语法:w
用户权限/用户和用户组管理
1:用户配置文件
1.1:/etc/passwd 用户基本信息文件
1.2:/etc/shadow 影子文件(真正密码,root可以看)
1.3:/etc/group 组信息文件
1.4:/etc/gshadow 密码文件
2:用户管理相关文件
2.1:用户的家目录
2.2:用户的邮箱 /var/spool/mail/用户名/
2.3:用户模板目录 /etc/skel/
3:用户管理命令
4:用户组管理命令
第四部分:权限管理
权限管理/权限管理
0:创建用户/添加组
1:chmod 改变文件或目录权限 语法:chmod [{ugoa}{+-=}{rwx}][文件或目录]
2:chown 改变文件或目录所有者 语法:chown [用户][文件或目录]
3:chgrp 改变文件或目录的所属组 语法:chgrp [用户组][文件或目录]
4:umask 显示或设置文件缺省权限 语法:umask[-S]
权限管理/文件特殊权限
1:SetUID 可执行的二进制文件(u:w=s 4)
2:SetGID 可执行的二进制文件或目录(g:r=s 2)
3:Sticky BIT 只对目录有效(o:x=t 1)
权限管理/文件系统属性chattr权限
1:chattr 文件系统属性权限
2:lsattr 查看文件系统属性
权限管理/系统命令sudo权限
1:sudo 权限
权限管理/ACL 权限
1:ACL权限开启
2:查看与设定ACL权限
3:最大有效权限与删除ACL权限
4:默认ACL权限和递归ACL权限
5:删除ACL权限
第五部分:系统管理
系统管理/工作管理
1:把进程放入后台(&,ctrl+z)
2:查看后台的工作 语法:jobs [选项]
3:将后台暂停的工作恢复到前台执行 语法:fg %工作号
4:把后台暂停的工作恢复到后台执行 语法:bg %工作号
系统管理/进程管理
1:进程查看
2:进程管理
2.1:判断服务器健康状态 语法:top [选项]
2.2:查看系统中所有进程 语法:ps [选项]
2.3:查看进程数 语法:pstree [选项]
3:终止进程
3.1:kill [选项] //终止进程
3.1:killall [选项][信号] 进程名 //按照进程名杀死进程
3.1:pkill [选项][信号]进程名 //按照进程名终止进程
系统管理/系统定时任务
1:crond服务管理与访问控制 语法:crontab [选项]
系统管理/系统资源查看
1:vmstat命令监控系统资源 语法: vmstat 刷新延时 刷新次数
2:dmesg开机时内核检测信息 语法: dmesg
3:free查看内存使用状态 语法: free [选项]
4:查看CPU信息 /proc/cpuinfo
5:uptime启动时间和平均负载 语法: uptime
6:uname查看系统与内核相关信息 语法: uname [选项]
7:判断当前系统的位数(32位或64位..)
8:查看当前Linux系统的发行版本 语法: lsb_release -a
9:lsof列出进程打开或使用的文件信息 语法: lsof [选项]
10:date
第六部分:服务管理
1:服务简介与分类
2:RPM包安装服务的管理
2.1:独立服务的管理
2.2:基于xinetd服务的管理
3:源码包安装服务管理
3.1:源码包安装服务的启动
3.2:源码包服务的自启动
3.3:让源码包服务被服务管理器命令识别
第七部分:启动管理
启动管理/CentOS 6.x启动管理
1:系统运行级别
1:运行级别(0~6,7个级别)
2:查看运行级别(runlevel,init)
3:系统默认运行级别(/etc/inittab)
2:系统启动过程
1:initramfs内存文件系统
2:调用/etc/init/rcS.conf配置文件
1:先调用/etc/rc.d/rc.sysinit
2:再调用/etc/inittab确定系统默认运行级别
3:调用/etc/rc.d/rc文件
启动管理/启动引导程序grub
1:grub配置文件
2:grub加密与字符界面分辨率调整
启动管理/系统修复模式
1:单用户模式
2:光盘修复模式
3:Linux的安全性
第八部分:日志管理
日志管理简介
1:日志服务
2:rsyslogd的新特点
3:确定服务启动
4:常见日志的作用(lastb,lastlog,last)
5:其他日志
日志-轮替
1:日志文件的命名规则
2:logrotate配置文件
3:把apache日志加入轮替
4:logrotate日志轮替 语法 logrotate [选项] 配置文件名
rsyslogd-日子服务
1:日志文件格式
2:/etc/rsyslog.comf配置文件
第九部分:软件包管理
软件包管理\软件包管理
1:软件包管理简介
1:源码包(源代码安装包,手动安装)
2:二进制包(RPM包,系统默认包)
2:RPM包管理-rpm命令管理
1:RPM包命名规则
2:RPM包依赖性
3:RPM包管理-yum在线管理
1:IP地址配置和网络yum源
2:光盘yum源搭建
4:源码包管理
1:源码包和RPM包区别
2:源码包安装过程
5:脚本安装包与软件包选择
软件包管理/软件包管理命令
1:RPM包管理 rpm命令管理 命令
1:安装 rpm -ivh 包全名
2:升级 rpm -Uvh 包全名
3:卸载 rpm -e 包名
4:查询 rpm -q..
5:校验 rpm -V 已安装的包名
6:文件提取 rpm2cpio 包全名 | cpio -idv .文件绝对路径
2:rpm包管理 yum在线管理 命令
1:查询 yum list
2:安装 yum -y install 包名
3:升级 yum -y update 包名
4:卸载 yum -y remove 包名
5:软件组管理 yum grouplist
第十部分:备份与恢复
备份与恢复/备份的概述
1:Linux系统需要备份的数据
2:安装服务的数据
3:备份策略
1:完全备份
2:增量备份
3:差异备份
备份与恢复/dump和restore命令
1:dump备份数据
2:restore恢复命令
第十一部分:shell
1.使用时间相关的随机数
利用data命令生成输出unixtimestamp(%s)和当前时间的纳秒数据(%N,精确到亿分之一秒。)
前者保证在不同秒数之内输出不重复 后者保证在同一秒内数字不重复 两者组合就可以了
代码如下:
date +%s%N
这个方法不依赖系统 只要时间不停止,就一直可以得到不重复的为随机数
2.系统shell内部变量 $RANDOM
这么没啥好说的 依赖shell
3.通过Linux的随机设备获取 然后算校验和
代码如下:
head -10 /dev/urandom | cksum
注意这里千万不要使用cat去获取 这个是一条没有尽头的路 获取1行和10行没