1、使用u盘安装
工具(前提条件):
<1>u盘
<2>镜像文件iso/msdn.itellyou.cn
<3>把u盘做成PE:大白菜/老毛桃/winPE/软碟通/ultralSO
设置BIOS:通过u盘启动
安装系统:一键恢复
2、使用光驱
工具:镜像光盘/光驱
安装系统 设置BIOS 通过光驱启动
3、硬盘对克
前提条件:所有硬件配置必须相同才可以
4、网络克隆
5、在线安装
FAT16/32 单文件大小不能超过4个G
NTFS 没有限制
EXFAT
计算机组成
1. 计算机硬件由内设和外设组成
2. 计算机内部设备包括电源、主板、CPU、内存、硬盘、声卡、 显卡、调制解调器、软驱、光驱,等等
3. 计算机外部设备包括输入设备中的键盘、鼠标器、扫描仪、数 码相机和语音输入系统、手写输入系统、IC 卡输入系统,输出设 备中的显示系统、各种打印机和绘图仪,等等。
windows系统与Linux系统区别
windows:属于多根文件系统 e.g. C:\ D:\ E:\ 在dos界面命令下不区分大小写;
Linux:Linux操作系统严格区分大小写
Linux系统
一般由4部分组成:内核、shell、文件系统、应用程序
Linux是一个多用户、多任务的操作系统,可以让多个用户同时使用。
Linux命令终端 [root@localhost~]#
root:当前登录用户名称,会根据登录的用户不同而进行改变
@:没有含义,就是连接符
localhost:当前登录的主机名,可以修改
~:当前工作目录,~代表的是当前目录为家目录,会根据工作目录的变化而变化
#:代表当前登录的用户为超级管理员
$:代表当前登录的用户为普通用户
Linux的目录结构
/ (根目录)是最顶级的目录了
Linux只有一个顶级目录: / 路径描述的层次关系同样适用 / 来表示
e.g. /home/test/a.txt,表示根目录下的home文件夹内有test文件夹,内有a.txt
linux系统中一切皆文件
/sbin
s就是super User的意思,这里存放的是系统管理员使用的系统管理程序。
/home
存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一版该目录名是以用户的账号命名的。
/root
该目录为系统管理员,也称为超级权限者的用户主目录。
/lib
系统开机所需要最基本的动态连接共享库,其作用类似于windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/etc
所有的系统管理所需要的配置文件和子目录。
/usr
这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program fies目录。
/boot
这里存放的是启动linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里。
/proc
这个目录是一个虚拟目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
/srv
service缩写,该目录存放一些服务启动之后需要提取的数据。
/sys
这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs。
/tmp
这个目录是用来存放一些临时文件的。
/dev
类似于windows的设备管理器,把所有的硬件用文件的形式存储。管理着所有设备,例如CPU、硬盘等等
/media
linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
centos7迁移到/run/media
/mnt
系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt上,然后进入该目录就可以查看里面的内容了。和media差不多
/opt
这是给主机额外安装软件所摆放的目录。比如你安装一个mysql数据库则就可以放在这个目录下。默认是空的。
/var
这个目录中存放着在不断扩充的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
/lost+found
这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/www
/www目录可以用于存储Web应用程序或网站文件,/www目录没有特别的用途,它只是一个常规目录,可以根据需要进行使用和管理。
功能:列出目录下文件信息
语法:ls [-l -h -a -al] [参数]
参数:被查看的文件夹,不提供参数,表示查看当前工作目录
ls,后面不跟任何参数,显示的是当前目录的文件
-l,以列表形式查看
-h,配合-l,以更加人性化的方式显示文件大小
-a,显示隐藏文件,以点(.)开头的文件
--all,长格式
/,查看指定目录下的文件信息
ll(别名),“ls -l” “ls -al”
在Linux中以.
开头的,均是隐藏的。默认不显示出来,需要-a
选项才可查看到。
功能:以绝对路径方式显示工作目录信息
语法:pwd
功能:切换工作目录
语法:cd [目标目录]
参数:目标目录,要切换去的地方,不提供默认切换到当前登录用户HOME目录
案例:cd . cd ./ 表示当前目录 ; cd .. cd ../ 返回上一级目录 ; cd - 显示当前目录路径
每一个用户在Linux系统中都有自己的专属工作目录,称之为HOME目录。
普通用户的HOME目录,默认在:/home/用户名
root用户的HOME目录,在:/root
XShell登陆终端后,默认的工作目录就是用户的HOME目录
相对路径,==非==/
开头的称之为相对路径
相对路径表示以当前目录
作为起点,去描述路径,如test/a.txt
,表示当前工作目录内的test文件夹内的a.txt文件
绝对路径,==以==/
开头的称之为绝对路径
绝对路径从根
开始描述路径
.
,表示当前,比如./a.txt,表示当前文件夹内的a.txt
文件
..
,表示上级目录,比如../
表示上级目录,../../
表示上级的上级目录
~
,表示用户的HOME目录,比如cd ~
,即可切回用户HOME目录
功能:创建文件夹
语法:mkdir [-p] 参数
参数:被创建文件夹的路径
选项:-p,可选,表示创建前置路径;递归创建目录
选项:-v,显示创建的详细信息
功能:删除空目录(注意:只能删除目录文件)
语法:rmdir [-p] 参数
参数:递归删除空目录
选项:-p,递归删除空目录
选项:-v,显示删除的详细信息
功能:创建普通文件
语法:touch 参数
参数:被创建的文件路径
功能:查看文件内容
语法:cat 参数
参数:被查看的文件路径
选项:-n,显示行号
功能:查看文件,可以支持翻页查看
语法:more 参数
参数:被查看的文件路径
选项:-num,num是数字,表示一屏要显示行数
选项:+num,num表示数字,表示从第几行开始要显示
在查看过程中:
空格
键翻页
q
退出查看
功能:复制文件、文件夹
语法:cp [-r] 参数1 参数2
参数1,被复制的
参数2,要复制去的地方
选项:-r,可选,复制文件到目标目录文件时,可以复制目标文件下的目录文件
注意:源文件可以有多个,但是目标文件只能有一个;默认情况下,cp不支持复制目录文件
示例:
cp a.txt b.txt,复制当前目录下a.txt为b.txt
cp a.txt test/,复制当前目录a.txt到test文件夹内
cp -r test test2,复制文件夹test到当前文件夹内为test2存在
功能:移动文件、文件夹
语法:mv 参数1 参数2
参数1:被移动的
参数2:要移动去的地方,参数2如果不存在,则会进行改名
功能:删除文件、文件夹
语法:rm [-r -f] 参数...参数
参数:支持多个,每一个表示被删除的,空格进行分隔
选项:-r,删除文件夹使用,递归删除文件信息
选项:-f,强制删除,不会给出确认提示,一般root用户会用到
rm命令很危险,一定要注意,特别是切换到root用户的时候。
功能:查看命令的程序本体文件路径
语法:which 参数
参数:被查看的命令
功能:搜索文件
语法1按文件名搜索:find 路径 -name 参数
路径,搜索的起始路径
参数,搜索的关键字,支持通配符*, 比如:*
test表示搜索任意以test结尾的文件
功能:过滤关键字
语法:grep [-n] 关键字 文件路径
选项-n,可选,表示在结果中显示匹配的行的行号。
选项-v,可选,反向选择(配置文件中的注释排除)。
选项-i,可选,不区分大小写。
选项-c,可选,统计匹配的行数(行号)。
选项-w,可选,以整词形式去匹配内容)。
选项-r,可选,递归搜索目录文件中包含所查询字符串的信息 。
参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用””将关键字包围起来
参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口
参数文件路径,可以作为管道符的输入
功能:统计
语法:wc [-c -m -l -w] 文件路径
选项,-c,统计bytes数量/字节数
选项,-m,统计字符数量
选项,-l,统计行数
选项,-w,统计单词数量
参数,文件路径,被统计的文件,可作为内容输入端口
参数文件路径,可作为管道符的输入
写法:|
功能:将符号左边的结果,作为符号右边的输入
示例:
cat a.txt | grep itheima
,将cat a.txt的结果,作为grep命令的输入,用来过滤itheima
关键字
可以支持嵌套:
cat a.txt | grep itheima | grep itcast
功能:输出内容
语法:echo 参数
参数:被输出的内容
功能:被两个反引号包围的内容,会作为命令执行
示例:
echo `pwd`,会输出当前工作目录
功能:查看文件尾部内容
语法:tail [-f] 参数
参数:被查看的文件
选项:-n num,num显示数字,表示要显示多少行
选项:-f num,持续跟踪文件修改,显示最新添加的文件信息(最新追加的内容)
功能:查看文件头部内容
语法:head [-n] 参数
参数:被查看的文件
选项:-n num,查看的行数
选项:-v,显示文件名称信息
功能:将符号左边的结果,输出到右边指定的文件中去
标准输出重定向
>,表示覆盖输出,清空输出重定向
>>,表示追加输出,追加输出重定向
错误输出重定向
2>,清空错误输出重定向
2>>,追加错误输出重定向
标准及错误输出重定向
&>>,无论内容是否存在都放到另一个文件中
1、命令行模式
能对文件进行创建、查找、替换、修改、删除、复制、粘贴等操作、以及回到行首或行尾,指定跳转到某一行。
2、插入模式/编辑模式
向文件里面插入内容
3、末行模式
对文件进行保存、不保存、替换等操作
工作模式之间的切换
可以通过:命令 --help
查看命令的帮助手册
可以通过:man 命令
查看某命令的详细手册
CentOS系统使用:
yum [install remove search] [-y] 软件名称
install 安装
remove 卸载
search 搜索
-y,自动确认
Ubuntu系统使用
apt [install remove search] [-y] 软件名称
install 安装
remove 卸载
search 搜索
-y,自动确认
yum 和 apt 均需要root权限
功能:控制系统服务的启动关闭等
语法:systemctl start | stop | restart | disable | enable | status 服务名
start,启动
stop,停止
status,查看状态
disable,关闭开机自启
enable,开启开机自启
restart,重启
功能:创建文件、文件夹软链接(快捷方式)
语法:ln -s 参数1 参数2
参数1:被链接的
参数2:要链接去的地方(快捷方式的名称和存放位置)
语法:date [-d] [+格式化字符串]
-d 按照给定的字符串显示日期,一般用于日期计算
格式化字符串:通过特定的字符串标记,来控制显示的日期格式
%Y 年%y 年份后两位数字 (00..99)
%m 月份 (01..12)
%d 日 (01..31)
%H 小时 (00..23)
%M 分钟 (00..59)
%S 秒 (00..60)
%s 自 1970-01-01 00:00:00 UTC 到现在的秒数
修改时区为中国时区
功能:同步时间
安装:yum install -y ntp
启动管理:systemctl start | stop | restart | status | disable | enable ntpd
手动校准时间:ntpdate -u ntp.aliyun.com
格式:a.b.c.d
abcd为0~255的数字
特殊IP:
127.0.0.1,表示本机
0.0.0.0
可以表示本机
也可以表示任意IP(看使用场景)
查看ip:ifconfig
网卡文件地址:/etc/sysconfig/network-scripts/ifcfg-ens33
配置ip地址(虚拟机重启后变回原来的ip地址)
# ifconfig ens33 192.168.64.136 netmask 255.255.255.0
ip address | ip add | ip a
功能:Linux系统的名称
查看:hostname
设置:hostnamectl set-hostname 主机名
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" # 改为static,固定IP
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="1b0011cb-0d2e-4eaa-8a11-af7d50ebc876"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.88.131" # IP地址,自己设置,要匹配网络范围
NETMASK="255.255.255.0" # 子网掩码,固定写法255.255.255.0
GATEWAY="192.168.88.2" # 网关,要和VMware中配置的一致
DNS1="192.168.88.2" # DNS1服务器,和网关一致即可
永久修改主机IP进入目录
1、cd /etc/sysconfig/network-scripts
2、vim ifcfg-ens33
BOOTPROTO="static"
3、systemctl restart network
4、ifconfig ens33 ping -c3 www.baidu.com
功能:查看进程信息
语法:ps -ef
,查看全部进程信息,可以搭配grep做过滤:ps -ef | grep xxx
语法:kill [-9] 进程ID
选项:-9,表示强制关闭进程,不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。
安装nmap:yum -y install nmap
语法:nmap 被查看的IP地址
功能:查看端口占用
用法:netstat -anp | grep xxx
测试网络是否联通
语法:ping [-c num] 参数
选项:-c,检查的次数,不使用-c选项,将无限次数持续检查
参数:ip或主机名,被检查的服务器的ip地址或主机名地址
wget是非交互式的文件下载器,可以在命令行内下载网络文件
语法:wget [-b] url
选项:-b,可选,后台下载,会将日志写入到当前目录的wget-log文件
参数:url,下载链接
参数:-O,对文件重命名
参数:-p,把下载文件存放到指定目录中
注意:-O与-P不能一起使用
注意:无论下载是否完成,都会生成要下载的文件,如果下载未完成,请及时清理未完成的不可用文件。
curl可以发送http网络请求,可用于:下载文件、获取信息等
语法:curl [-0] url
选项:-O,用于下载文件,当url是下载链接时,可以使用此选项保存文件
参数:url,要发起请求的网络地址
功能:查看主机运行状态
语法:top
,查看基础信息
交互式模式中,可用快捷键:
查看磁盘占用
语法:df [-h[
选项:-h,以更加人性化的单位显示
查看CPU、磁盘的相关信息
语法:iostat [-x] [num1] [num2]
选项:-x,显示更多信息
num1:数字,刷新间隔,num2:数字,刷新几次
tps:该设备每秒的传输次数(Indicate the number of transfers per second that where issued to the device)。
"一次传输"意思是"一次I/O请求",多个逻辑请求可能会被合并为"一次I/O请求","一次传输"请求的大小时未知的。
使用iostat的-x选项,可以显示更多信息
查看网络统计
临时设置:export 变量名=变量值
永久设置:
针对用户,设置用户HOME目录内:.bashrc
文件
针对全局,设置/etc/profile
记录了执行程序的搜索路径
可以将自定义路径加入PATH内,实现自定义命令在任意地方均可执行的效果
可以取出指定的环境变量的值
语法:$变量名
示例:
echo $PATH
,输出PATH环境变量的值
echo ${PATH}ABC
,输出PATH环境变量的值以及ABC
如果变量名和其它内容混淆在一起,可以使用${}
tar -zcvf 压缩包 被压缩1...被压缩2...被压缩N
-z,表示使用gzip,可以不写
-c,创建压缩文件
-x,解压文件
-f,后面跟压缩文件名称,注意必须是最后一个参数,不能放在其他位置
-j,是以bzip2格式进行压缩解压
-v,显示压缩或解压的过程
-C,指定解压到某个目录文件中
zip [-r] 参数1 参数2 参数N
-r,递归压缩
tar -zxvf 被解压的文件 -C 要解压去的地方
-z表示使用gzip,可以省略
-C,可以省略,指定要解压去的地方,不写解压到当前目录
unzip [-d] 参数
语法:unzip [-d] 参数
-d,指定要解压去的位置,同tar的-C选项
参数,被解压的zip压缩包文件
切换用户,直接切换用户,不切换环境
语法:su [-] [用户]
-,表示切换后加载环境变量,建议带上
用户可以省略,省略默认切换到root
可以让一条普通命令带有root权限,语法:sudo 其他命令
需要以root用户执行visudo命令,增加配置方可让普通用户有sudo命令的执行权限
比如:在visudo内配置如上内容,可以让itheima用户,无需密码直接使用sudo
itheima ALL=(ALL) NOPASSWD: ALL
修改文件、文件夹权限
语法:chmod [-R] 权限 参数
权限,要设置的权限,比如755,表示:rwxr-xr-x
参数,被修改的文件、文件夹
选项-R,设置文件夹和其内部全部内容一样生效
修改文件、文件夹所属用户、组
语法:chown [-R] [用户][:][用户组] 文件或文件夹
以下命令需root用户执行
创建用户组 groupadd 用户组名
删除用户组 groupdel 用户组名
修改用户组 groupmod -g 用户组名
useradd:用来添加一个新用户,注意:使用该命令添加用户时,不跟任何参数会自动添加一个同名的用户组;
参数 -u,用户的uid
参数 -g,用户的组gid
参数 -u,用户的uid
参数 -d 指定用户的家目录(默认情况下用户的家目录时/home/)
参数 -c 表示注释信息
参数 -s 指用户使用bash信息
参数 -G 指定用户的扩展用户组
userdel:删除用户,默认情况下会把同名用户组删除
注意:用户组如果被其他用户作为扩展组或用户组,删除用户时,只会把用户删除,同名的用户组不会被删除,除非解除占用;
参数 -r 删除用户家目录
参数 -f 强制删除,即用户被占用也同样会删除
useradd: 修改用户的基本信息
参数 -u,用户的uid
参数 -g,用户的组gid
参数 -G,修改用户的扩展组
参数 -d ,修改用户的家目录,注意需要提前创建家目录
id: 查看用户的属性信息
参数 -u ,查看用户id编号
参数 -g ,查看用户组id编号
参数 -G,查看用户扩展组id编号
参数 -n ,显示名称但需要其他参数使用
getenv group
,查看系统全部的用户组
getenv passwd
,查看系统全部的用户
查看系统全部的环境变量
语法:env
用来为用户或特定用户修改登录密码,该命令默认情况只能由超级管理员来使用
语法:passwd 用户名称
参数 -l ,锁定用户,不让登录
参数 -u,解除锁定
参数 -d,允许空密码登录
参数 --stdin ,标准输入
向上箭头:执行之前执行过的命令
重启:init 6
关机:init 0
根据用户编号(UID)分类
在Linux中,0~7通常用来表示文件或目录的权限。这些权限分为三个组:所有者、群组和其他用户。每个组都有三个权限位:读(r)、写(w)和执行(x)
其中,数字0~7用来表示权限的组合。每个权限位都有一个特定的数值:
- 0表示没有权限(---)
- 1表示执行权限(--x)
- 2表示写权限(-w-)
- 3表示写和执行权限(-wx)
- 4表示读权限(r--)
- 5表示读和执行权限(r-x)
- 6表示读和写权限(rw-)
- 7表示读、写和执行权限(rwx)
/etc/passwd
用来保存用户的基本信息,包括用户名、备注内容、家目录、是否能够登录bash
root:x:0:0:root:/root:/bin/bash
/etc/group
用来保存用户组相关内容
root:x:0:
/etc/shadow
用来保存与密码相关的内容,该文件只能由超级管理员来查看
root:$6$Z6F/vqsu$RuM28SqnsFZS9cVfosPdgiqSPSbmdnKOXfI5rgizzCP6QezgBCgT/mS5m7I8WAFO9JKKjbRVzYX13ky6E9cQN/:19583:0:99999:7:::
drwxr-xr-x.2 root root 6 8月 8 11:42 桌面
drwxr-xr-x.