taocat服务器的作用,随笔2_tww

1.描述linux发行版的系统目录名称命名规则以及用途

1.1)Linux系统基础目录的命名规则:

1.遵循FHS(Filesystem Hierarchy Standard)标准

2.严格区分大小写

3.目录也是文件,在同一路径下,两个文件不能同名

4.支持使用除"/"以外的任意字符

5.最长字符不能超过255个字符

1.2)目录架构及用途:

/ 根目录

bin 所有用户可用的基本命令程序文件

sbin 供系统管理使用的工具程序

boot 引导加载器必须用到的各种静态文件:kernel initramfs(initrd) grub等

dev 存储特殊文件或设备文件;设备有两种类型:字符设备(线性设备) 、块设备(随机设备)

etc 系统程序的配置文件,只能为静态

/etc/rc.d 系统启动的配置文件和脚本

/etc/fstab 指定启动时需要自动安装的文件系统列表

/etc/passwd 用户数据库,记录了用户名,用户ID,组ID,家目录和shell等信息

/etc/shadow 用户的真实账号密码的存放文件,通常以加密的形式存在

/etc/group 记录了用户组的各种信息

/etc/inittab init的配置文件

/etc/issue 用户再登录提示符前的输出信息。通常包括系统的一段短说明或欢迎信息,具体内容由系统管理员确定

home 普通用户的家目录的集中位置:一般每个普通用户的家目录默认为此目录下与用户名同名的子目录 /home/USERNAME

root 超级管理员的家目录

lib 为系统启动或根文件系统上的应用程序(/bin, /sbin)提供共享库,以及为内核提供内核模块

libc.so.* 动态链接的C库

ld* 运行时链接器/加载器

modules 用于存储内核模块的目录

lib64 64位系统特有的存放64位共享库的路径

media 便携式设备挂载点 cdrom,floppy等

mnt 其他文件系统的临时挂载点

opt 附加应用程序的安装位置,可选路径

srv 当前主机为服务提供的数据

tmp 为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供所有用户执行写入操作:有特殊权限

usr 全局共享的只读数据路径

/usr/bin 存放应用程序

/usr/sbin 超级用户的一些管理程序

/usr/lib 常用的动态链接库和软件包的配置文件

/usr/include c程序头文件

/usr/share 命令手册页和自带文档等架构特有的文件的存储位置

/usr/local 另一个层级目录,让系统管理员安装本地应用程序,也通常用于安装第三方程序

/usr/X11R6 X-windows程序的安装位置

/usr/src 程序源码文件的存储位置

var 存储常发生变化的数据的目录

/var/cache 引用程序缓存数据目录

/var/lib 应用程序状态信息数据

/var/local 专用于为/usr/local下的应用程序存储可变数据

/var/lock 锁文件

/var/log 日志目录及文件

/var/opt 专用于/opt下的应用程序存储可变数据

/var/run 运行中的进程相关的数据,通常用于存储进程的pid文件

/var/spool 应用程序的数据池

/var/tmp 保存系统两次重启之间产生的临时数据

proc 基于内核的虚拟文件系统,用于为内核及进程存储相关信息:它们多为内核参数;

例如:net.ipv4.ip_forward, 虚拟为net/ipv4/ip_forward 存储于/proc/sys/ 因此其完整路径为:/proc/sys/net/ipv4/ip_forward

sys sysfs虚拟文件系统了一种比proc更为理想的访问内核数据的途径,其主要作用在于管理linux设备提供一种统一模型的接口

2.描述文件的元数据信息有哪些,分别表示什么含义,如何查看,如何修改文件的时间戳信息

文件的数据分为两种:

一种:元数据,既属性数据

一种:就是数据本身

通过stat命令可以查看元数据

[08:17:53 root@CentOS7 ~]#stat /etc/passwd

File: ‘/etc/passwd’

Size: 2381 Blocks: 8 IO Block: 4096 regular file

Device: 802h/2050d Inode: 135236881 Links: 1

Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)

Context: system_u:object_r:passwd_file_t:s0

Access: 2020-06-17 23:20:01.706147776 +0800

Modify: 2020-06-06 08:32:02.435455179 +0800

Change: 2020-06-06 08:32:02.435455179 +0800

Birth: -

参数说明:

File:文件名

Size:文件大小 Blocks:文件占了多少个数据块 IO Block:文件所占数据块的大小

Device:硬件 Inode:节点号 Links:链接

第一个Access:指权限 Uid:属主 Gid:属组

Context:指安全上下文

第二个Access:文件上一次访问时间

Modify:文件上一次修改的时间

Change:文件上一次属性更改的时间

修改文件的时间戳信息使用:touch

touch [option]...file...

选项:

-c 指定的文件路径不存在时不予创建

-a 仅修改atime和ctime

-m 仅修改mtime和ctiem

-t 指定atime和mtime的时间戳,而非现在的时间;[[CC]YY]MMDDhhmm[.ss]

3.总结软链接和硬链接区别,并用实例操作说明

Linux中链接分两种:

1.硬链接(Hard Link)

ln -s source target

2.软连接(符号链接 Symbolic Link)

ln source target

1.1)硬链接

硬链接指通过索引节点(inode)来进行链接。

inode:

磁盘分区并格式化时,分区被划分为两个部分; 即:inode和data block(实际数据存放的位置)

inode是(目录,档案)文件在文件系统中的唯一标识;需要访问文件,必须先找到并读取文件的inode

inode存储了文件的很多参数,其中唯一标识称为:Inumber 其他信息还有:ctime mtime 文件大小 属主 归属的用户组 读写权限 数据所在block号等信息

1.2)硬链接访问文件:

[1]找到目录的inode ;当用户具有访问目录block的权限时,读取block中的内容

[2]在目录的block中存放的是:子目录或文件名及其inode号

当为子目录:继续进行递归循环,直到在block中找到寻找的文件名为止

当为文件名:依据inode号找到文件,从block中读取实际的数据

1.3)硬链接的特点:

1.3.1)不论修改源文件还是硬链接文件,另一个文件中数据都会发生改变

1.3.2)不论删除源文件还是硬链接文件,只要还有一个文件,这个文件都可以被访问

1.3.3)硬链接不会建立新的inode信息,也不会更改inode的总数

1.3.4)硬链接不能跨文件系统(分区)建立,因为在不同的文件系统中,inode号是重新计算的 1.3.5)硬链接不能链接目录,因为如果给目录建立硬链接,那么不仅目录本身需要重新建立,目录下所有子文件,包括子目录中的所有文件都需要建立硬链接,这对当前的linux来讲过于复杂

2.1)软链接

软链接类似于Windows的快捷方式,可以快速链接到目标档案或目录

2.2)软链接的特点

2.2.1)可以链接目录

2.2.2)可以跨分区建立软链接

2.2.3)不论修改源文件,还是修改软链接,另一个文件中的数据都会发生改变

2.2.4)删除软链接文件,源文件不受影响,而删除原文件,链接文件将找不到实际的数据从而显示文件不存在

2.2.5)软链接会新建自己的inode信息和block,只是block中不存储实际文件数据,而存储的是源文件的文件名及inode号

3.1).硬链接与软链接的区别:

最主要的不同在于:硬链接不会建立自己的 inode 索引和 block(数据块),而是直接指向源文件的 inode 信息和 block,所以硬链接和源文件的 inode 号是一致的;而软链接会真正建立自己的 inode 索引和 block,所以软链接和源文件的 inode 号是不一致的,而且在软链接的 block 中,写的不是真正的数据,而仅仅是源文件的文件名及 inode 号

范例1

创建一个硬链接

[22:29:48 root@CentOS7 /data/cs]#touch text.txt

[22:30:04 root@CentOS7 /data/cs]#ln text.txt text1.txt

[22:33:47 root@CentOS7 /data/cs]#ls -li

total 0

69 -rw-r--r--. 2 root root 0 Jun 17 22:30 text1.txt

69 -rw-r--r--. 2 root root 0 Jun 17 22:30 text.txt

查看上述两个文件的详细信息,可以发现这两个文件的 inode 号是一样的(都是69)

分别为源文件和链接文件添加数据后查看结果

[23:32:51 root@CentOS7 /data/cs]#echo 11 >> text.txt

[23:33:08 root@CentOS7 /data/cs]#echo 22 >> text1.txt

[23:34:47 root@CentOS7 /data/cs]#cat text1.txt

11

22

[23:35:28 root@CentOS7 /data/cs]#cat text.txt

11

22

删除源文件后,查看链接文件

[23:35:34 root@CentOS7 /data/cs]#rm -f text.txt

[23:36:25 root@CentOS7 /data/cs]#cat text1.txt

11

22

范例2

创建一个软链接

[23:41:21 root@CentOS7 /data/cs]#touch check.txt

[23:57:52 root@CentOS7 /data/cs]#ln -s /data/cs/check.txt /data/qt/check1.txt

[23:58:34 root@CentOS7 /data/cs]#ll -id /data/cs/check.txt /data/qt/check1.txt

68 -rw-r--r--. 1 root root 0 Jun 17 23:41 /data/cs/check.txt

69 lrwxrwxrwx. 1 root root 18 Jun 17 23:58 /data/qt/check1.txt -> /data/cs/check.txt

软链接和源文件的inode号不一致,软链接通过->明显地标识源文件的位置

上述的显示结果"lrwxrwxrwx."中 "l"就代表软链接文件

注意!注意!注意! 软链接的源文件必须写绝对路径,否则建立的软链接文件就会报错,无法正常使用

[00:16:07 root@CentOS7 /data/cs]#echo 11 >> check.txt

[00:16:58 root@CentOS7 /data/qt]#echo 22 >>check1.txt

[00:16:52 root@CentOS7 /data/cs]#cat check.txt

11

22

[00:17:08 root@CentOS7 /data/qt]#cat check1.txt

11

22

4.linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示

1) apmd 进阶电源管理服务程序

2) apropos 在whatis数据库中查找字符串

3) apt-key 管理APT软件包的密钥

4) apt-sortpkgs 排序软件包索引文件

5) as GUN汇编器

6) auditctl 控制内核的审计系统

7) audit-viewer 查看和总结审计事件的图形工具

8) aureport 生成审计信息报表

9) ausearch 搜索审计记录

10) autoupdate 更新configure.in到较新的Autoconf

11) autrace 跟踪指定进程

12) awk 文本和数据进行处理的编程语言

13) basename 显示文件路径名的基本文件名

14) batch 指定时间执行任务

15) blkid 显示关于可用块设备的信息

16) bunzip2 bz2文件的解压缩程序

17) bzgrep 搜索.bz2压缩包中文件内容

18) bzless 查看bzip2压缩过的文本文件的内容

19) bzmore 查看bzip2压缩过的文本文件的内容

20) chown 改变文件或目录用户和用户组

21) chroot 改变根目录

22) cp 复制文件或目录

23) cpio 复制文件到归档包

24) cupsaccept 接受作业发送到目的地

25) cupsreject 拒绝作业发送到目的地

26) dd 拷贝文件及转换

27) diff 比较文件的差异

28) diff3 比较3个文件的不同之处

29) diffstat 显示统计数字

30) dirname 去除文件名中的非目录部分

31) docker 应用容器引擎

32) dos2unix 将DOS格式的文本文件转换成UNIX格式

33) dpkg-deb Debian包管理器

34) dpkg-divert 将文件安装到转移目录

35) dpkg-preconfigure 软件包安装之前询问问题

36) dpkg-query 在dpkg数据库中查询软件包

37) dpkg-reconfigure 重新配置已安装的软件包

38) dpkg-split 分割软件包

39) dpkg-statoverride 改写所有权和模式

40) dpkg-trigger 软件包触发器

41) dris 显示和清空目录堆栈中的内容

42) e2image 保存ext2/ext3文件元数据

43) e2label 设置文件系统的卷标

44) egrep 在文件内查找指定的字符串

45) emacs 功能强大的文本编辑器

46) ethtool 查询与设置网卡参数

47) expand 转换为空白字符

48) fgrep 为文件搜索文字字符串

49) find2perl 转换找到的命令行为perl代码

50) gcc GUN C/C++编译器

51) gcov 测试代码覆盖率

52) gdb GUN调试器

53) get_module 获取模块信息

54) getopt 解析命令行选项

55) git 版本控制系统

56) gitps 报告程序状况

57) groupmems 管理用户主要组群的成员

58) gzexe 压缩执行文件

59) hexdump 显示文件十六进制格式

60) hping3 测试网络及主机的安全

61) indent 调整代码文件格式

62) inotifywait 异步文件系统监控

63) inotifywatch 收集关于被监视的文件系统的统计数据

64) ipcs 多进程间通信常用的工具

65) iperf 网络性能测试

66) joe 纯文本编辑器

67) kbdconfig 设置键盘类型

68) la 显示当前目录下的所有文件

69) ld GUN连接器

70) ldd 打印程序依赖的共享库

71) lpstat 显示cpus状态信息

72) ls 显示指定工作目录下的内容及属性信息

73) ltrace 跟踪进程调用库函数的情况

74) lynx 终端上的纯文本浏览器

75) man 查看命令帮助信息

76) mc 菜单式文件管理程序

77) mcopy 复制 MSDOS 格式文件到Linux中

78) mdel 删除 MSDOS 格式的档案

79) mdir 显示MS-DOS目录

80) minfo 显示MS-DOS文件系统的各项参数

81) mkdir 创建目录

82) mmove 移动文件或目录

83) mtoolstest 测试并显示mtools的相关设置

84) mysql MySQL服务器的客户端工具

85) mysqladmin MySQL服务器客户端管理工具

86) mysqldump MySQL数据库备份

87) mysqlimport MySQL服务器数据导入

88) newusers 更新和批量创建新用户

89) ngrep 数据包匹配和显示工具

90) nl 添加行号

91) nm 显示二进制目标文件的符号表

92) nmcli 网络管理命令行工具

93) objdump 查看目标文件构成的gcc工具

94) od 输出文件内容

95) patch 修补文件

96) perl 实用报表提取语言

97) pfctl 防火墙配置

98) pr 将文本文件转换成适合打印的格式

99) pwd 显示当前路径

100) readelf 显示elf格式文件的信息

101) readonly 标记shell变量或函数为只读

102) rename 批量改变文件名

103) restore 还原备份

104) rlogin 远端登入

105) rpm2cpio 文件格式转换

106) rpmbuild 创建软件包

107) rpmdb 初始化和重建数据库

108) rpmquery 查询信息

109) rpmsign 签名管理工具

110) rpmverify 验证已安装的RPM软件包的正确性

111) semanage 安全上下文查询与修改

112) setenv 查询或显示环境变量

113) smbclient 存取SMB/CIFS服务器的用户端程序

114) smbd Samba服务器程序

115) source 在当前Shell环境中从指定文件读取和执行命令

116) split 文件分割

117) stat 显示文件状态信息

118) statserial 显示串口状态

119) strings 在对象文件或二进制文件中查找可打印的字符串

120) su 切换用户

121) sudoedit 以另外一个用户文件编辑文件

122) sudoreplay 重播sudo会话日志

123) systool 显示系统中设备的信息

124) tailf 跟踪文件输出

125) tgz 将文件压缩为.tgz格式文件

126) udevadm info 查询udev数据库中的设备信息

127) umask 设定权限掩码

128) uncompress 压缩或解压缩compress文件

129) unlink 删除指定文件

130) unprotoize 删除函数原型

131) unrar 解压提取文件

132) userinfo 更改自己的finger信息

133) userpasswd 允许用户更改密码的图形化工具

134) uucico 文件传输服务程序

135) uucp unix系统之间传输文件

136) uuname 显示全部的UUCP远端主机

137) vimdiff 同时编辑多个文件

138) vipw 编辑某些配置文件

139) visudo 编辑/etc/sudoers文件

140) xlsfonts 显示X服务器字体列表

141) xzcmp 比较xz压缩文件

142) xzdec 解压缩xz文件

143) xzdiff 比较xz压缩文件

144) xzgrep 在xz压缩文件上搜索正则表达式

145) xzless 查看xz压缩文本文件

146) xzmore 查看xz压缩文本文件

147) ytalk 与其他用户交谈

148) zmore 查看压缩文件

149) apk 下载包管理工具

150) arj 创建和管理.arj压缩包

151) autoconf 自动生成配置脚本

152) autoheader 创建C定义的模板文件

153) autoreconf 更新已经生成的配置文件

154) autoscan 生成一个初步的configure.in

155) bzcmp 比较.bz2压缩包中的文件

156) bzdiff 比较两个.bz2压缩包中文件的不同

157) dnsdomainname 打印DNS的域名

158) dumpe2fs 打印快组信息

159) fsview 文件系统浏览器

160) gdbserver 调试远程服务器

161) htdigest 管理用户摘要认证文件

162) info 阅读info格式的文件

163) install 复制文件和设置属性

164) lftpget 下载指定的文件

165) lnewusers 创建用户账号

166) manpath 查看man手册页的查询路径

167) mke2fs 创建文件系统

168) mkfifo 创建FIFO文件

169) mread mtools工具

170) mren 更改文件或目录

171) mshowfat 显示在FAT中的记录

172) nologin 限制用户登录

173) pinfo 基于lynx类型info浏览

174) pssh 批量管理执行

175) pushd 添加目录到目录堆栈顶部

176) readlink 找出符号链接所指向的位置

177) rev 颠倒过来显示文件内容

178) sulogin 单用户登录

179) telinit 更改系统的运行级别

180) xclip 跨窗口复制文字

181) xzcat 查看xz压缩文件的内容

182) zdump 时区输出器

183) zgrep 在压缩文件中按正则表达式来搜索

184) zless 查看zip压缩文件

5.复制etc/profile 至tmp/目录 用查找替换命令删除/tmp/profile 文件中行首的空白字符

当前目录:

[14:31:14 root@CentOS7 /etc]#pwd

/etc

执行复制命令:

[14:30:27 root@CentOS7 /etc]#cp profile ../tmp/

查看tmp目录:

[14:31:21 root@CentOS7 /tmp]#ll

total 452

-rw-r--r--. 1 root root 1819 Jun 18 14:31 profile

#删除/tmp/profile 文件中行首的空白字符

1)[18:43:19 root@CentOS7 /tmp]#cat profile |tr -d ' '

或者

2)[23:13:57 root@CentOS7 /tmp]#vim profile

:%s/^[[:space:]]\+//

或:%s@^[[:space:]]\+@@

6.在vim中设置tab缩进为4个字符

vim .vimrc 输入 set tabstop=4

vim配置文件分为:系统文件和用户配置文件

系统配置文件位于:vim的安装目录(默认路径为/etc/.vimrc)

用户配置文件位于主目录:~/.vimrc 即通过执行vim ~/.vimrc 命令即可对此配置文件进行合理修改。通常情况下,vim用户配置文件需要自己手动创建

注意!注意!注意! vim用户配置文件比系统配置文件的优先级高

vim提供的环境配置参数很多,可以在vim中输入":set all" 来查询

常用参数:

set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936

set termencoding=utf-8

set encoding=utf-8 设置编码格式,encoding 用于缓存的文本,寄存器,vim脚本文件等;

fileencoding 是vim写入文件时采用的编码类型;

termencoding 表示输出到终端时采用的编码类型

set nu

set number nu是number缩写 取消行号:set nonu

set cursorline 突出显示当前行

set mouse=a

set selection=exclusive

set selectmode=mouse,key vim编辑器里默认是不启用鼠标的,通过此设置即可启动鼠标

set autoindent 设置自动缩进,即每行的缩进同上一节相同

set tabstop=4 设置tab键宽度为4个空格

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值