1、Linux文件权限
我们先来输入命令:ls -al来查看文件属性。
如图:
属性说明:
dr-xr-xr-x | 22 | root | root | 4096 | Mar 17 18:12 | . |
---|---|---|---|---|---|---|
用户权限 | 连接数 | 所有者 | 用户组 | 文件大小 | 修改日期 | 文件名 |
文件类型与权限如图:
r:表示用户可以查看该目录下的内容,即可以使用“ls”命令
w:表示用户可以修改该目录下的内容,包括增加,删除,重命名等
x:表示用户可以进入该目录,即可以使用“cd”命令
我们不仅可以用 rwx表示文件的权限,还可以同数字表示:
具体如下:
- r: 4
- w: 2
- x: 1
- 每种身份各自的三个权限(r、w、x)分数是需要累加的,例如当权限为[-rwxrwx–],分数则是:
- owner = rwx = 4+2+1 = 7
- group = rwx = 4+2+1 = 7
- others = — = 0+0+0 = 0
- 所以,该文件的权限数字就是770
2、Linux下的重要目录的含义
目录名 | 目录的作用 |
---|---|
/proc | 操作系统运行时,进程信息及内核信息(比如CPU,硬盘分区,内存信息等)存放在这里。/proc目录是伪装的文件系统proc的挂载目录,proc并不是真正的文件系统,它的定义可以参见/etc/fstab。 |
/etc | 二进制安装包的配置文件默认路径和服务启动命令存放的目录。 |
/lib | 库文件存放目录 |
/tmp | 临时文件目录,有时用户运行程序的时候,会产生临时文件。/tmp就用来存放临时文件的,权限比较特殊。 |
/bin | 常用的二进制命令目录。比如ls cp mkdir 等;和/usr/bin类似。 |
/usr | 这个是系统存放程序的目录,比如命令,帮助文件等。这个目录下有很多的文件和目录。当我们安装一个linux发行版官方提供的软件包时,大多安装在这里。 |
/var | 这个目录的内容是经常变动的,看名字就知道,我们可以理解为vary的缩写,/var下有/var/log这是用来存放系统日志的目录,系统日志路径/var/log/messages。/var/www目录是定义apache服务器站点存放目录;/var/lib用来存放一些库文件,比如mysql的,已经mysql数据库的存放地。 |
/usr/local | 这个目录一般是用来存放用户自编译安装软件的存放目录,一般是通过源码包安装的软件,如果没有特别指定安装目录的话,一般是安装在这个目录中。相当于C:\Program files |
/usr/src | 内核源码存放目录,比如下面有内核源码目录,比如linux,linux-2.XXX.XX目录等 |
/usr/lib 和/usr/local/lib | 系统会使用到的函数库。 |
/SElinux | SELinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。 |
/sys | 虚拟文件系统。和 /proc 目录相似,里面的数据也是保存在内存中的,它主要用来保存内核的相关信息 |
3、Linux一些重要的命令
- du -报告磁盘空间使用情况
- -s : 列出总量而已,而不列出每个别的目录占用容量;
- -a : 列出所有文件与目录容量,,因为默认仅统计目录下面的文件量而已;
- df -报告文件系统磁盘空间的使用情况
- -h : 用常见的格式显示出大小(例如:1K 234M 2G)
- -i : 用信息索引点代替块表示使用状况
- top -可以显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等
- -i : <时间> 设置间隔时间
- -u : <用户名> 指定用户名
- -p : <进程号> 指定进程
- -b : 批处理
- -s : 保密模式
- free -命令显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存
- -b : 显示内存的单位为字节
- -k : 显示内存的单位为 KB
- -m : 显示内存的单位为 M
- -t : 总和信息
- su -运行替换用户和组标识的shell
- -c : 传递单个COMMAND给-c的shell.
- -f : 传递-f给shell(针对csh或tcsh)
- -m : 不重置环境变量
- sudo -用户也可以通过su切换到root用户运行命令。然而与su的启动一个root shell允许用户运行之后的所有的命令不同,sudo可以针对单个命令授予临时权限。sudo仅在需要时授予用户权限,减少了用户因为错误执行命令损坏系统的可能性。sudo也可以用来以其他用户身份执行命令。此外,sudo可以记录用户执行的命令,以及失败的特权获取。
- -s : 以目标用户身份运行 shell
- – : 停止处理命令行参数
- adduser -帐号建立或更新使用者的资讯
- password -用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理者则能用它管理系统用户的密码。只有管理者可以指定用户名称,一般用户只能变更自己的密码。
- -d:删除密码,仅有系统管理者才能使用;
- -k:设置只有在密码过期失效后,方能更新;
- -l:锁住密码;
- -s:列出密码的相关信息,仅有系统管理者才能使用;
- -u:解开已上锁的帐号
pstack - 显示每个进程的栈跟踪。pstack 命令必须由相应进程的属主或 root 运行。可以使用 pstack 来确定进程挂起的位置。此命令允许使用的唯一选项是要检查的进程的 PID。
- work为工作用户,-p为显示进程识别码,ad_preprocess共启动了6个子线程,加上主线程共7个线程。
pstree -p work | grep ad
sshd(22669)---bash(22670)---ad_preprocess(4551)-+-{ad_preprocess}(4552)
|-{ad_preprocess}(4553)
|-{ad_preprocess}(4554)
|-{ad_preprocess}(4555)
|-{ad_preprocess}(4556)
`-{ad_preprocess}(4557)