linux学习小结

文件权限

登录系统执行“ls -al

内容如下:

 

 [root@chances_test1 lihua]# ls -al
总计 71596
drwx------  9 lihua lihua     4096 06-02 15:43 .
drwxr-xr-x 14 root  root      4096 05-04 15:27 ..
-rw-r--r--  1 lihua lihua    12288 05-31 15:59 .aa.txt.swp
drwxrwxr-x  5 lihua lihua     4096 06-02 16:36 apps
-rw-------  1 lihua lihua    10852 05-31 17:08 .bash_history
-rw-r--r--  1 lihua lihua       33 03-31 11:06 .bash_logout
-rw-r--r--  1 lihua lihua      255 2007-04-11 .bash_profile
-rw-r--r--  1 lihua lihua      124 03-31 11:06 .bashrc
-rw-r--r--  1 lihua lihua      515 03-31 11:06 .emacs
drwxrwxr-x  5 lihua lihua     4096 05-03 09:34 homework
drwxr-xr-x  9 lihua lihua     4096 2010-07-09 jdk1.5.0_11
-rw-r--r--  1 root  root  65972967 04-02 10:53 jdk1.5.0_11.tar.gz
    

 

   权限    连接 所有者 用户组   文件容量  修改日期  文件名

 

第一列的drwxr-xr-x表明文件的类型和权限

[d][rwx][r-x][r-x]

 

      a    b    c

第一个位置若为字母[d],则是目录;  若为[-]则是文件;若为[|]则表示为连接文件(linkfile

r: read 可读      w: write 可写      x: execute 可执行

 

如上所示后边表示权限的部分分为三部分a b c   其顺序不会改变,如果没有某个权限则显示[-]

其中a代表文件所有者的权限(owner)

b代表同用户组的权限(group)

c代表其他非本用户组的权限(others

也可以用数字代表权限:

r4

w2

x1

 

 

改变文件的属性和权限

chgrp  改变文件所属用户组

chown  改变文件所有者

chmod  改变文件的权限

 

执行chgrp时,要被改变的组名必须要在/etc/group文件内存在,否则会显示错误。

执行chown时,用户必须是已经存在于系统中的账户,也就是在/etc/passwd这个文件中有记录的用户名称才能改变。

举例:

root身份登录linux系统,在主文件夹内有个install.log的文件,假设已经知道在/etc/group里面有个名为users的用户组,但testing这个用户组不在/etc/group里面,此时改变用户组为userstesting看有什么区别。

输入命令 chgrp users install.log

        Ls –l

可看到    -rw-r--r--1 root users    (后边省略)

用户组已变为users

但执行  chgrp testing intall.log   则出现错误信息,提示找不到用户组

 

范例:

install.log的所有者改为bin这个账户

输入命令chown bin install.log

 

install.log所有者用户组改回为root

  输入命令 chown root:root install.log

备注:

     所有者与用户组之间用 “:”隔开。如果chown只是单纯的修改用户组,则所有者的位置用“.”来代替。如只将install.log的用户组改为root则命令为   chown .root install.log

 

更改权限的命令chmod语法为:

  Chmod xyz 文件或目录  xyz为权限数值的相加)

举例:如果将.bashrc 这个文件所以的权限都设置弃用,则执行:

Chmod 777 .bashrc

      如果想增加.bashrc这个文件的每个人均可写入的权限,则可执行:

Chmod a+w .bashrc     (其中a代表all)

 

 

绝对路径与相对路径

绝对路径:由根目录(/)开始写起的文件名或目录名称。

相对路径:相对于目前路径的文件名的写法。开头不是不是/就属于相对路径的写法。

.代表当前的目录,也可以使用./来表示

..代表上一层的目录,也可以../来表示

例题:如何先进入/var/spool/mail/目录,再进入到/var/spool/cron/目录中。

     答:cd/var/spool/mail

         cd../cron

 

目录的相关操作

 

.代表此层目录

..代表上一层目录

-代表前一个工作目录

~代表“目前用户身份”所在的主文件夹。如~account  代表account这个用户的主文件夹

常见处理目录的命令:

cd:切换目录

pwd:显示当前目录

mkdir:新建一个新的目录

rmdir:删除一个空的目录

cp:复制

touch:修改文件时间或创建新文件

rm:移除文件或目录

mv:移到文件与目录,或更名

eg: mv filename1 filename2 //filename1 改名为filename2

   mv qib.tgz ../qib.tgz //移到上一级目录

文件默认权限umask

Umask:目前用户在新建文件或目录时候的权限默认值。

默认情况如下:

a.       若用户创建“文件”则默认没有可执行(x)权限,即只有rw这两个选项,最大为666,默认为-rw-rw-rw-

b.       若用户新建目录,默认为所有权限均开放,即为777。默认权限:drwxrwxrwx

 

输入umask则出现 0022      root默认为022 一般用户默认为002

第一个0是代表特殊权限,暂且不用管。

或者输入 umask –S      则出现u=rwx,g=rx,o=rx     

(注意 S为大写)

上述的0022后三位的意思是讲,u没有被拿掉权限,g被拿掉了2这个权限,o也被拿掉了2这个权限

故查看符合类型权限输入 umask –S    会得到  u=rwx,g=rx,o=rx

 

所以当新建文件时,默认为 –rw-rw-rw-  又被拿掉了022w这个权限

故为 –rw-r-r-

同理新建目录时 默认权限drwxrwxrwx 被拿掉022即为drwxr-xr-x

 

若想让新建的文件或目录更改权限则可以 在新建前 输入命令umask xyz  xyz代表数字)

 

文件名的查找

 

Whereis(寻找特定文件)

eg  whereis 文件或文件名

 

请用不同的身份(root、一般)找出ifconfig这个文件名,看看有什么不同,原因何在。

 

Locate

直接在后面输入“文件的部分名称”即可得到结果。

    Locate keyword

Whereis/locate 查找时都是以数据库文件的内容为准,而不是硬盘,故速度比较快,但新建的文件查找不到,因为数据库默认每天更新一次。可以手动更新数据库,直接输入updatedb即可。

  

find

find查找以硬盘为准,速度相当慢一些。举例说明相关用法:

范例一:

查找/home 下面属于yangxh的文件文件

find /home –user yangxh

此命令将属于某个用户的所有文件都可找出来。

 

范例二:

查找系统中不属于任何人的文件

   find / -nouser

比如系统中某个账号已删除,则系统中就会出现nouser的文件。

 

范例三:

找出文件名为passwd的这个文件

  find / -name passwd

 

与时间有关的文件为了不混淆暂时忽略,有兴趣者参考linux鸟哥的基础篇Page190

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值