Linux文件系统
核心
1.Linux一切皆文件
2.只有一个顶级目录,不像windows分C盘、D盘、E盘
 所有用户可用的基本命令存放的位置(例如cd、ls常用命令)
/boot linux系统启动的时候需要加载和使用的文件
/dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。
/etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录,存放系统或者安装的程序的配置文件,注册服务等
/home 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。如普通用户 woniu 登陆,路径是/home/woniu。
/root 该目录为系统管理员,也称作超级权限者的用户主目录。
/run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run
/sbin 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,存的需要管理员权限才能使用的命令
/tmp:是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
/usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录,很多系统软件的默认安装路径
/var 是 variable(变量) 的缩写,系统和程序运行产生的日志文件和缓存文件放在这里
/opt:是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/proc:是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
/usr/bin:系统用户使用的应用程序。
/usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
linux 常用命令
vi有三种模式,一般模式,命令行模式和编辑模式。命令行模式和编辑模式不能相互切换,必须用过一般模式。
vi 文件名 进入 一般模式
i 进入编辑模式
: 进入编辑 编辑
进入编辑模式命令
命令模式 命令
: /abc #查找abc
: / abc #查找abc单词(注意前后的空格)
😒/vivian/sky/ #替换当前行第一个 vivian 为 sky
😒/vivian/sky/g #替换当前行所有 vivian 为 sky
:n,KaTeX parse error: Expected 'EOF', got '#' at position 19: …ivian/sky/ #̲替换第 n 行开始到最后一行中…s/vivian/sky/g #替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
:%s/vivian/sky/ #(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g #(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky
linux 常用命令
shutdown 默认一分钟后关机
systemctl 服务名 status
systemctl stop firewalld 关闭防火墙
pwd //显示当前工作目录
2) mkdir mydir //创建工作目录
3) cd mydir //更改工作目录
4) rmdir mydir //删除工作目录
5) touch myfile //创建文件
6) mv myfile mydir //移动目录或文件
7) cp myfile myfir //复制目录或文件
8) rm -rf mydir //删除目录或文件
9) ls -l myfile //查看文件最后被编辑时间
10) ls -lu myfile //查看文件最后被访问时间
11) touch -at 01011212 myfile //修改文件最后被访问时间
12) ls //列出所有文件和目录
13) ls -a //查看所有文件
14) ls -i //显示文件索引节点号
15) ls -l //详细显示
16) ls -m //以逗号分隔
tree -a //所有
20) tree -i //不以阶梯状
21) tree -s //列出文件或目录大小
22) tree -t //按更改时间
23) file -b myfile //显示目录或文件的详细信息
24) stat myfile //同上
cat -n 文件名 查看文件名
cat > 文件名 查看并编辑文件
less 文件名//分页自由显示文件(Page Down / Page Up)
ll >> 文件名。把ll 查询的内容 追加到文件上
ll > 文件名。把ll查询的内容 覆盖此文件
echo “hello word” >>文件名 把hello word追加到文件上
head 文件名。 文件的前十行内容
head -n 5 文件名 文件的前5行内容
tail 文件名。 文件的后十行内容
tail -n 5 文件名 文件的后5行内容
tail -f 文件名 实时追踪查看文档
linux权限
- 创建组
groupadd 组名
- 删除组
groupdel 组名
- 查找系统中的组
`cat /etc/group | grep -n “组名”
说明:系统每个组信息都会被存放在/etc/group的文件中 - 创建用户
useradd -g 组名 用户名
- 设置密码
passwd 用户名
- 查找系统账户
说明:系统每个用户信息保存在/etc/passwd
文件中 - 切换用户
su 用户名
- 删除用户
userdel -r 用户名
u 所拥有者权限
g 所属组权限
o 其他人权限
r 读取权限 4
w 写入权限2
x 运行权限1
a =rwx 所有权限
给文件加指定的权限
chmod u+x 文件名
给文件的其他人删除所有权限
chmod o-rwx 文件名
给文件的所属组设置读写权限
chmod g=wx 文件名
语法:chown [-R] user名:group名 文件名
参数:-R 如果是文件夹,需要使用这个参数,可以将文件夹及其内部所有文件的所有者和组全部修改 - R 是递归
注意:命令权限需要root
修改文件所有者
chown 用户名 文件名
修改文件所属组
chown :组名 文件名
修改文件所有者和所属组
chown 用户名:组名 文件名
修改文件夹的所有者和所属组
chown [-R] 用户名:组名 文件夹
文件名查找
语法
find 搜索路径 -name "文件名关键词"
例子
find / -name "passwd" 搜索 /目录下的 passwd 文件夹
find / -name "ifcfg-*" 搜索 /目录下的 ifcfg 开头的 文件夹
# 语法
grep -参数 要查找的目录范围
# 参数
-n 显示查找结果所在行号
-R 递归查找目录下的所有文件
例子
grep aries /etc 查找 etc 目录下的aries文件
grep aries /etc/passwd 查找passwd 目录下的aries文件.
| 管道符
ls | grep aa 查询ls当前目录下的 aa 文件夹
ps -ef | grep aa 查看有关aa 的当前进程
kill -9 强制杀死进程
killall. 杀死有关进程
yum install pstree
pstree 查看当前进程关系
pstree -p。显示进程的pid
pstree-u 显示进程的所属用户
top 实时监控系统进程状态
netstat 显示网络状态和端口占用信息
crontab 系统定时任务
rpm(软件包管理)
rpm -qa firefox 搜索 火狐浏览器软件
rpm -e firefox 卸载 火狐浏览器软件
rpm -ivh 软件包全名 安装
yum