您的位置:首页 > 运维架构 > Linux

linux系统管理学习笔记之八---linux文件与目录的管理及权限

2010-02-08 15:47 1321 查看
linux系统管理学习笔记之八---linux文件与目录的管理及权限

2010-01-05 09:00:49
 标签:权限 管理 文件目录 linx    [推送到技术圈]

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。/article/4129026.html
一、文件目录的管理

(一)目录切换和位置
1、cd: 切换目录命令
cd 回到登录目录
cd .. 回到上一级目录
cd / 回到根目录
cd - 回到上一目录,注意是上一目录,不是上一级目录,就是刚操作过的那个目录,和返回上一页差不多的意思
cd ./ 表示本目录
cd ~ username 到username用户的主目录

2、pwd [-p] //显示当前目录。 -p(大写)显示实际路径,而非链接路径,相对于链接文件,想找到源文件路径,很好用。

(二) 建立和删除文件及目录

3、mkdir [-mp] 目录名 //建立目录。-m:建立目录,并且直接设置目录权限。 -p:建立递归目录,即目录下还有目录。
例: mkdir -m 600 test //建立目录时就设定好权限
mkdir -p zj8s/29t/tk3y //同时建立多级目录

4、touch[-acdmt] file //建立个文件或修改文件时间

5、rmdir [-p] directory //删除空目录,必须是空目录。 -p,删除本级空目录的同时,删除上级空目录
6、rm [-irf] //删除文件或目录。

-i:交互式删除,删除前询问操作。
-r:递归删除,删除时同时删除目录下的所有文件。
-f:强制删除,并且不提示。
想删除一个文件夹,又不想提示: rm -fr khp //会删除khp文件夹下的所有内容。

(三)复制、移动文件或目录

7、cp [-filprsu] 源文件 目标文件 //复制文件

-f:强制复制
-r:递归复制。主要用于复制目录,可以复制目录下的所有文件
-i:交互式复制。会有提示。右目标文件已经存在,覆盖前会提示。
-l:建立硬链接文件,而不是复制文件本身。
-s:建立软链接文件,而 不是复制文件本身。
-u:若目标文件比源文件旧,更新目标文件。
-p:与文件的属性一起复制,而非使用默认属性。

8、mv [-fiu] source destination //移动文件或更改文件名
-f:强制移动,不询问
-i:若目标存在,会询问
-u:源文件较新,会更新目标文件

mv a.txt b.txt c.txt /khp //移动这三个文件到/khp目录
mv a.txt b.txt //更名

9、dd
dd [bs=<字节数>] [cbs=<字节数>] [count=<区块数>] [ibs=<字节数>] [if=<文件>] [obs=<字节数>] [of=<文件>] [convt=<关键字>]

bs:一个区块的字节数,即一个区块的容量。
cbs:每次转换的字节数
ibs:每次读取的字节数
obs:每次输出的字节数
if:输入的文件
of:输出的文件
count:多少个区块

dd if = bootdisk.img of=/dev/fd0 bs=1440k //把目录下的bootdisk.img 文件转换到软盘上,转换最大区块为1.44M

(四)查看目录和文件内容

10、ls [-alihstd] //查看文件和目录
-a:显示所有文件,包括隐葳文件
-l:列兴详细细节,如权限,所有者,组等。
-i:列出inode位置。
-h:按G\M\的格式显示文件的大小
-s:按文件大小排序
-t:按时间排序
-d:列出目录本身,不列出目录内文件数据。
11、cat //显示文件,
12、tac //与cat相反, 从后往前显示
13、nl 文件名 //显示文件的同时,显示行号
14、less //分面器,可分页显示。 可往前翻
15、more //分面器,可分页显示。只能往后翻。
16、head [-n] 文件名 //显示文件的开头几行。 -n:后面接数字,即显示多少行
17、tail [-n] 文件名 //显示文件的最后几行。 -n:后面接数字,即显示多少行

(五)搜索文件与字符
locate 字符串:查找文件名中包含后面字符串的所有文件。

find [path] [optin 选项匹配条件] //从哪个目录中找到与选项及选项条件相匹配的所有文件。 选项有很多种: -name (文件名相匹配) -size(文件大小相匹配)等。例: find /etc -name httpd.conf //从 /etc中查找名字为 httpd.conf 的文件。

grep [项][匹配条件] :某文件或查找出来的内容中包含匹配字符的项。例: grep -n "!" a.txt //从a.txt中找到所有有"!"的行。 find / -name *.html |grep bookmark //从根目录下查找所有 html文件,且文件中含有 bookmark字符串的html 文件。

(六)文件与目录的默认权限与隐藏权限

1、文件与目录的默认权限

(1) umask [-S] //查看文件与目录的默认权限。不加-s时,显示出来的是数字权限066。加-S,显示出来的是字符权限,例: rwx-rw-r
系统默认:建立的文件默认权限为666。而文件夹的是777

(2) umask 023 //更改默认权限,后面跟权限值。这个权限值是指根据默认权限,将要减掉的权限。
例:默认文件权限为666,字符表示为:rw-rw-rw- 。此处为umask值为023,不是指:666-023=643,643表示为:rw-r---wx。
应该是0代表的是拥有者权限,不减;2表示权限w(写),这个2表示的组的权限,所以这里表示组权限减掉写权限;最后一个2,表示其他用户减掉写权限。则为:rw-r--r--。
所以应为减掉了umask后指定的权限,而不是简单的用减法减。

2、隐藏属性
文件有隐藏属性,对文件的安全很有帮助

(1)设置隐藏属性

chattr [+-=] [ASacdistu] 文件或目录

+:增加某个特殊参数,其他原本存在的参数不变
-:减去某个特殊参数,其他原本存在的参数不变
=:即所有参数都改变成后面的特殊参数。原本存在的参数也会改变。

A:增加这个参数,将不能更改文件或目录的访问时间atime
S:同sync功效。将内存中的缓存数据写进磁盘
a:增加此参数后,只能增加数据,不能删除。只有root 能设置此参数。
i:增加此参数后,不能删除、改名、连接,也无法写入或新增数据

(2) lsattr [-aR] 文件或目录 //显示隐藏属性。 -a:连同隐藏文件一起显示。 -R:连同子目录一起显示。

二、文件目录的权限

(一)拥有者、用户组、其他用户

拥有者:一般文件或目录的创建立是这个文件或目录的拥有者。也可以通过设定,更改拥有者。
用户组: 一个用户可以属于多个用户组,一个用户组包含一个或多个用户。
其他用户:不属于一个用户组的用户。

(二)权限

一个文件或目录会有三组权限,分别对应文件或目录的拥有者,与拥有者相同组的其他用户,与拥有者不同组的其他用户。即为ugo

每组权限的顺序为:读\写\执行。用字符表示为:rwx。用数字表示为:421。

例:字符: rwx rw- r-- 用数字表示为: 7 6 4//注意每组权限中间没有空格,我是为了更清晰加了空格。

第一组rwx表示拥有者的权限,表示拥有者拥有读写执行的权限。 第二组表示和拥有者同组的组用户的权限,表示组用户拥有读写的权限。最后一组为与拥有者不同组的其他用户的权限,表示只拥有读的权限。

(三)更改文件权限

chmod 命令

1、符号方式更改
chmod [ugo] [+-=] [rwx] 文件或目录名

ugo:表示拥有者、组用户、其他用户
+:表示增加权限
-:表示减去权限
=:表示取消以前的所拥有的权限,只拥有"="后面设定的权限。

例: chmod g+w test.txt //即组用户增加对文件test.txt的写权限
chmod u+x,g+w,o=r test.txt //即设定拥有者增对文件test.txt的执行权限,增加组用户的写权限,而其他用户只有读的权限。

2、数字更改法:

chmod [-R] XYZ 文件名或目录名

-R:是指对目录下的所有文件都更改权限。
XYZ:是指由421 421 421 三组权限值相加的值。 X表示拥有者权限,Y表示组用户权限,z 表示其他用户权限。
例: chmod -R 754 /tmp/khp //对/tmp/khp目录设定权限为 拥有者有读写执行的权限 4+2+1=7 ,组用户拥有读和执行的权限:4+0+1=5 ,其他用户只拥有读的权限 4+0+0=4
4 2 1分别代表:读、写、执行。

(四)更改文件所有者

一般建立者为即为文件或目录的拥有者,但也可以更改拥有者。也可以更改文件或目录的所属组。

1、chown命令:更改文件或目录的拥有者

chown[-R] 用户名 文件名或目录
chown[-R] 用户名: 用户组名 文件或目录

-R:即目录下的所有子文件夹或文件都继承此处更改的拥有者

例: chown -R khp /tmp/khp //对目录/tmp/khp 更改拥有者为 khp
chown khp:khp test.txt //对文件test.txt更改拥有者和所属属为khp.

2、chgrp 改变文件或目录的所属组

chgrp [-R] 所属组名 文件或目录

例: chgrp -R khp /tmp/khp //对目录/tmp/khp更改所属组为 khp组。 此文件更用户组为khp

本文出自 “网行天下” 博客,请务必保留此出处/article/4129026.html本文出自 51CTO.COM技术博客
[align=center]上一篇 linux系统管理学习笔记之七---linux文件系统的..  下一篇 linux系统管理学习笔记之八---进程与作业的管理
[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐