一、Linux 常用目录结构
目录介绍:
var:包含在正常操作中被改变的文件,假脱机文件、记录文件、加锁文件、临时文件和页格式化文件等。
home:包含用户的文件,参数设置文件、个性化文件、文档、数据、EMAIL、缓存数据等,每增加一个用户,系统就会根据其用户名在home目录下新建和其用户名同名的文件夹,用于保存其用户的配置。
proc:包含虚幻的文件,它们实际上并不存在于磁盘上,也不占用任何空间。(用 Is - I 可以显示它们的大小)当查看这些文件时,实际上是在访问存在内存中的信息,这些信息用于访问系统。
bin:包含系统启动时需要的执行文件(二进制),这些文件可以被普通用户使用。
etc:为操作系统的配置文件目录(防火墙、启动项)。
root:为系统管理员(也叫超级用户或根用户)的Home目录。
dev:为设备文件目录。Linux下设备被当成文件,这样一来硬件被抽象化,便于读写、网络共享以及需要临时装载到文件系统中。正常情况下,设备会有一个独立的子目录。这些设备的内容会出现在独立的子目录下。
二、Linux 常用的目录操作(命令结尾需按 enter 回车键
)
1、查看当前的目录命令 pwd
[root@localhost ~]# pwd `/*查看当前的目录命令*/`
/root
2、打开文件夹命令 cd
2.1 语法:
cd [选项] [参数]
[root@localhost ~]# cd /software `/*进入software文件夹*/`
[root@localhost software]# cd - `/*返回进入本目录之前的目录*/`
/root
2.2 cd 命令的常用选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -p | 如果目录是符号链接,则进入实际的目录 |
2 | -L | 如果目录是符号链接,则进入链接的目录 |
3 | / | 进入根目录下的文件目录 |
3 | - | 单独的“-”表示返回进入本目录之前的目录 |
2.3 cd 命令的常用参数
序 号 | 取 值 | 说 明 |
---|---|---|
1 | / | 打开根目录 |
2 | 文件夹名称1 | 打开当前目录下的名称为文件夹名称1的文件夹 |
3 | ../ | “.”代表上级目录,.. 代表上两级项目 |
2.4 cd 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 打开指定目录 | cd[目录名称] |
2 | 打开当前用户的主目录 | cd ~ |
3 | 返回上级目录 | cd .. |
4 | 返回进入目录 | cd - |
5 | 打开根目录 | cd / |
3、浏览目录下的文件列表命令 ls
3.1 语法:
ls [选项]
[root@localhost ~]# ls -l `/*将文件列表以列的方式展示出来*/`
总用量 4
-rw-------. 1 root root 1261 8月 30 00:52 anaconda-ks.cfg
3.2 ls 命令的常用选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -a | 查看目录下全部的文件或目录,包括隐藏的文件 |
2 | -l | 将文件列表以列的方式展示出来,一行显示一个文件 |
3.3 ls 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 以列的方式查看当前目录下的文件列表 | ls -l |
2 | 查看当前目录下所有的文件(包括隐藏文件) | ls -a |
3 | 以列表的方式查看当前目录下的所有文件 | ls -la |
4、创建文件目录命令 mkdir
4.1 语法:
mkdir [选项] 目录名称
[root@localhost /]# mkdir template `/*创建template文件目录*/`
[root@localhost /]# ls
bin dev home lib64 mnt proc run software sys tmp var
boot etc lib media opt root sbin srv `template` usr
4.2 mkdir 命令的常用选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -m | 设定档案的权限,后边可以跟权限标示 |
2 | -p | 帮助用户直接将所需要的目录递归建立起来 |
3 | 缺省 | 直接创建文件目录 |
4.3 mkdir 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 新建文件目录 | mkdir 文件夹名称 |
2 | 递归新建多级目录 | mkdir -p 文件夹名称 |
5、删除文件目录命令 rmdir
5.1 语法:
rmdir [选项] 目录名称
[root@localhost /]# ls `/*查看目录或文件*/`
bin dev home lib64 mnt proc run software sys tmp var
boot etc lib media opt root sbin srv template usr
[root@bogon /]# rmdir template `/*删除template文件目录*/`
[root@bogon /]# ls `/*查看目录或文件*/`
bin dev home lib64 mnt proc run software sys usr
boot etc lib media opt root sbin srv tmp var
5.2 rmdir 命令的常用选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -p | 递归将所有层级目录都删除 |
2 | 缺省 | 删除指定目录 |
5.3 rmdir 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 删除指定目录 | rmdir 目录名称 |
2 | 递归删除指定目录及中间目录 | rmdir -p 目录名称 |
6、删除文件或者目录命令 rm
6.1 语法:
rm [选项] 档案或目录
[root@bogon /]# rm -rf template `/*删除文件或目录*/`
[root@bogon /]# ls `/*查看当前目录下的文件或目录*/`
bin dev home lib64 mnt proc run software sys usr
boot etc lib media opt root sbin srv tmp var
6.2 rm 命令的常用参数
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -f | 强制删除指定的文件 |
2 | -i | 互动模式,在删除前会询问使用者是否进行下一步操作 |
3 | -r | 递归删除 |
6.3 rm 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 强制删除文件或目录 | rm -rf 目录或者文件 |
2 | 在删除前会询问是否确认删除 | rm -ri 目录或者文件 |
7、复制文件或目录命令 cp
7.1 语法:
cp [选项] [目录1名称] [目录2名称]
[root@localhost /]# cp -r temp /software `/*将temp目录复制到software目录下*/`
[root@localhost /]# cd /software `/*去software目录下*/`
[root@localhost software]# ls `/*查看目录下的文件或目录*/`
apache-tomcat-8.5.27.tar.gz nginx-1.15.3.tar.gz redis-3.2.11.tar.gz Travel.war
jdk-8u181-linux-x64.tar.gz nginx-1.16.1.tar.gz `temp` zookeeper-3.4.8.tar.gz
7.2 cp 命令的常用选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -r | 递归持续复制,用于目录的复制行为 |
2 | -f | 为强制(force)的意思,当有重复或其他疑问时,不会询问使用者,而强制复制 |
3 | -p | 保存源文件和目录的属性 |
4 | -i | 覆盖既有目录之前会先询问用户 |
7.3 cp 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 递归复制目录1的所有文件和文件夹到目录2 | cp -r [目录1] [目录2] |
2 | 执行复制操作时覆盖原有目录前会询问用户 | cp -ri [目录1] [目录2 |
8、移动文件、修改文件名命令 mv
8.1 语法:
mv [选项] [源文件或者目录] [目标文件或者目录]
[root@localhost /]# ls `/*查看目录下的文件或目录*/`
bin dev home lib64 mnt proc run software sys tmp usr
boot etc lib media opt root sbin srv temp Travel.war var
[root@localhost /]# mv Travel.war /software `/*将Travel.war文件移动到software目录下*/`
[root@localhost /]# cd /software `/*去software目录下*/`
[root@localhsot software]# ls `/*查看文件或目录*/`
apache-tomcat-8.5.27.tar.gz nginx-1.15.3.tar.gz redis-3.2.11.tar.gz zookeeper-3.4.8.tar.gz
jdk-8u181-linux-x64.tar.gz nginx-1.16.1.tar.gz `Travel.war`
8.2 mv 命令的常用选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -b | 若需覆盖文件,则覆盖前先备份 |
2 | -f | 如果已经存在目标文件,则强制覆盖 |
3 | -i | 若目标文件已存在,则会询问是否覆盖 |
4 | 缺省 | 直接移动文件 |
8.3 mv 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 将文件1的名称更改为文件2 | mv 文件1 文件2 (给文件更名) |
2 | 将目录1的文件移动到目录2 | mv 目录1 目录2 |
三、Linux 文件操作
1、创建文件命令 touch
1.1 语法:
touch 文件名称
[root@localhost ~]# touch abc.tx `/*创建abc.txt文件*/`
[root@localhost ~]# ls `/*查看当前目录下的文件或目录*/`
`abc.txt` anaconda-ks.cfg
2、查看、编辑文件命令 vi
2.1 语法:
vi 文件名称 或 vim 文件名称
[root@localhost ~]# vim abc.txt `/*编辑abc.txt文件*/`
(1)按 i 字母键进入编辑模式
-- 插入 -- 0,1 全部
(2)添加内容
初相遇
席慕容
美丽的梦和美丽的诗一样
都是可遇而不可求的
常常在最没能料到的时刻里出现
我喜欢那样的梦
在梦里 一切都可以重新开始
一切都可以慢慢解释
心里甚至还能感觉到所有被浪费的时光
竟然都能重回时的狂喜和感激
胸怀中满溢著幸福
只因为你就在我眼前
对我微笑 一如当年
我真喜欢那样的梦
明明知道你已为我跋涉千里
却又觉得芳草鲜美 落英缤纷
好像你我才初初相遇
-- 插入 -- 1,2-9 顶端
(3)按 esc 键退出编辑模式,再按 : 冒号键 + w 字母键 + q 字母键 + ! 符号键(保存并退出)
:wq!
2. 2 vi 命令的三种模式:(1)命令模式 (2)输入模式 (3)末行模式
2.3 vi 命令模式的常用命令
序 号 | 取 值 | 说 明 |
---|---|---|
1 | L | 光标移至屏幕最后一行 |
2 | space | 光标右移一个字符 |
3 | backspace | 光标左移一个字符 |
4 | N+ | 光标向上移动N行 |
5 | n+ | 光标下移n行 |
2.4 vi 输入模式下的常用命令
序 号 | 取 值 | 操 作 |
---|---|---|
1 | a,i,r,o,A,I,R,O | 编辑模式 |
2 | dd | 删除光标当前行 |
3 | ndd | 删除n行 |
2.5 vi 末行模式下的常用命令
序 号 | 取 值 | 操 作 |
---|---|---|
1 | :wq! | 保存并退出 |
2 | :q! | 强制退出 |
3 | :s /字符串 1/字符串 2 | 将文件中出现的字符串 1 替换成字符串 2 |
4 | :set nu | 显示所有行号 |
3、查看、编辑文件命令 cat
3.1 语法:
cat [-
参数选项] 文件名称
[root@localhost ~]# cat abc.txt `/*查看abc.txt文件的内容*/`
初相遇
席慕容
美丽的梦和美丽的诗一样
都是可遇而不可求的
常常在最没能料到的时刻里出现
我喜欢那样的梦
在梦里 一切都可以重新开始
一切都可以慢慢解释
心里甚至还能感觉到所有被浪费的时光
竟然都能重回时的狂喜和感激
胸怀中满溢著幸福
只因为你就在我眼前
对我微笑 一如当年
我真喜欢那样的梦
明明知道你已为我跋涉千里
却又觉得芳草鲜美 落英缤纷
好像你我才初初相遇
3.2 cat 命令选项说明
序 号 | 取 值 | 说 明 |
---|---|---|
1 | > | 创建并打开一个新的文件 |
2 | 缺省 | 展示文件内容 |
3.3 cat 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 显示一个小的文件的内容 | cat 文件名称 |
2 | 创建并打开一个新的文件 | cat > 文件名称 |
4、查看文件开头内容命令 head
4.1 语法:
head [参数] [文件]
[root@localhost ~]# head -5 abc.txt `/*查看abc.txt文件前5行的内容*/`
初相遇
席慕容
[root@localhost ~]#
4.2 head 输入模式下的选项命令
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -n | <行数>显示的行数 |
2 | 默认 | 默认显示文件前10行数据 |
4.3 head 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 显示一个小的文件的内容 | cat 文件名称 |
2 | 创建并打开一个新的文件 | cat > 文件名称 |
5、查看文件结尾内容命令 tail
5.1 语法:
tail [-
参数选项] [文件名称]
[root@localhost ~]# tail -n 5 abc.txt `/*从倒数第5行开始查看abc.txt文件的内容*/`
我真喜欢那样的梦
明明知道你已为我跋涉千里
却又觉得芳草鲜美 落英缤纷
好像你我才初初相遇
[root@localhost ~]#
5.2 tail 输入模式下的选项命令
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -f | 参数用于监视File文件增长,文件内容更新后,终端显示也将动态更新 |
2 | -n Number | 从倒数第 Number 行位置读取指定文件的全部内容 |
5.3 tail 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 动态加载某个文件的内容(常用于查看日志文件) | tail -f 文件名称 |
2 | 展示文件最后几行的数据 | tail -n 行数文件名称 |
四、权限管理
1、用户操作命令
1.1 语法:
su [用户名] 或 su -[用户名]
[jack@localhost ~]# su root `/*切换到root管理员的身份*/`
Password:
[root@localhost jack]# su jack `/*切换到jack普通用户的身份*/`
[jack@localhost ~]#
2、查看当前登录用户命令 whoami
2.1 语法:
whoami
[root@localhost ~]# whoami `/*查看当前登录用户*/`
root
[jack@localhost ~]#
3、查看当前用户所属分组命令 groups
3.1 语法:
groups
[root@localhost ~]# groups `/*查看当前用户所属分组*/`
root
4、查看当前用户 UID 和 GID命令 id
4.1 语法:
id
[root@localhost ~]# id
uid=0(root) gid=0(root) 组=0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
5、添加新用户命令 useradd
5.1 语法:
useradd [选项] [用户名]
[root@localhost ~]# useradd action `/*添加新用户*/`
[root@localhost ~]# su action `/*切换用户*/`
[action@localhost root]$
5.2 useradd 命令常用的选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -c | 代表 comment 指定一段注释性描述 |
2 | -d | 指定用户主目录 |
3 | -g | 指定用户所属的用户组 |
4 | -G | 指定用户所属的附加组 |
5 | -u | 指定用户的用户号 |
6 | 缺省 | 直接添加用户 |
5.3 useradd 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 在 Linux 操作系统中添加用户 | useradd 用户名 |
2 | 在 Linux 操作系统中添加用户并指定用户 UID | useradd -u 指定的 UID 用户名 |
6、修改用户密码命令 passwd
6.1 语法:
passwd [选项] [参数]
[root@localhost ~]# passwd -f root `/*强制修改用户的密码*/`
更改用户 root 的密码
新的 密码: `/*输入新的密码*/`
重新输入新的密码: `/*再次输入新的密码*/`
6.2 passwd 修改用户密码常用的选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -d | 删除密码,仅有系统管理员才能使用 |
2 | -f | 强制执行 |
3 | -k | 设置只有密码过期后才能更新 |
4 | -l | 锁住密码 |
5 | -s | 列出密码的相关信息,仅有系统管理员才能使用 |
6 | -u | 解开已上锁的账号 |
7、删除用户命令 userdel
7.1 语法:
userdel [选项] [用户名]
[root@localhost ~]# userdel -f action `/*强制删除新用户*/`
7.2 userdel 删除用户命令常用的选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -r | 删除用户以及其登录日志等信息 |
2 | -f | 强制删除用户,即使用户已经登录 |
3 | 缺省 | 直接删除用户 |
7.3 userdel 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 删除用户 | userdel 用户名 |
2 | 删除用户并同时删除其登录信息 | userdel -r 用户名 |
8、修改用户信息命令 usermod
8.1 语法:
usermod [选项] [参数] [用户名]
8.2 usermod 修改用户命令常用的选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -c | 修改用户账号的备注文字 |
2 | -d | 修改用户登录时的日志 |
3 | -e | 修改账号的有效期 |
4 | -f | 修改密码过期后,多少天关闭账号 |
5 | -g | 修改用户所属的群组 |
6 | -G | 修改用户所属附加组 |
7 | -l | 修改用户账号名称 |
8 | -L | 锁定用户密码,使密码无效 |
9 | -u | 修改用户id |
10 | -U | 解除密码锁定 |
8.3 usermod 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 修改用户登录名 | usermod -l 新用户名 旧用户名 |
2 | 修改用户所属分组 | usermod -g 用户名 |
9、添加用户组命令 groupadd
9.1 语法:
groupadd [选项] [组名称]
9.2 groupadd 添加用户组命令常用的选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -g | 指定工作组的id |
2 | -r | 创建系统工作组 |
3 | -o | 允许添加组,ID 不唯一的组 |
4 | 缺省 | 添加用户组 |
9.3 groupadd 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 修改用户登录的组名 | groupadd 组名 |
2 | 修改用户所属分组 | groupadd -g 组 GID 组名 |
10、权限操作命令 chmod
10.1 Linux 系统对文件的 3 种操作:
** (1)读的权限(r
) (2)写的权限(w
) (3)执行的权限(x
)
10.2 语法:
chmod [选项] [参数]
10.3 chmod 命令常用的选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -c | 显示指令执行过程,但只返回更改的部分 |
2 | -f | 不显示错误信息 |
3 | -r | 递归授权 |
4 | -v | 显示指令执行过程 |
五、Linux 进程管理
1、查看进程命令 ps
1.1 语法:
ps -ef | grep [进程关键字]
[root@localhost/]# ps -ef|grep tomcat `/*查看tomcat的进程*/`
root 2933 1 94 22:33 pts/0 00:00:32 /usr/local/jdk/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start
root 2950 2891 1 22:33 pts/0 00:00:00 grep --color=auto tomcat
2、杀掉进程命令 kill
2.1 语法:
kill -9 [PID]
[root@bogon /]# kill -9 2933 `/*杀掉tomcat的进程*/`
[root@bogon /]# ps -ef|grep tomcat `/*查看tomcat的进程*/`
root 2986 2891 0 22:38 pts/0 00:00:00 grep --color=auto tomcat
3、清屏命令 clear
3.1 语法:
clear
[root@localhost /]# clear
六、Linux 系统软件安装
1、常用软件安装方式
1.1 Linux 常用的 3 种软件安装方式:
(1) tar 安装:如果软件开发商提供的是tar、tar.gz、tar.bz格式的包(其中 tar 格式的为打包后没有压缩的包,gz 结尾的是按照 gzip 打包并压缩的软件包, tar.bz 是按照二进制方式打包并压缩的软件包)。可以采用 tar 安装方式本质上是解压软件开发商提供的软件包,之后再通过相应配置,完成软件的安装。
(2) rpm 安装:rpm 安装方式是 redhat Linux 系列推出的一个软件包管理器,类似于 Windows 下的 exe 程序安装程序,可以直接使用 rpm 命令安装。
(3) yum 安装: yum 安装本质上依然是 rpm 包安装,与 rpm 安装方式的不同之处是用户可以通过 yum 参数,指定安装的软件包,系统将自动从互联网上下载相应的 rpm 软件包,而无须用户关心软件包的下载地址,以及软件包的依赖关系。
2、软件安装常用命令 tar
2.1 语法:
tar [选项] [压缩包]
[root@localhost /]# tar -zvxf apache-tomcat-8.5.27.tar.gz
2.2 tar 命令常用的选项
序 号 | 取 值 | 说 明 |
---|---|---|
1 | -c | 指定特定的目录压缩 |
2 | -x | 从备份文件中还原文件 |
3 | -t | 列出(查看)备份文件的内容 |
4 | -r | 添加文件到已经压缩的文件 |
5 | -z | 有 gzip 属性的(后缀是 gz 结尾的 |
6 | -j | 有 bz 属性的(后缀是 bz 结尾的) |
7 | -Z | 有 cpmpress 属性的 |
8 | -v | 显示所有的过程 |
9 | -O | 将文件解压到标准输出 |
10 | -f | 使用档案名称 |
2.3 tar 命令常用的使用方式
序 号 | 描 述 | 操 作 |
---|---|---|
1 | 解压 gzip 包 | tar -zxvf [包名] |
2 | 解压 bz 包 | tar -jxvf [包名] |
3 | 解压普通包 | tar -xvf [包名] |
七、Linux 关闭防火墙
1、防火墙的操作命令
1.1 查看防火墙的状态:
systemctl status firewalld
service iptables statu
1.2 暂时关闭防火墙:
systemctl stop firewalld
service iptables stop
1.3 永久关闭防火墙:
systemctl disable firewalld
chkconfig iptables off
1.4 重启防火墙:
systemctl enable firewalld
service iptables restart