Linux
Linux分支
- RedHat(收费)
- CentOS
- 不要使用最新版的CentOS
- 主要用于服务器版本
- Debain(免费)
- Ubuntu
- 视窗界面良好的Linux系统
- 一些主流的软件都支持Ubuntu系统
虚拟机安装
- 虚拟化技术
- 可以更好的利用计算机闲置的资源
- 我们可以在计算机中虚拟出多台虚拟机帮助我们执行程序或者业务
- 虚拟机的各种组成理论上和真实主机是一样的
- 如果要使用这种技术只需要安装对应的软件即可
Linux操作系统的安装
Linux下载
配置常见参数
网络
-
查看自己虚拟网卡地址
- 编辑–>虚拟机网络编辑器–>vmnet8
-
修改网络配置信息
-
修改网络信息
-
vi/etc/sysconfig/network-scripts/ifcfg-ens33 -
--修改
ONBOOT=yes
BOOTPROTO=static //静态网络IP dhcp 动态获取网络IP
--添加
IPADDR=192.168.58.100
NETMASK=255.255.255.0
GATEWAY=192.168.58.2
DNS1=114.114.114.114
删除------
UUID
-
重启网卡重新加载配置文件
- ip addr
- systemctl restart network.service
- ping www.baidu.com(能ping通代表配置没问题)
- ctrl+c终止
防火墙
- 保护本机端口不被别人访问;如果端口需要被别人访问到,需要添加端口的防火墙例外
- 关闭防火墙(学习使用Linux建议直接关闭防火墙)
- 本次开机状态下防火墙关闭
- systemctl stop firewalld(本次服务内关闭防火墙,下次开机还会开启)
- 服务器重启后防火墙禁用
- systemctl disable firewalld(禁用防火墙,重启后一直禁用)
软件安装限制
拍照与克隆
- 拍摄快照
- 转到
- 克隆
- 复制某一个历史快照节点
- 克隆的方式
- 链接克隆
- 当前节点文件夹只存储差异性数据
- 相同数据存放在原始节点上
- 优点:节省硬盘空 缺点:耦合性大
- 完整克隆
- 就是基于原始节点完全拷贝到新节点的文件夹中
- 优点:耦合性低 缺点:硬盘空间使用大
- 推荐使用完整克隆
- 克隆后需要修改克隆机配置
- 修改网络信息,如上配置即可
- 修改主机名
- vi/etc/hostname/ 修改完后需要重启生效
- hostname bd16 本次启动中有效,重启后还是使用原来的
Linux命令
- Linux命令与参数之间必须用空格隔开
- Linux命令是区分大小写的
常用的基础命令
- 关机
- halt 相当于直接拔掉电源
- poweroff 直接关闭机器
- shutdown -h now 马上关闭,但是可以给其他用户发送消息(建议使用)
- reboot 重启
- whereis 查询命令文件的位置
- file 查看文件的类型
- who 查看当前在线的用户
- whoami 我是谁
- pwd 我在哪
- uname -a 查看内核信息
- echo 打印语句(类似于sout)
- clear 清屏
- history 历史
特殊字符
-
.点:
- 一个文件的开始是.说明当前文件是一个隐藏文件
- .指向当前目录
- …指向当前目录的上级目录
-
$ 美元符号
- 说明这是一个变量(常用于$PATH Linux 的环境变量)
-
*星号 通配符 -
~ 波浪线
- 当前用户的家目录
- 每个用户的家目录是不同的
- root用户家目录在系统根目录下
- 其他用户的家目录在/home/用户名
-
空格 Linux的命令与参数用空格隔开 -
/ 整个Linux的文件根目录 -
命令的参数
- 如果是单词一般加 – (两个横杠,如rpm --install)
- 如果是字母或者缩写一般加 - (一个横杠,如ls -a)
Linux文件系统
万事万物接皆文件
- 文件系统:操作系统如何管理文件,内部定义了一些规则
- 在Linux中所有的东西都是以文件的方式进行操作的
- 在Linx中,文件访问不和Windows一样,Windows依靠的是通过盘符访问,Linux维护着一个树状结构的文件模型
- 只有一个根节点,他的名字叫做/
- 一个节点上可以有多个子节点
- 查找文件的方式
- 相对路径,以当前路径为基准点,查找其他资源。(如vi …/etc/sysconfig/network)
- 绝对路径,以根目录为基准点,查找其他资源。(如vi /etc/sysconfig/network-scripts/ifcfg-ens33)
- 日常使用中没有特殊要求,但是如果是一些配置文件,尽量写绝对路径
- 可以随意的挂载磁盘
Linux二级文件目录
- /bin:bin是Binary的缩写,这个目录存放着最经常使用的命令。
- /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
- /dev:dev时Device的缩写,该目录下存放的时Linux的外部设备,在Linux中访问设备和文件的方式是相同的。
- /etc:用来存放所有的管理系统所需要的配置文件和子目录
- /home:用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号名命名的
- /lib:存放着系统最基本的动态连接共享库,作用类似于Windows里的DTL文件。几乎所有的应用程序都需要用到这些共享库
- /lost+found:这个目录一般是空的,当系统非法关机后这里就会存一些文件
- /media:Linux会自动识别一些设备,如U盘光驱等,会把识别的设备挂载到这个目录下。
- /mnt:提供该目录是为了让用户临时挂载别的文件系统的。
- /opt:这里是给主机额外安装软件所摆放的目录。
- /proc:这个目录是一个虚拟的目录,它是系统内存的映射,可以通过直接访问这个目录来获取系统信息。
- /root:该目录为系统管理员的用户主目录
- /sbin:这里存放的是系统管理员使用的系统管理程序
- /selinux:这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
- /srv:该目录存放一些服务器启动之后需要提供的数据
- /sys: 该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。 sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件 系统以及针对伪终端的devpts文件系统。该文件系统是内核设备树的一个直观反映。 当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
- /tmp: 这个目录是用来存放一些临时文件的。
- /usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的 program files目录(装系统软件)
- /usr/bin: 系统用户使用的应用程序。
- /usr/sbin: 超级用户使用的比较高级的管理程序和系统守护程序。
- /usr/src: 内核源代码默认的放置目录。
- /var: 这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件
- /run: 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。 如果你的系统上有 /var/run 目录,应该让它指向 run。
Linux的文件操作
- cd 改变当前工作目录
- li/ll 显示出指定目录下的作用文件
- -a 显示所有文件及目录 (包括以“.”开头的隐藏文件)
- mkdir 创建文件目录(文件夹)(已存在则提示已存在,不可创建父目录)
- rmdir 删除空目录(空文件夹)
- -p 用递归的方式删除指定的目录路径中的所有父级目录,非空则报错
- cp 拷贝文件或目录
- cp 源文件 目标目录
- -r 递归复制文件和目录,拷贝文件夹下所有内容
- mv 移动文件或者文件夹
- rm 删除文件
- -f 直接删除文件且不会提示
- -r 删除文件夹会提示
- rm -rf 直接删除目录以及目录下所有文件且不提示(谨慎使用)
- touch 创建文件(没有就新建,已存在修改文件时间戳(三个时间))
- stat 显示文件详细信息
- ln 为文件创建硬链接
- -s 为文件创建软链接(符号链接)
- 软链接和硬链接
- 通俗一点理解,可以把硬链接当成源文件的副本,他和源文件一样的大小,但是事实上却不占任何空间。符号链接可以理解为类似windows一样的快捷方式。
- 软链接以路径形式存在,类似于快捷方式
- 软链接可以跨文件系统,硬链接不可以
- 软链接可以对一个不存在的文件名进行链接,硬链接不可以
- 软链接可以对目录进行链接,硬链接不可以
读取文件的信息
-
cat 将整个文档加载到内存中,并进行一次性显示,除非后面使用管道传递数据 -
tac 整个文档加载到内存中,并进行一次性的按行逆序显示 -
more less
-
head 以行为单位,取文件的内容,后面不接参数时默认打印前10行。
-
tail 用于显示文件尾部的内容,默认在屏幕上显示指定文件的末尾10行
tail +20 file 显示文件file的内容,从第20行至文件末尾 head -3 profile | tail -1 - 读取(监听新增数据)
- -f 监听指定inode的文件数据变化,当文件删除后,即使新创建,inode也会变化所以就会监听失败
- -F 会监听指定名字的文件,如果文件被删除后重新创建,会重新监听新文件的数据变化,监听不受影响
-
find 查找和搜索指定文件
find /etc -name vitprofile 查找etc目录下名字为profile的文件
VI和VIM编辑器
打开文件
- 正常打开
vi profile - 打开文件,并将光标置于第8行
vi +8 profile - 打开最后一行
vi + profile - 打开指定搜索单词的位置
vi +/if profile
三种模式
- 编辑模式 编辑模式中每一个按键都有他的功能
- 输入模式 每一个按键按下什么,就像文本中数据
- 末行(命令行模式) 我们可以直接在VI中输入特点的命令
三种模式切换
-
编辑模式–>输入模式
- i 在当前位置插入数据
- a 在当前位置之后追加数据
- o 在当前行后面开启一个新的输入行
- I 行首 A行尾 O 上一行
-
输入模式–>编辑模式
-
编辑模式–>末行模式
-
末行模式–>编辑模式
编辑模式
- G 最后一行
- gg 跳转到第一行
- 数字gg 跳转到第几行
- w 下个单词
- dw 删除一个单词
- 3dw 删除三个单词
- dd 删除一行
- 3dd 删除三行
- u 回退到前面的操作
- . 回退u执行的操作
- yw 复制一个单词
- 3yw 复制三个单词
- yy 复制一行
- 3yy 复制三行
- p 粘贴
- 6p 粘贴6次
- x 剪切
- 3x 剪切三个字符
- r替换,然后输入一个字符替换
- 3r 替换3个
- ZZ 保存并推出
- ctrl+s 锁屏 ctrl+q解锁
输入模式
末行模式
- set nu 设置行号
- set nonu 取消行号
- w 保存
- q 推出
- wq 保存并推出
- q! 强制推出,但是不保存
- 如果上次异常退出会保留同名隐藏文件,每次启动会给与提示;如果确定当前文件没问题,请删除隐藏文件
- /xxxx 搜索指定的字符串
- s/a/b a替换为b,替换当前行第一个
- g替换当前行所有
- 替换全文 g/a/s//b/g 全文a替换为b
计算机间的数据传输
Windows --> Linux
- lrzsz
- 需要手动安装
yum install lrzsz -y - rz 将文件从Windows上传到Linux
- sz 将文件从Linux传输到Window
- xftp 较为通用的文件传输方式
Linux–> Linux
- scp 源数据地址 目标数据地址
scp root@192.168.10.10:/opt/soft/rhel-server-7.3-x86_64.tar.gz /opt/soft 从远程复制文件到本地目录scp -r root@10.10.10.10:/opt/soft/mysql /opt/soft/ 从远程复制目录到本地scp /opt/soft/rhel-server-7.3-x86_64.tar.gz root@192.168.10.10:/opt/soft/scptest 上传本地文件到远程机器指定目录
文件大小
文件压缩
tar
- 主要针对的文件是 xxx.tar.gz
- 解压缩
tar -zx(解压)v(过程)f(文件) lucky.tar.gz
tar -zxf tomcat.tar.gz -C /opt/ -C 指定解压缩的文件目录 - 压缩
tar -zc(压缩)f(文件) tomcat.tar.gz(压缩后的名字) apache-tomcat-7.0.61(源文件)
zip和unzip
文件大小
文件压缩
tar
- 主要针对的文件是 xxx.tar.gz
- 解压缩
tar -zx(解压)v(过程)f(文件) lucky.tar.gz
tar -zxf tomcat.tar.gz -C /opt/ -C 指定解压缩的文件目录 - 压缩
tar -zc(压缩)f(文件) tomcat.tar.gz(压缩后的名字) apache-tomcat-7.0.61(源文件)
zip和unzip
|