第四天-文件管理
Linux文件目录
/bin:二进制(binary),在CentOS7上已经与/usr/bin合并
/usr/bin:二进制
/sbin:在CentOS7上已经与/usr/sbin合并
/boot:linux内核及启动文件
/dev:各种设备文件(块设备(分区,硬盘设备,块设备有缓存),字符设备(登陆终端,字符设备无缓存))
/etc:各种配置文件
/home:家目录~
/run:正在运行中的程序生成的文件,pid,sock,管道文件(两进程之间通讯,单向)(CentOS7),CentOS6放在/car/run
/tmp:临时文件
/usr:二层根,
/bar:变化的文件,日志等,网页文件等,ftp文件等,邮件等
lib和lib64目录:库目录
/media:媒体设备,可挂载光盘等
/mnt:也可以挂载U盘等设备
/opt:用户安装的一些软件,目前不太用了
/proc:内存的各种运行信息(进程,内存,CPU等,内存中的文件不占内存空间)
srv:服务器数据,少用了
/sys:硬件相关
使用vmware不关机添加一块硬盘,并触发磁盘扫描
1、不关机先添加一个硬盘设备()此时/dev目录下面没识别出来
2、触发硬盘扫描
[root@centos7 ~]# echo '- - -' > /sys/class/scsi_host/host2/scan
[root@centos7 ~]# echo '- - -' > /sys/class/scsi_host/host1/scan
[root@centos7 ~]# echo '- - -' > /sys/class/scsi_host/host0/scan
-
FAT32分区不区分大小写;xfs,ext4,ext3区分大小写。由文件系统决定
-
文件有两类数据:元数据(metadata,文件属性,时间,权限,大小等),数据(data)
-
文件名长度最长255个字节,包括路径在内文件名称最长4095个字节,NUL和斜杠不能做文件名
-
/etc/DIR_COLORS决定了各种文件显示的颜色
-
31-37 字体颜色 41-47 背景颜色
linux文件类型
- -:普通文件
- d:文件夹
- b:块设备
- c:字符设备
- l:软链接文件
- p:管道文件pipe
- s:套接字文件socket
以十六进制+ASCII码显示文件
[qqq@ubutnu ~]$ cat 1.txt
1
[qqq@ubutnu ~]$ hexdump -C 1.txt
00000000 31 0a |1.|
00000002
[root@centos7 ~]# hexdump --help
hexdump:无效选项 -- -
用法:
hexdump [选项] 文件 ...
选项:
-b 单字节八进制显示
-c 单字节字符显示
-C 规范化 十六进制+ASCII 显示
-d 两字节十进制显示
-o 两字节八进制显示
-x 两字节十六进制显示
-e 格式 用于显示数据的格式字符串
-f 格式文件 包含格式字符串的文件
-n 长度 只解释输入的指定长度个字节
-s 偏移 跳过开头指定长度个字节
-v 显示时不压缩相似的行
-V 显示此帮助并退出
使用dd命令创建一个1MB的文件,并使用hexdump查看文件
[qqq@ubutnu ~]$ sudo dd if=/dev/zero of=/data/zerofile bs=1MB count=1
[sudo] password for qqq:
1+0 records in
1+0 records out
1000000 bytes (1.0 MB, 977 KiB) copied, 0.85987 s, 1.2 MB/s
[qqq@ubutnu ~]$ hexdump -C /data/zerofile
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000f4240
设备文件独有的属性
[qqq@ubutnu ~]$ ll /dev/sd*
brw-rw---- 1 root disk 8, 0 Jul 17 17:47 /dev/sda
brw-rw---- 1 root disk 8, 1 Jul 17 17:47 /dev/sda1
brw-rw---- 1 root disk 8, 2 Jul 17 17:47 /dev/sda2
brw-rw---- 1 root disk 8, 3 Jul 17 17:47 /dev/sda3
brw-rw---- 1 root disk 8, 4 Jul 17 17:47 /dev/sda4
brw-rw---- 1 root disk 8, 5 Jul 17 17:47 /dev/sda5
使用mknod命令创建一个块设备
[qqq@ubutnu ~]$ ll /dev/sda
brw-rw---- 1 root disk 8, 0 Jul 17 17:47 /dev/sda
[qqq@ubutnu ~]$ sudo mknod /data/disk b 8 0
[qqq@ubutnu ~]$ ls -l /data/disk
brw-r--r-- 1 root root 8, 0 Jul 23 09:11 /data/disk
7月22,下午场
-
touch一般用于创建新文件,如果文件存在,会刷新文件的时间戳
touch通过-a -c修改文件时间戳
-
cp -a用于备份,不改变文件的链接属性
-
[qqq@centos7 ~]$ sudo cp -a /etc/issue{,.bak}用于备份 [qqq@centos7 ~]$ ls /etc/issue* /etc/issue /etc/issue.bak /etc/issue.net
-
cp -u 只复制源比目标文件更新的文件或目标不存在的文件
-
[root@centos7 ~]# cp 1.txt 2.txt /data -av cp:是否覆盖"/data/1.txt"? y "1.txt" -> "/data/1.txt" cp:是否覆盖"/data/2.txt"? y "2.txt" -> "/data/2.txt" [root@centos7 ~]# ll /data/{1,2}.txt -rw-r--r--. 1 root root 12 7月 23 09:16 /data/1.txt -rw-r--r--. 1 root root 0 7月 20 20:04 /data/2.txt [root@centos7 ~]# vim 1.txt [root@centos7 ~]# cp 1.txt 2.txt /data -uv cp:是否覆盖"/data/1.txt"? y "1.txt" -> "/data/1.txt" [root@centos7 ~]# ll /data/{1,2}.txt -rw-r--r--. 1 root root 6 7月 23 09:18 /data/1.txt -rw-r--r--. 1 root root 0 7月 20 20:04 /data/2.txt
-
cp -b,若目标文件存在,则备份,仅备份一次,如果要多次备份,使用--backup=numberd
-
rm -rf ./不会删除隐藏文件。删隐藏文件用rm -rf .,包括隐藏目录
-
别名优先级> 内部命令 > hash表>外部命令
-
shred 强制删,覆盖
-
[root@centos7 ~]# echo abc012 > f1 [root@centos7 ~]# hexdump -C f1 00000000 61 62 63 30 31 32 0a |abc012.| 00000007 [root@centos7 ~]# shred -zvn 10 f1 shred: f1:第1 次,共11 次 (random)... shred: f1:第2 次,共11 次 (555555)... shred: f1:第3 次,共11 次 (db6db6)... shred: f1:第4 次,共11 次 (aaaaaa)... shred: f1:第5 次,共11 次 (492492)... shred: f1:第6 次,共11 次 (random)... shred: f1:第7 次,共11 次 (000000)... shred: f1:第8 次,共11 次 (ffffff)... shred: f1:第9 次,共11 次 (222222)... shred: f1:第10 次,共11 次 (random)... shred: f1:第11 次,共11 次 (000000)... [root@centos7 ~]# ll f1 -rw-r--r--. 1 root root 4096 7月 23 09:23 f1 [root@centos7 ~]# hexdump -C f1 00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| * 00001000