Linux权限操作

本文内容来自《鸟哥linux私房菜》读后个人做的笔记,该书实为学习linux的很好入门教材

一、文件属性 ls

ls -al列出所有的档案属性

lsList的意思


档案类型

[d] 目录 [-]档案 [|]连结档

[b]装置文件里可供储存的接口设备

[c]装置文件里的串口设备

二、改变文件属性与权限

1chgrp :改变档案所属群组    Change Group

chgrp [-R] 组名 dirname/filename ...

-R表示递归recursive持续变更,连同目录下的所有档案都变更

2chown :改变档案拥有者     Change Owner

chown 用户名 [-R] 账号名称 档案戒目录

chown user.group file 修改用户的时候也修改组

chown user:group file 避免.在用户名上判断失误用:

chown .group file 也可以直接.

3chmod :改变档案的权限, SUID, SGID, SBIT等等的特性      Change Mode

chmod [-R] xyz 档案或目录

(一)使用数字改变权限

x = owner = r + w +x;

y = group = r + w +x;

z = others = r + w +x;

r:4 w:2  x:1

改变范例:

(1)将档案改变为-rwxr-xr--

chmod 754 filename

(2)将档案改变为-rwxr-xr-x

chmod 755 filename

(二)使用符号改变档案权限

U = user G = group O = others A = all

加入 -除去 =设定 (+ -是不会改变其他值得)

r w x

改变范例:

(1)将档案改变为-rwxr-xr--

chmod u=rwx,g=rx,o=r filename

(2)将档案每个人都加入写权限

chmod a+w filename

(3)将档案每个人都去除执行权力

chmod a-x filename

4、拷贝文档 cp 来源档案 目标文件

档案的权限

r:读取此档案的实际内容


w:编辑、新增、修改档案的内容,不含删除档案


x:档案具有被系统执行的权限

目录的权限

r:表示可以查询目录下的文件名数据,就是可以用ls等命令

w:

     建立新的档案与目录

     删除已经存在的档案与目录

     将已存在的档案或目录更名

     搬移该目录内的档案、目录位置

x: 表示用户能否进入该目录成为工作目录(就是进入那个文件夹)

建立目录

mkdir 目录名

建空文档

touch 目录/文件名

删除文件

rm 文件名

切换用户

su - 用户名

当前用户登出

exit



档案种类

?rwxrwxrwx中的?表示类型

 -正规档案

纯文本ASCII

读取文本档案的命令

cat ~./文件名

二进制文件binary

数据格式文件data

读取数据格式文件命令

last

d目录档案

l连结档(L) 类似快捷方式

设备与装置

b存储设备 在/dev/sda

c字符设备 鼠标键盘等  

s数据接口sockets

/var/run中  

数据输送(FIFO,pipe

FIFO first-in-first-out 解决多个程序同事存取一个档案造成的错误问题


Linux档案扩展名:

*.sh 脚本、批处理文件scripts,因为是用shell写的所以叫sh

*.Z,*.tar,*.tar.gz,*.zip,*.tgz,根据如gunzip,tar等压缩软件命名的

*.html,*.php html直接打开 phpclientserver端浏览


Linux对文件名的限制

不能包含下列* ? > < ; & ! [ ] | \ ' " ` ( ) { }

文件名用.开头表示档案为隐藏

- + 通常用来表示选择项也不能用


Linux目录配置依据 -FHS - Filesystem Hierarchy Standard

可分享的shareable 不可分享的unshareable

不变的static /usr 软件放置处 /etc配置文件

/opt 第三方软件放置 /boot开机与核心档

可变动的variable /var/mail使用者邮件信箱 /var/run程序相关

/var/spool/news新闻组 /var/lock程序相关

FHS仅定义三层目录下应该放置什么数据

/(root,根目录):与开机系统有关

/usr(unix software resource):与软件安装/执行有关

/var(variable):与系统运作过程有关

*/bin 放置可以被root和一般账号使用的指令,如:cat,chmod,chown,date,mv,mkdir,cp,bash

/boot 放置开机会使用到的档案,linux核心档案和开机配置文件,如vmlinuz,grub

*/dev 任何装置与接口设备都在这个目录中

*/etc 放置主要的系统配置文件,一般使用者可以查阅只有root可以修改,不建议放可执行文件

比较重要的目录有:

/etc/init.d/ 所有服务的预设启动script都放在这里

/etc/xinetd.d/ super daemon管理的各项服务的配置文件目录

/etc/X11/ 与X Window有关的配置文件都放在这里尤其是其配置文件xorg.conf

/home 默认的家目录,使用者的家目录都会在这个目录下

*/lib 放置开机时会用到的类库和/bin,/sbin下指令会用到的类库,/lib/modules中放 置核心模块驱动

/media 放置可移除的装置,如软盘、光盘、dvd

/mnt 用来暂时挂接的设备

/opt 第三方软件位置

/root 系统管理员root的家目录,root与根目录最好放在同一分区内

*/sbin 包含开机、修复、还原系统所需指令

/srv service缩写,网络服务启动后的数据目录

/tmp 让一般用户正在执行的程序暂时放置档案的地方,不要放重要数据

/lost+found 文件系统发生错误是,会将遗失的片段放到这个目录下,是ext2/ext3 件系统的产物

/proc 放置内存中的数据,如系统核心,线程信息,网络状态等

/sys 主要记录核心相关信息,如硬件装置信息

*的不可与根目录分在不同区


.代表当前目录,也可用./表示

..表示上一层目录,也可用../表示

uname -r查看核心版本号

lsb_release -a查看发行系统版本

Logo

更多推荐