回顾:
文件在小,也要占用一个Block
如:echo > a1.log
ls a1.log(文件大小为1k)
du a1.log(文件大小也应该为1k,如果不是1k,可能selinux是打开的)
du -s a1.log
文件夹的权限,系统中的文件夹默认权限基本上都为755的权限,ls / -l,root账号的主目录只有drwxr--r--权限
root用户:
mkdir testdir
ls -ld testdir/
drwxr-xr-x 2 root root 4096 Jun 22 06:08 testdir/
chmod 701 testdir
xl用户:
su xl
ls testdir/
cd testdir
ls 就进不去了,没有r权限
文件夹的权限也是r,w,x,-四种,但是跟文件的权限不一样
1.x,代表可以 cd 进去
2.w,代表可以改写,
3.r,代表可以ls
4.rx,代表可以cd和ls
5.wx,代表可以对任何文件强制改写,删除,创建文件 cd , touch, rm ,changer others file,vi(self, others)
6.wxt, cd touch rm(self) vi(self)
root: r权限
chmod o+r testdir
touch testdir/{a,b,c}
xl:
ls /testdir
root:wx权限
chmod o=wx testdir
xl:
vi a
wq! 强制改下保存
root:wxt权限
ls -ld testdir
drwxr----wx 2 root root 4096 Jun 22 06:08 testdir/
chomd o+t testdir
drwxr---wt 2 root root 4096 Jun 22 06:08 testdir/
rm testdir/*
SUID权限,vi = vim, SUID具有root的权限
root:
chmod u-s /usr/bin/vim
xl:
ls -l /bin/vi
ls -l /usr/bin/vim
-rwsr-x-\r-x 1 root root 2044343 Aig 11 200 /usr/bin/vim 具有s权限
chmod u-s /usr/bin/vim
注意:
ls -ld /tmp/ 目录的权限是1777的权限,为drwxrwxrwt
1777的1代表sticky
ls -ld /tmp/testdir/ 权限都是t
service httpd start
ifconfig
ls /var/www/html/
cat /var/www/html/index.html
AAAAAAAAAAAAAAAAAAAAAAAAAAAAa
打开浏览器http://192.168.2.134/,输入自己的IP地址,显示AAAAAAAAAAAAAAAAAAAAAAAAAAAAa
查看进程:ps
ps aux |grep httpd
chmod -R apache.apache /var/www/html 将权限更改了,不应该将权限改为写
umask 权限,umask为掩码,umask决定创建文件夹和文件的权限,系统每次启动都会设置umask的值
root:
mkdir ddd
cd ddd/
touch rootfile
mkdir rootdir
chmod 777 . (chmod 777 ddd)
xl:
cd /tmp/ddd
mkdir xldir
touch xlfile
ls -l
可以看到root和xl创建的文件和文件夹,权限不一样
root的权限为755(文件夹),644(文件)
umask 0022 755+022=777
umask 0022 644+022=777
xl的权限为775(文件夹),664(文件)
umask 0002 775+002 = 777
umask 0002 664+002= 666
文件夹的权限 = 777 - umask 的值
文件的权限 = 666 - umask 的值
如:
umask 222
touch xlfile2 权限为444
umask 666
touch xlfile3 权限为--- 000
umask 777
touch xlfile4 权限为000,不会出现负数,
vi /etc/bashrc 在bashrc中查看umask的脚本
if []; then umask =022.........
可预知性目录的结构
bin 放可执行文件,所有人都可以执行,系统必须的文件
sbin 放可执行文件,只有管理员可以执行,系统必须的文件,如ifconfig
普通用户的echo $PATH 没有/sbin目录,所以用/sbin/ifconfig
usr 用户目录,不是系统本身的目录,可以用来安装其他软件
ls -d /usr/bin /usr/sbin 这两个目录是后来安装软件后生成的两个目录
使用which 查看命令的路径
which vim
which ifconfig
which httpd 无法查到,因为不是二进制的???
ls /sbin/httpd
ls /lib 库文件都是以so结尾的
ls /lib/modules/ 内核模块
ls /boot/vmlinuz-2.6.9-22.EL 的内核模块放在 /bin/modules下
ls /proc/ 都是虚拟文件,都是内存中的值,系统内核镜像文件,相当于内核当中的小窗户,查看值
ls /var/ 变量,放日志,邮件等,如/var/log /var/mail .var/spool/cron/
ls /boot/放两种文件,kernel 和grub
ls /etc/ 配置文件,一般为文本文件
ls /initrd 里面为空,但不能删除,如果删除了,就无法启动系统了,他是一个加载点
ls /lost+found 系统坏了后,碎片或块丢失了,就放在此处
opt 放第三方软件的目录,但oracle,apache等都不会放在下面
mount 查看
proc sys都是虚拟的目录
mysql的库文件放在usr/lib/mysql
mysql的客户端程序放在usr/bin/mysql