美文网首页
day3-文件管理

day3-文件管理

作者: 恩楠 | 来源:发表于2019-07-26 17:51 被阅读0次

1. Linux系统的目录结构

在Linux中一切皆文件,这些文件按照一定的规则存放在不同的目录当中。为了能够快速找到文件及以后的操作的规范性,我们必须记清楚Linux的目录结构。


CentOS 7 目录结构

Windows:以多跟的方式组织文件 C:\ D:\ E:
Linux:以单跟的方式组织文件 /

1.1 存放命令相关的目录

/bin:普通用户使用的命令。例如:/bin/ls; /bin/date
/sbin:超级管理元使用的命令。例如/sbin/service;/sbin/useradd

[test1@node2 ~]$ useradd jack
-bash: /usr/sbin/useradd: Permission denied
# 普通用户无法使用useradd的命令

1.2存放用户相关的家目录

/home:存放普通用户的家目录。
/root:超级管理员root的家目录,普通用户无操作权限。

每个用户的家目录文件存在着差异,就像Windows一样,不同的用户登陆系统显示的桌面环境是不一样的。

1.3 系统文件目录

/usr:相当于C:\Windows。
/usr/local:软件安装的目录,相当于C:\Program File。
/usr/bin:普通用户使用的应用程序(重要)。
/usr/sbin:超级管理员使用的应用程序(重要)
/usr/lib:库文件Glibc 32bit。若删除可能导致命令不可用。
/usr/lib64:库文件Glibc 64bit。若删除可能导致命令不可用。

1.4 启动目录

/boot:存放的系统启动相关的文件,例如kernel,grub(引导装载程序)等。

[root@node2 ~]# ll /boot | grep vm
-rwxr-xr-x. 1 root root  6639904 Jul 24 23:38 vmlinuz-0-rescue-cc09b6cf7038418bae14d61df6427b48
-rwxr-xr-x. 1 root root  6639904 Nov  9  2018 vmlinuz-3.10.0-957.el7.x86_64
开机引导页面

上图说明/boot目录下有关于开机应道相关的文件。

1.5 配置文件

/etc:配置文件目录。极其重要,后续所有服务的配置文件都在这个目录中。
/etc/sysconfig/network-scripts/ifcfg- :网络配置文件。
/etc/hostname:更改主机名。
/etc/resolv.conf:更改DNS,优先级小于网络配置文件中的DNS。具体格式如下:

[root@node2 ~]# vim /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 10.0.0.254
nameserver 114.114.114.114

/etc/hosts:本地域名解析文件。

[root@node2 ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.201  www.node.com

测试解析结果

[root@node2 ~]# ping www.node.com
PING www.node.com (10.0.0.201) 56(84) bytes of data.
64 bytes from www.node.com (10.0.0.201): icmp_seq=1 ttl=64 time=0.046 ms
64 bytes from www.node.com (10.0.0.201): icmp_seq=2 ttl=64 time=0.050 ms

1.6 可变项目与临时目录

/var:存放一些可变的文件。例如日志文件,即/var/log/下的文件。
查看登陆到服务器的用户:

[root@node2 log]# cat /var/log/secure
Jul 26 14:55:48 node2 sshd[7342]: Address 10.0.0.1 maps to bogon, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
Jul 26 14:55:48 node2 sshd[7342]: Accepted password for root from 10.0.0.1 port 60772 ssh2
# 从10.0.0.1就受了一个root的密码。端口为60772
Jul 26 14:55:49 node2 sshd[7342]: pam_unix(sshd:session): session opened for user root by (uid=0)
# 为root用户打开了会话。
Jul 26 14:56:41 node2 sshd[7371]: Address 10.0.0.1 maps to bogon, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
Jul 26 14:56:45 node2 sshd[7371]: Accepted password for test2 from 10.0.0.1 port 60784 ssh2
# 从10.0.0.1接受了test2的密码。对口好为60784
Jul 26 14:56:45 node2 sshd[7371]: pam_unix(sshd:session): session opened for user test2 by (uid=0)
# 为test2用户打开了一个会话。

/var/tmp:进程产生的临时文件。
/tmp:系统历史目录(类似与公共厕所)

1.7 设备目录文件

/dev:存放设备文件。比如硬盘、分区、光驱、会话终端等。
/dev/sd :硬盘分区及硬盘分区。例如sda sdb sdc4等。

[root@node2 log]# ll /dev/sd*
brw-rw----. 1 root disk 8, 0 Jul 26 14:06 /dev/sda
brw-rw----. 1 root disk 8, 1 Jul 26 14:06 /dev/sda1
brw-rw----. 1 root disk 8, 2 Jul 26 14:06 /dev/sda2
brw-rw----. 1 root disk 8, 3 Jul 26 14:06 /dev/sda3

/dev/null:黑洞设备,只进不出。
/dev/zero:源源不断的产生数据。

[root@node2 ~]# dd if=/dev/zero of=/opt/test.txt bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 19.7035 s, 54.5 MB/s
[root@node2 ~]# ll -h /opt/test.txt 
-rw-r--r--. 1 root root 1.0G Jul 26 15:30 /opt/test.txt

/dev/random:生产随机数的设备。

[root@node2 ~]# echo $RANDOM
29939
[root@node2 ~]# echo $RANDOM
26472
[root@node2 ~]# echo $RANDOM
22698

1.8 虚拟的文件系统

/proc:反应当前系统正在运行的进程实时状态。
例:

[root@node2 ~]# ps aux | grep httpd
# 查看httpd相关的服务进程
root       7268  0.0  0.5 230408  5228 ?        Ss   14:48   0:00 /usr/sbinhttpd -DFOREGROUND
apache     7272  0.0  0.3 230408  3028 ?        S    14:49   0:00 /usr/sbinhttpd -DFOREGROUND
apache     7273  0.0  0.3 230408  3028 ?        S    14:49   0:00 /usr/sbinhttpd -DFOREGROUND
apache     7274  0.0  0.3 230408  3028 ?        S    14:49   0:00 /usr/sbinhttpd -DFOREGROUND
apache     7275  0.0  0.3 230408  3028 ?        S    14:49   0:00 /usr/sbinhttpd -DFOREGROUND
apache     7276  0.0  0.3 230408  3028 ?        S    14:49   0:00 /usr/sbinhttpd -DFOREGROUND
root       7547  0.0  0.0 112708   976 pts/2    R+   15:42   0:00 grep --color=auto httpd
[root@node2 ~]# ls /proc/7268
# 在/proc中可以查看到这个进程号所对应的文件
attr             cwd       map_files   oom_adj        schedstat  task
autogroup        environ   maps        oom_score      sessionid  timers
auxv             exe       mem         oom_score_adj  setgroups  uid_map
cgroup           fd        mountinfo   pagemap        smaps      wchan
clear_refs       fdinfo    mounts      patch_state    stack
cmdline          gid_map   mountstats  personality    stat
comm             io        net         projid_map     statm
coredump_filter  limits    ns          root           status
cpuset           loginuid  numa_maps   sched          syscall
[root@node2 ~]# systemctl stop httpd
# 停止httpd这个服务
[root@node2 ~]# ls /proc/7268
# 查看不到这个进程所对应的文件
ls: cannot access /proc/7268: No such file or directory

1.9 软连接形式目录

在CentOS7中/bin,/sbin,/lib,/lib64都是以软链接的形式连接到/usr目录下。

[root@node2 ~]# ll / | grep lr
lrwxrwxrwx.   1 root root    7 Jul 24 23:31 bin -> usr/bin
lrwxrwxrwx.   1 root root    7 Jul 24 23:31 lib -> usr/lib
lrwxrwxrwx.   1 root root    9 Jul 24 23:31 lib64 -> usr/lib64
lrwxrwxrwx.   1 root root    8 Jul 24 23:31 sbin -> usr/sbin

/media:提供设备的挂载点。
/mnt:提供设备的挂载点。
/opt:第三方工具默认的安装目录。比如oracle数据库。
/run:进程运行的pid。

[root@node2 ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 is write-protected, mounting read-only

2.文件定义

比如: /etc/hostname,整个文件中包含文件名称以及文件所在的位置,我们将这个叫做路径,也就是说我们是通过路径对文件进行定位。
绝对路径:只要是以/开始的命令都算绝对路径。例如:

[root@node2 ~]# ls /etc/sysconfig/network-scripts/ifcfg-ens32

相对路径:相对于当前目录的路径。例如:

[root@node2 sysconfig]# cat network-scripts/ifcfg-ens32 

cd常用参数及说明
cd: 切换目录,例: cd /etc
cd - : 切换回上一次所在的目录
cd ~ : 切换回当前用户的家目录,注意:root和普通用户是否有所不同。
cd . : 代表当前目录,一般在拷贝、移动等情况下使用 cp /etc/hostname ./
cd .. : 切换回当前目录的上级目录

例:

[root@node2 ~]# cd /etc/sysconfig/network-scripts/
# 绝对路径,进入/etc/sysconfig/network-scripts/目录
[root@node2 network-scripts]# cd 
# 回到家目录
[root@node2 ~]# cd -
/etc/sysconfig/network-scripts
#回到上次所在的目录
[root@node2 network-scripts]# cd ~
[root@node2 ~]# cd .
# 到当前目录
[root@node2 ~]# cd ..
# 回到上级目录
[root@node2 /]# 

3. 文件操作

文件操作主要包括文件的创建、复制、移动、删除等
mkdir常用参数及说明

选项 解释
-p 递归创建目录

创建一个名称为haha目录

[root@node2 ~]# mkdir haha

同时创建多个目录

[root@node2 ~]# mkdir hehe xixi lala

创建dir-1到dir-50的目录

[root@node2 ~]# mkdir dir-{1..50}

利用{ }灵活创建目录

[root@node2 ~]# mkdir -p /opt/{bin,logs,conf}/test 
[root@node2 ~]# tree /opt
/opt
├── bin
│   └── test
├── conf
│   └── test
└── logs
    └── test

touch命令
创建一个名为test.txt的文件

[root@node2 ~]# touch test.txt

mv命令
把test.txt移动到dir-1目录中

[root@node2 ~]# mv test.txt dir-1/

把dir-1中的test.txt移动到dir-2目录下,并重命名为test2.txt

[root@node2 ~]# mv dir-1/test.txt dir-2/test2.txt

把test2.txt重命名为test3.txt

[root@node2 dir-2]# mv test2.txt test3.txt

把dir-1、dir-2 和 dir-3 移动到 dir-4 中

[root@node2 ~]# mv dir-1 dir-2 dir-3 dir-4
[root@node2 ~]# ll dir-4
total 0
drwxr-xr-x. 2 root root  6 Jul 26 17:03 dir-1
drwxr-xr-x. 2 root root 23 Jul 26 17:08 dir-2
drwxr-xr-x. 2 root root  6 Jul 26 16:54 dir-3

rm常用参数及说明

选项 解释
-f 强制删除,没有提示
-r 递归删除,删除目录时必须加r

强制删除test3.txt

[root@node2 dir-2]# rm -f test3.txt 

删除目录

[root@node2 dir-4]# rm  dir-1
rm: cannot remove ‘dir-1’: Is a directory
# 不加-r选项,删除失败
[root@node2 dir-4]# rm -r  dir-1
rm: remove directory ‘dir-1’? y

删除所有以 dir-开头的目录

[root@node2 ~]# rm -rf dir-*

相关文章

  • day3-文件管理

    1. Linux系统的目录结构 在Linux中一切皆文件,这些文件按照一定的规则存放在不同的目录当中。为了能够快速...

  • Day3-文件管理

    文件管理 ​ 文件或目录 创建 复制 移动 删除 编辑 查找 等... 1.Linux系统的目录结构 2.文件定...

  • day3-文件管理及目录结构

    Contos7的目录结构 bin目录 -- 普通用户能执行的命令 比如 ls 命令 boot目录 -- 系统启动时...

  • NSFileManager 文件管理

    文件管理 - 创建 文件管理 -- 添加 文件管理 --- 删除 文件管理 --- 复制

  • 时间管理能力--单点突破法

    【今日小作业】主题格式:Day3-艺霖【时间管理能力—单点突破法】 1、谈一谈学习了单点突破法后,你在日常的应用如...

  • React Learning(Day3-)React项目实战简书

    React Learning(Day3-)(2019.7.7--2019.7.13) 日常挤牙膏 React项目实...

  • Day3-牛文华【时间管理能力—单点突破法】

    Day3-艾宏【时间管理能力—单点突破法】 【单点突破法】是指在一个点上持续而深入达成目标的过程,它结合了做事前的...

  • 01-必备计算机知识

    一、文件管理 文件分类 良好的文件分类管理,方便于查找和管理文件。 文件命名 文件后缀文件按照不同的格式和用途分很...

  • 01-必备计算机知识

    一、文件管理 文件分类 良好的文件分类管理,方便于查找和管理文件。 文件命名 文件后缀文件按照不同的格式和用途分很...

  • 操作系统(4) -- 文件管理、IO管理

    内容大纲 1、文件管理; 2、文件系统管理 3、输入/输出管理 4、缓冲区 1 文件管理 文件 文件是指记录在外存...

网友评论

      本文标题:day3-文件管理

      本文链接:https://www.haomeiwen.com/subject/fnilrctx.html