linux入门知识
一、目录结构详解
/bin #存放最经常使用的指令 比如 cp,ls,kill
/sbin #系统管理员使用的系统管理指令
/home #存放普通用户的主目录,在linux中每个用户都有一个自己的目录,一般该目录是以用的账号命名的
/root #系统管理员的用户主目录
/boot #存放的是启动Linux时使用的一些核心文件
/lib #库文件存放目录
/etc #存放所有系统管理所需要的配置文件,比如说mysql中的配置文件,my.conf
/usr #用户的很多应用程序和文件都放在这个目录下,有点像Windows下的program files目录
/proc,别动 #这是系统内存的映射
/srv,别动 #service的缩写,存放的是一些服务启动之后需要使用的数据
/sys,别动 #系统相关文件
/tmp #用来存放临时文件
/dev #类似于windows的设备管理器,把所有的硬件用文件的形式存储
/media #Linux会识别一些设备,例如U盘,光驱等等,识别后,Linux会把识别的设备挂载到这个目录下
/mnt #用于让用户临时挂载别的文件系统,我们可以将外部的存储挂载在/nmt/上,然后进入该目录就可以查看里面的内容的,如我们之前设置的共享文件夹
/opt #正常这个文件夹是用来放安装包的
/usr/local #安装后的程序存放的地方
/var #存放经常需要被修改的文件,比如各种日志文件
/selinux #全名--- security enhanced linux,安全加强linux
这个类似于windows中的杀毒软件,是一种安全系统,比如收到攻击的时候这个文件会被触发
二、vim
yum install vim
vi 和 vim 的三种常见模式
1 正常模式
正常模式下,我们可以使用快捷键对文本进行操作,比如:复制--yy 粘贴:p
以vim打开文档,直接进入的就是一般模式,这个模式下,我们可以使用[上下左右]来移动光标.delet删除末尾字符,等等(具体的快捷键后面会说)
2 插入模式
在插入模式下,程序员可以输入内容
按下i,o,a,r,I,O,A,R中任意一个键,会进入插入模式.
正常习惯按i,因为好记,insert
3 命令行模式
这个模式下,程序员可以输入相关指令,来完成比如:存盘,离开,显示行号等功能(具体指令后面会说)
三、开机/重启/用户切换/注销
1.关机/重启命令
shutdown命令
shutdown -h now :立即关机
shutdown -h 2 :1分钟后关机
shutdown -r now :立即重启
shutdown -r 1 :1分钟后重启
halt
关机
reboot
重启
sync:
把内存的数据同步到磁盘
特别注意:当关机或重启前,都应当先执行一下sync指令,把内存的数据写入磁盘,防止数据丢失
四.用户切换/添加/删除/注销
基本说明:
正常在公司是不会给你root权限的,就算给你了root权限,也不要拿root用户直接登录,避免操作失误
正常情况都是使用普通用户登录,然后主要管理员权限的时候再切换
1.切换用户
su - 用户名 切换用户
exit 回到原来用户
2.注销用户
前提:图形界面无效
logout
3.添加用户
useradd [选项] 用户名
例子:
useradd lxx
说明:
1.创建用户成功后会自动创建和用户名同名的家目录
指定家目录
useradd -d 目录路径 用户名
指定用户组
useradd -g 用户组名 用户名
4.给用户指定或修改密码
passwd 用户名
5.删除用户
userdel 用户名 删除用户,保留家目录
userdel -r 用户名 删除用户,不保留家目录
6.查询用户信息
id 用户名
7.切换用户
当用户权限不够时,可以通过`su -`,来切换到高权限用户,比如root用户
从高权限用户切换到低权限用户时,不需要密码
su 用户名 切换用户
exit 返回原来用户
五、用户组
1.增加组
groupadd 组名
2.删除组
groupdel 组名
3.修改用户的组
usermod -g 组名 用户名
/etc/passwd 文件 这是用户的配置文件,记录着用户的各种信息
/etc/shadow 文件 口令配置文件 存用户密码和相关时间的地方
/etc/group 文件 组的配置文件
六、实用指令
1.修改默认运行级别
vim /etc/inittab
修改最后一行:
id:5:initdefault:
2.切换运行级别
init [012356]
3.帮助指令
man 指令
help 指令
百度
七.文件目录指令
1.pwd
pwd 显示当前所在的目录
2.ls
ls [选项] [目录或文件] 查看文件信息
ls -a 查看所有文件和目录,包括隐藏的
ls -l 以列表的方式显示
3.cd
cd 路径
cd ~: 回到家目录
cd ..: 回到上一级目录
4.mkdir指令
mkdir [选项] 路径 创建文件夹
mkdir -p 路径 创建多级文件夹
5.rmdir
rmdir [选项] 路径 删除空文件夹
rmdir -r 路径 递归删除空文件夹
文件夹下有内容,则无法删除
6.touch
touch 文件路径
可以一次创建多个文件
touch 文件路径1 文件路径2
7.cp
拷贝文件到目标路径
cp [选项] 源路径 目标路径
cp 源路径 目标路径 拷贝单个文件
cp -r 源路径 目标路径 拷贝文件夹
当拷贝时发现相同文件,会提示[是否覆盖?]
cp [选项] 源路径 目标路径 取消提示,强制复制
8.rm 删除目录或者文件
rm [选项] 目标路径
rm 文件路径 删除文件
rm -r 文件夹路径 删除文件夹
rm -f xxxx 强制删除不提示
9.mv 移动文件或重命名
mv 源路径 目标路径
10.cat 显示文件内容
cat [选项] 文件路径
cat 文件路径 显示文件内容
cat -n 文件路径 显示文件内容,并显示行号
cat -n /etc/profile | more
11.more指令
#more指令是基于vi编辑器的文本过滤器,**以全屏的方式按页显示文本内容**
#more指令中内置了很多快捷键,用起来很方便
基本语法
more 文件路径
空格 向下翻一页
Enter 向下翻一行
q 立即离开
Ctrl+F 向下滚动一屏
Ctrl+B 向上滚动一屏
= 显示当前行号
:f 输出文件名和当前行号
12.less指令
less 文件路径
空格 向下翻一页
pagedown 向下翻一页
pageup 向上翻一页
/字符串 向下查找[字符串],n下一个,N上一个
?字符串 向上查找[字符串],n下一个,N上一个
q 离开less
13.echo指令
echo "我是杨家三少"
echo $PATH
14.head指令
head
用于显示文件的开头部分内容,默认情况下
head 指令显示文件的前
10 行内容
基本语法
head 文件路径 查看文件前10行
head -n 5 文件路径 查看文件前5行
15.tail指令
tail
用于显示文件的结尾部分内容,默认情况下tail指令显示文件的后10行内容
tail 文件路径 查看文件前10行
tail -n 5 文件路径 查看文件前5行
tail -f 文件路径 实时追踪文件所有的更新-----经常使用
16.ln指令
软链接也叫符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径
ln -s 源文件或源文件夹 软连接名
17.history指令
history 查看所有的历史指令
history 10 查看最近执行的10条指令
!100 执行编号为100的指令
八、时间日期类
1.date指令
date 显示当前日期
data +%Y 显示当前年份
data +%m 显示当前月份
data +%d 显示当前天
data +%Y-%m-%d %H:%M:%S
九、find指令
find
指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端
find [范围] [选项]
范围:指路径,不写默认从当前向下找,类似于windows的查找
选项:
-name 文件名 按文件名查找
-user 用户名 查找属于该用户的所有文件
-size 按文件大小查找
+20M
-20M
20M
20K
十、grep 指令 和 管道符号|
grep [选项] 过滤内容
选项:
-n 显示匹配行及行号
-i 忽略字母大小写
十一、压缩和解压类
1. gzip/gunzip 指令
说明:使用gzip压缩文件之后,不会保留原来的文件
#用于压缩和解压文件
gzip 文件路径
gunzip gz文件路径
2.zip/unzip 指令
zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的
zip [选项] xxx.zip 被压缩内容 压缩文件或者目录
-r 压缩目录
unzip [选项] xxx.zip 解压文件
-d 目录 指定压缩后的存放目录
十二、tar指令
tar 指令 是打包指令,最后打包后的文件是
.tar.gz
的文件
压缩:
tar -zcvf xx.tar.gz 被压缩内容 压缩
tar -zxvf xx.tar.gz -C 目标路径 解压
十三、组管理和权限管理
1.查看温恩建的所有者
ls -ahl
2.修改文件的所有者
chown 用户名 文件名
3.组的创建
groupadd 组名
十四、文件/目录 所在组
当某个用户创建了一个当某个用户创建了一个文件后,默认这个文件的所在组就是该用户所在的组。
1.查看文件/目录 所在组
ls –ahl
2.修改文件所在组
chgrp 组名 文件名
3.其他组
除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组
4.改变用户所在组
在添加用户时,可以指定将该用户添加到哪个组中,同样的用
root 的管理权限可以改变某个用户所在的组
5.改变用户所在组
usermod –g 组名 用户名
十五、权限的基本介绍
ls -l
-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc
0-9 位说明
第 0 位确定文件类型(d,-,l)
第 1-3 位确定所有者(该文件的所有者)拥有该文件的权限
第 4-6 位确定所属组(同用户组的)拥有该文件的权限
第 7-9 位确定其他用户拥有该文件的权限
十六、rwx权限详解
1.rwx作用到文件
r:可读
w:可写[可写不代表可以删除,删除一个文件的前提是对文件所在的目录有写的权限]
x:可执行
2.rwx作用到目录
r:可读(可用ls查看目录内容)
w:可写[可在目录内创建+删除+重命名文件或目录]
x:可执行[可以进入目录]