01_Linux(上)
一、在虚拟机中安装CentOS-7系统
在进入安装过程中 按两次enter
之后的检测过程中 一直按esc 取消检测
选择系统的语言
开始安装
完成之后 重启
二、查看linux的目录结构
linux的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录。
记住一句经典的话:在Linux世界里,一切皆文件。
- / 根目录 每一个linux系统 只有一个根目录
- / bin 主要存放常用命令
- /sbin 主要存放系统管理的常用命令
- /home 存放的是普通用户的主目录 每个用户都拥有自己的目录 一般目录的名称已账户名来命名
- /root 该目录为系统管理员主目录
- /lib 主要存放系统的一些依赖的动态库
- /etc 存放系统的一些配置文件
- ==/usr 主要存放当前用户的安装程序 ==
- /boot 主要存放系统启动时所需的核心文件
- /opt 这是给主机额外安装软件所摆放的目录。如安装ORACLE数据库就可放到该目录下。默认为空。所以工作时,我们尽量将安装软件放到这个统一的目录下
- /usr/local [重点]
这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序。 - /var [重点]
这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下。包括各种日志文件。
三、linux的常用操作方式
通过 系统自带的终端 来进行操作 主要是在操作系统本身上操作 类似于windows的cmd
在很多情况下 往往作为服务器的linux系统 部署在远方 此时要想操作linux系统 需要通过远程访问工具
远程访问的客户端:xshell secureCRT
xshell的下载
安装步骤 一路next
查看centos的IP地址
ip address
ifconfig
设置字体
终端切换
图形界面和命令界面的切换
init 3 由图形界面切换到 命令界面
init 5 由命令界面切换到图形界面
四、Vi和Vim编辑器
4.1.vi和vim的基本介绍
vi 是一个系统自带的文本编辑器
vim 具有更强的功能 是vi的增强版 vim具有程序编辑能力
在linux中文件可以没有扩展名
4.2.vi和vim常用的三种模式
- 正常模式:
以 vim 打开一个文件就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容, 也可以使用『复制、贴上』来处理你的文件数据。在正常模式下可以使用快捷键 - 编辑模式(插入模式): I i o O A a r R都可以从一般模式切换到编辑模式 此时可以对文件进行编辑
退出编辑模式 esc 键 就可以退出编辑模式
I i o O a A 都是insert
R r replace - 命令行模式:可以使用一些相关指令, 来完成对问价的读取 保存 替换 关闭 退出vi、vim编辑器
:w 保存 :q 退出 :! 强制执行
/要查找的词(n 查找下一个,N 往上查找 )
?要查找的词(n是查找上一个,shift+n是往下查找)
:set nu 显示行号 :set nonu关闭行号
4.3.vi和vim常用的快捷键
- 复制粘贴 yy 复制 p粘贴 5yy 表示复制5行
- 删除 dd 删除当前行 5dd 删除当前向下的5行
- 编辑 /etc/profile 文件,使用快捷键到底文档的最末行[G]和最首行[gg] 【正常模式下】
- 在一个文件中输入 “hello” ,然后又撤销这个动作 u 【正常模式下】
五、开机、重启和用户登录注销
5.1.关机&重启命令
-
基本介绍:
shutdown –h now 立该进行关机 【halt】
shudown -h 1 “hello,关机" “hello, 1 分钟后会关机了”
shutdown –r now 现在重新启动计算机 [reboot]
halt 关机,作用和上面一样.
reboot 现在重新启动计算机
sync 把内存的数据同步到磁盘. -
注意细节:
不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中
5.2.用户的登录和注销
root 是所有用户中权限最大的 su - 用户名 进行切换用户 root用户切换到一般用户 不需要密码 一般用户切换到管理员 是需要输入管理员密码的
- 基本介绍:
1)登录时尽量少用root帐号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录后再用”su - 用户名’命令来切换成系统管理员身份.
2)在提示符下输入 logout 即可注销用户【不同的shell 可能不同(logout exit)】 - 使用细节:
logout 注销指令在**图形运行级别(简单提一下:0-6个级别)**无效,在 运行级别 3下有效.
六、用户管理
6.1.基本介绍
Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
6.2.基本操作
6.2.1. 添加用户
useradd 用户名
当用户创建之后 就会在home目录下 有一个归属于当前用户的家目录
6.2.2.给当前用户指定密码
passwd 用户名 // 如果没有带用户名,则是给当前登录的用户修改密码
设置密码 需要符合密码的强度要求
6.2.3.删除用户
userdel 用户名
使用该命令删除用户之后 用户的主目录依然存在
userdel -r 用户名 删除用户的同时 删除主目录
6.2.4.查询用户信息
基本语法
id 用户名
当查询的用户不存在时 则返回:
6.2.5.查看当前用户
基本语法
whoami/ who am I
6.2.6.用户组
类似于角色,系统可以对有共性的多个用户进行统一的管理
- 新增组
groupadd 组名
- 新增用户到某一个组
useradd –g 用户组 用户名
当用户属于某一个组之后 则用户就拥有了该组的所有权限
- 修改用户所属组
usermod –g 新的组名 用户名
- 删除组
userdel –g 用户组 用户名
6.2.7.用户和组的相关文件
以下命令不是可执行文件,而是系统密码文件,是个ascii码文件,可以用vi、cat打开查看
- /etc/passwd 文件
用户(user)的配置文件,记录用户的各种信息
== 每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell == - /etc/shadow 文件
口令的配置文件
==每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:保留 == - /etc/group 文件
组(group)的配置文件,记录Linux包含的组的信息
== 每行含义:组名:口令:组标识号:组内用户列表==
七、实用指令
7.1.指定运行级别
Linux分为7个启动级别:
0 - 系统停机状态 halt
1 - 单用户工作状态 Single user mode
2 - 多用户状态(没有NFS) Multiuser, without NFS (The same as 3, if you do not have networking)
3 - 多用户状态(有NFS) Full multiuser mode
4 - 系统未使用,留给用户 unused
5 - 图形界面 X11
6 - 系统正常关闭并重新启动 reboot (Do NOT set initdefault to this)
设置运行级别
systemctl [command] [unit.target]
参数详解: command:
get-default :取得当前的target
set-default:设置指定的target为默认的运行级别
isolate :切换到指定的运行级别
unit.target :为上中列出的运行级别
面试题:
如何找回root密码
首先,重启centOS
然后,到这个页面,输入【e】,进入编辑页面。动作要快点,否则5秒就会开始自动进入启动页面了。
然后,在这个页面,找到linux16这一行,将之前的【ro】,改为【rw init=sysroot/bin/sh】,然后按照指示,按【ctrl+x】,to start,使用单用户模式启动.由于是单用户,就不需要密码进入了
然后过几秒中,进入这个页面。这就可以开始修改密码了
首先输入命令【chroot /sysroot】,chroot就是change root,也就是改变程序执行时所参考的根目录位置,根目录改为/sysroot。然后输入命令【passwd root】,passwd表示更改使用者的密码,注意这里不是password,而是passwd. 然后出现一堆框+root+一堆框,(这些应该是提示信息,但是现在是乱码,一堆框),然后我在画红框框的地方,我输入了密码,以及确认的密码。 最后输入命令【touch /.autorelabel】 ,在/目录下创建一个.autorelabel文件,而有这个文件存在,系统在重启时就会对整个文件系统进行relabeling。以及命令【exit】退出,以及命令【reboot】重启。
7.2.帮助指令
①man 获得帮助信息
man [命令或配置文件](功能描述:获得帮助信息)
案例:查看ls命令的帮助信息
②help指令
help 命令 (功能描述:获得shell内置命令的帮助信息)
7.3.文件目录类
①pwd指令
pwd 查看当前所在的路径 绝对路径
②ls指令
查看当前目录下的所有的文件和目录
-l 显示文件的详细信息
-a 显示所有文件 包括隐藏文件 (以.开头的文件就是隐藏文件)
-h 显示文件的大小
③cd 指令
cd 切换目录
cd 以/开头 表示绝对路径 从跟目录开始查找
不以/开头表示相对路径 从当前目录开始查找
cd ~表示回到当前用户的主目录
cd.. 回到当前目录的上级目录
④mkdir指令
创建目录 mkdir
mkdir 目录名 创建单级目录
mkdire -p 目录名 创建多级目录
⑤touch指令
创建文件
⑥cp指令[copy 拷贝]
文件或者目录的拷贝
对于文件复制的文件路径的写法 都可以采用绝对路径或相对路径
⑦rm指令 移除文件或目录
-r 表示递归删除整个目录
-f 强制删除
⑧mv指令 移动目录或文件 同时还可以重命名文件
⑨cat指令 查看文件内容
cat 文件名 查看文件内容
-n 显示行号
⑩more指令(了解)
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键,详见操作说明
⑪less指令(了解)
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
⑫echo指令 输出内容到控制台。
⑬head指令
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
-n 表示显示前几行
head 文件 (功能描述:查看文件头10行内容)
head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)
⑭tail指令
tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10行内容。
⑮> 指令 和 >> 指令
. > 输出重定向和 >> 追加
1) ls -l >文件 (功能描述:列表的内容写入文件a.txt中(覆盖写))
2) ls -al >>文件 (功能描述:列表的内容追加到文件aa.txt的末尾)
3) cat 文件1 > 文件2 (功能描述:将文件1的内容覆盖到文件2)
4) echo "内容">> 文件
⑯history指令 查看使用过的历史指令
history
7.4.时间日期类
①date指令-显示当前日期
- date (功能描述:显示当前时间)
- date +%Y (功能描述:显示当前年份)
- date +%m (功能描述:显示当前月份)
- date +%d (功能描述:显示当前是哪一天)
- date “+%Y-%m-%d %H:%M:%S”(功能描述:显示年月日时分秒)
②date指令-设置日期
③cal指令-查看日历指令
7.5.搜索查找类
①cal指令-查看日历指令
locate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。 Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。
特别说明
由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库。
②grep指令和 管道符号 |
grep 过滤查找 , 管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理。
grep [选项] 查找内容 源文件
7.6.压缩和解压相关
①gzip 压缩文件 gunzip 解压文件 此命令只能操作扩展名为.gz的文件
gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz文件)
gunzip 文件.gz (功能描述:解压缩文件命令)
②zip 和unzip 将文件压缩成.zip
zip [选项] XXX.zip 需要压缩的内容(功能描述:压缩文件和目录的命令)
unzip [选项] XXX.zip (功能描述:解压缩文件)
zip常用选项
-r:递归压缩,即压缩目录
unzip的常用选项
-d<目录> :指定解压后文件的存放目录
③tar 打包指令 .tar.gz
小结:
需要掌握的指令:
vi/vim相关
用户相关
文件相关
打包压缩 tar 相关
linux目录结构(重点)
登录方式:本地方式 和远程方式 (掌握)
vi、vim编辑器 (掌握)
用户管理 (了解)
指令:文件目录 解压(掌握)