首页 > 其他 > 详细

01-目录结构

时间:2017-02-15 00:12:27      阅读:311      评论:0      收藏:0      [点我收藏+]

第1章 磁盘名称

sata/sas/scsi 这类硬盘在linux里面的第一块硬盘为sda 第二块为sdb.......第三块为sdc

(分区则为sda1 sda2 sda3.....)

ide硬盘 第一块为hda 第二块为hdb 第三块为hdc

磁盘==> 分区==>格式化==>写和文件系统

1.1 挂

linux下面的设备不挂载是无法使用的,挂载点实质就是目录,你想把这个设备放在哪个目录使用。

1.2 开机自动挂载

UUID=62e22bd7-c4af-4e11-acf4-6c5200abd0b8 / ext4 defaults 1 1

UUID=95c77d7b-ef14-493a-b7f0-dc61a92e797e /boot ext4 defaults 1 2

UUID=b2afa236-b89a-4a85-8121-5e15829c47c2 swap swap defaults 0

以上显示系统开机自动挂载的设备

第2章 linux目录的特点

linux每个目录可以挂载在不同的设备(磁盘)上。windows不容易做到。

不同的目录可以分布在不同的硬盘分区以及不同的硬盘设备上

linux下面设备不挂载是看不到入口的,没有窗口没门的监狱,如果要设备被访问就必须有一个入口,这个入口就是挂载点,挂载点实质就是目录。

www.pathname.com/fhs/

FHS定义了两层规范:

第一层是“/” 目录下的各个目录应该放什么文件数据,例如:/etc/目录下放置系统的配置文件,例如:/etc/exports, /etc/hosts, 而/bin和/sbin放置程序及系统命令。

第二层是针对/usr(unix software resource|Secondary hierarchy)和/var(Variable data)这两个目录的子目录来定义。例如:/var/log下放置系统日志文件等。

提示:/var分区单独分出来,硬盘足够大。我们都有监控,剩余20%报警。

第3章 各目录存放内容

第4章 /dev

/dev是设备文件的目录,比如声卡、磁盘、光驱。。。。

/dev/null 这个目录类似黑洞,清空文件的方法:cat /dev/null > test.txt

null ====>空

第5章 /etc

5.1 /etc/sysconfig/network-scripst/ifcfg-eth0

配置IP地址: vim /etc/sysconfig/network-scripst/ifcfg-eth0

重启所有网卡: /etc/init.d/network restart

重启eth0: ifdown eth0 && ifup eth0 注:用远程连接工具时不可分开执行,会造成无法连接

查看DNS配置文件: /etc/resolv.conf 优先级低于/etc/sysconfig/network-scripst/ifcfg-eth0

用setup修改DNS实际修改的文件是/etc/resolv.conf

常见名称

DEVICE 物理设备名。

IPADDR IP地址。

NETMASK 指网络掩码

GATEWAY 网关地址

ONBOOT 等于yes为引导时激活设备,no引导时不激活设备

USERCTL yes(非root用户能控制该设备)或no

BOOTPROTO none-引导时不使用协议;static-静态分配地址;bootp-使用BOOTP协议,dhcp-使用DHCP协议

阿里DNS
223.5.5.5
223.6.6.6
114DNS
114.114.114.114
114.114.115.115

5.2 /etc/hosts

IP与名字或域名的对应关系,设置主机名可以反映出这台机器的用途

1、开发,产品,测试等人员,用于通过正式的域名测试产品。

2、服务器之间的调用可以用域名(内部DNS),方便迁移

5.3 /etc/sysconfig/network

修改机器名及网卡启动网关等

/etc/sysconfig/network

sed -i ‘s#oldgirl#oldgirl34#g‘ /etc/sysconfig/network

hostname oldgirl34

5.4 /etc/fstab

实现开机自动挂载的文件系统列表,一旦配置出错,会导致服务器无法启动

5.5 /etc/rc.local

用于存放开机自启动程序命令的文件(chkconfig常用来管理yum/rpm安装程序的服务的开机自启动/etc/init.d).一般用于放入自己开发的程序,文件中放着开机需要启动的命令或脚本

5.6 /etc/inittab

设定系统启动运行级别,加载相关的级别对应启动文件设置。

一般默认为3

cat /etc/inittab

# inittab is only used by upstart for the default runlevel.

#

# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.

#

# System initialization is started by /etc/init/rcS.conf

#

# Individual runlevels are started by /etc/init/rc.conf

#

# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf

#

# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,

# with configuration in /etc/sysconfig/init.

#

# For information on how to write upstart event handlers, or how

# upstart works, see init(5), init(8), and initctl(8).

#

# Default runlevel. The runlevels used are:

# 0 - halt (Do NOT set initdefault to this)

# 1 - Single user mode

# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)

# 3 - Full multiuser mode

# 4 - unused

# 5 - X11

# 6 - reboot (Do NOT set initdefault to this)

# 

id:3:initdefault:

5.7 /etc/init.d

放置默认启动程序或脚本的目录 存放一些服务/软件的管理命令

如重启所有网卡可执行 /etc/init.d/network restart

/etc/init.d(软链接)===>/etc/rc.d/init.d

[root@oldboy34 etc]# ll -idh /etc/init.d /etc/rc.d/init.d
129874 lrwxrwxrwx. 1 root root 11 Dec 23 15:36 /etc/init.d -> rc.d/init.d
129875 drwxr-xr-x. 2 root root 4.0K Dec 23 15:38 /etc/rc.d/init.d

5.8 /etc/profile

可定义别名及PATH环境变量

5.9 DNS相关/etc/resolv.conf

DNS可以在/etc/sysconfig/network-scripts/ifcfg-eth0里面设置

也可以在/etc/resolv.conf里设置

网卡里的设置DNS优先于/etc/resolv.conf,如果重启网络服务会覆盖/etc/resolv.conf的DNS设置

5.10 /etc/bashrc

放置别名,函数

5.11 /etc/profile.d

加载系统登录程序的一个目录,命令或文件独立存在!

5.12 /etc/issue

记录用户登录前显示的系统版本等信息,出于系统安全考虑,通常把此文件内容清空。

[root@昌平吴彦祖 ~]# cat /etc/issue.net

CentOS release 6.8 (Final)

Kernel \r on an \m

[root@昌平吴彦祖 ~]# cat /etc/issue #已经清空过了。。。

5.13 /etc/motd

放入系统登录后一提示信息。

可放一些佛祖保佑,永不宕机之类的。。。

5.14 /etc/proc

存放内核与进程信息的虚拟的目录

cat /proc/meminfo   #<==内存信息
cat /proc/cpuinfo    #<==cpu信息
cat /proc/mounts    #<==挂载信息
cat /proc/loadavg    #<==系统负载信息(系统的繁忙程度)

5.15 其它常用

第6章 系统其它目录

第7章 /var

7.1 /var/log/messages

各种系统日志存放地,系统会按周自动将其切割成小文件。

7.2 /var/log/secure

记录登入系统存取信息的文件,按周自动切割,若rsyglog服务未开启,则此日志功能不能正常记录

7.3 /var/spool/cron/

系统定时任务crontab默认路径,文件名按用户名命名

7.4 /var/spool/clientmqueue

sendmail临时邮件文件目录,有很多原因会导致这个目录碎文件很多,如定时任务不加>/dev/null等。碎文件太多会导致inode数量被耗尽,无法写入文件 。C64不会装sendmail,所以不会有这个问题。

7.5 /var/log/dmesg 查看系统开机启动过程。

第8章 /proc

第9章 sys目录

http://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/

有关目录的一些

咱们往期学生的有关目录结构的总结:
http://yangrong.blog.51cto.com/6945369/1288072

第10章 重要目录小结

/etc/sysconfig/network-scripts/ifcfg-eth0 第一块网卡配置文件

/etc/resolv.conf DNS配置文件,优先级低于网卡配置文件

/etc/hosts ip与域名(主机名的对应关系)解析表

/etc/sysconfig/network 主要修改主机名用

/etc/fstab 开机自动挂载列表

/etc/rc.local 开机自启动文件,放置自启动命令,脚本

/etc/inittab 系统运行级别配置文件

/etc/init.d 服务启动命令的目录

/etc/profile 全局环境变量,也可放别名,一般把别名也放入

/etc/bashrc 别名

/usr/local 源码编译软件的默认位置

/var/log/message

/var/log/secure

/var/spool/cron/root root用户定时任务配置文件

/proc/loadavg 负载信息,繁忙程度

/proc/mounts 挂载信息

第11章 PATH环境变量

11.1 linux下面执行一个命令的简单过程

1. 找命令在哪里

2. 去PATH里面找

3. PATH ,环境变量,存放命令的路径

4. 找到了就执行

5. 找不到提示

第12章 find命令面试题

面试题:删除一个目录下的所有文件,但保留一个指定文件

解答:

假设这个目录是/xx/,里面有file1,file2,file3..file10  十个文件

[root@oldboy xx]# touch file{1..10}

[root@oldboy xx]# ls

file1  file10  file2  file3  file4  file5  file6  file7  file8  file9

方法一:find

[root@oldboy xx]# ls

file1  file10  file2  file3  file4  file5  file6  file7  file8  file9

[root@oldboy xx]# find /xx -type f ! -name "file10"|xargs rm -f 

[root@oldboy xx]# ls

file10

[root@oldboy xx]# find /xx -type f ! -name "file10" -exec rm -f {} \;     

[root@oldboy xx]# ls

file10

这两种一个通过xargs传参,一个通过find的-exec执行命令参数来完成,都算作find吧

#感谢两位热心师兄还有老男孩老师的热心解答 C组副组长--张耀 北京-吴晓宇

老男孩老师点评:此法最佳!必会方法!

方法二:rsync

[root@oldboy xx]# ls

file1  file10  file2  file3  file4  file5  file6  file7  file8  file9

[root@oldboy xx]# rsync -az --delete --exclude "file10" /null/ /xx/

[root@oldboy xx]# ls

file10

老男孩老师点评:此法为锦上添花,加分项!

方法三:开启bash的extglob功能(此功能的作用就是用rm !(*jpg)这样的方式来删除不包括号内文件的文件)

[root@oldboy xx]# shopt -s extglob

[root@oldboy xx]# ls

file1  file10  file2  file3  file4  file5  file6  file7  file8  file9

[root@oldboy xx]# rm -f !(file10)

[root@oldboy xx]# ls

file10

第三种方法同样感谢热心的师兄 北京-张重生Net

老男孩老师点评:此法没啥用,讲出来反而会让人觉得你水平不行,一看就是搜索出来的,但是作为知识研习是可以的!此法面试答出来有可能是减分项!

再补充两种方法(20150802 来自老男孩教育25期课堂)

方法四:

find ./ -type f|grep -v "\boldboy1\b"|xargs rm -f

方法五:

rm -f `ls|grep -v "\boldboy1\b"`

从运维角度,任何删除性的操作都应该事先备份后在执行或者确认有备份存在。

01-目录结构

原文:http://www.cnblogs.com/Csir/p/6399417.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!