目录
操作系统?
Linux背景简介?
Linux体系结构?
Linux内核与发行版本?
虚拟机?
Linux系统安装(虚拟机里)?
Linux文件系统?
Linux 基本指令?
Vi编辑器(非常重要)?
远程连接Linux?
一些常用操作?
Linux上安装JDK?
操作系统?
- 操作系统:管理操纵硬件和应用软件的一套程序,比如Windows系列、Linux系列。
- Linux:一套免费使用和自由传播的类UNIX操作系统,支持多用户、多任务、多线程和多CPU。
使用相当广泛:你的手机、你家的电视机顶盒、甚至你取款的 ATM,都是基于林纳斯·托瓦兹做的 Linux 系统改的
Linux背景简介?
- 1969年 Unix v1
Ken Thompson、Dennis Ritchie、Douglas McIlroy 于贝尔实验室开发,“Multiplexed Information and Computing Service”,但到1970年只支持2个用户,于是被笑称为 “UNiplexed Information and Computing Service”,缩写就是UNICS,后面取谐音就称其为"UNIX"了
- 1973年 Unix v3
Ken Thompson 与Dennis Ritchie优化编程语言BCPL,诞生了B语言,C语言,成功地用C语言重写了Unix的第三版内核
- 1979年 Unix v7
收费,贵!!!
- 1985年 GNU计划
Richard Stallman,黑客,创造一套完全自由免费,兼容于Unix的操作系统
- 1991年 Linux内核诞生,之后跟GNU软件结合,1994年3月,Linux1.0发布……
Linus Torvalds,黑客,Linux = Linus’s Unix,他再更新Linux内核过程中还随带写出了另一款很牛逼的软件git(版本控制软件,github就是基于git创建的)
Linux体系结构?
Linux内核与发行版本?
- 内核:软件与硬件交互的平台,提供系统服务,文件管理,内存管理,i/o管理,进程管理等。
- 发行版:内核 + 软件
- 常用发行版:Red Hat / CentOS、Debian / Ubuntu
虚拟机?
- 虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的计算机系统。
- 流行的虚拟机软件有VMware Workstation、Virtual Box和Virtual PC
- VMware Workstation的安装:略
- 虚拟机的网络模式
- 仅主机模式
- 桥接模式
- NAT模式(我们选择这个模式)
Linux系统安装(虚拟机里)?
- 打开VMware Workstation
- 在库面板空白处点击右键,选择新建虚拟机
- 一直 下一步 直到选择光盘镜像,选好Linux系统安装包路径后,继续下一步
- 个性化Linux界面
- 继续下一步,到网络连接下选项时选择 NAT ,又继续下一步,到分配磁盘界面根据自己电脑配置去分配大小,学习大数据的话20G比较合适,(注意,这个大小是决定此虚拟机的最大硬盘容量,以后不能修改的),选择 “将虚拟磁盘拆分为多个文件”(为方便移动虚拟机)
- 一直点击下一步,直到点击了完成
- 然后就开始了自动安装的过程,根据个人计算机配置不同,花费时间10-30分钟不等
注: 可能有同学的机器主板设置未开启虚拟化,需要重启电脑进bios开启虚拟化。
Linux文件系统?
- 文件系统格式
- Linux:ext4、ext3、xfs (查看分区文件系统类型:parted -l)
- windows:NTFS、fat32
- 整个文件系统可以看做是一棵树,不会根据扩展名判别文件类型,会根据内容自动判断类型。在创建文件时,可以人为的添加扩展名,方便区分
- 命名规则
- 除了 / 之外,所有的字符都合法
- 有些字符最好不适用,比如空格符、制表符、退格符和字符 : ? ,@ # $ & () \ | ;" "" <> 等等
- 避免使用+ 、 - 或 . 来作为普通文件名的第一个字符
- 大小写敏感
- 常见目录用途
- / 根目录
- /bin|/sbin|/usr/bin 存放可执行的二进制文件
- /boot 存放启动时文件
- /dev 存放和挂载设备文件
- /etc 配置文件存放的目录
- /home 用户的家目录
- /root root用户的家目录
- /mnt|/media 光盘挂载点
- /usr 安装程序目录
- /var 存放经常变化的文件
Linux 基本指令?
- 命令行含义:
[用户名@主机名 当前目录]#
#表示root用户, $表示普通用户 - 常用shell指令
- su (用法:su 用户名,切换用户)
- pwd (显示当前工作目录)
- cd (改变工作目录)
- cd path(进入指定目录)
- cd ..(返回上级目录)
- cd ~(返回用户主目录)
- cd -(返回上次操作的目录)
- ls(用法:ls [参数] 路径 ,显示目录内容列表)
- -l(详细信息显示,可用 ll 代替)
- -a(显示所有子目录和文件的信息,包括隐藏文件)
- -A(类似于“-a”,但不显示“.”和“..”目录的信息)
- -R(递归显示内容)
- -h(以友好方式显示文件大小)
- touch(用法:touch 路径,创建空文件或更新文件时间标记)
- mkdir(用法:mkdir [参数] 路径,创建文件夹)
- -p(级联的方式创建文件夹,上级目录不存在自动创建)
- file(用法:file 路径,查看文件类型)
- cp(用法:cp [参数] 源文件或目录… 目标文件或目录)
- -r(递归复制整个目录)
- mv(用法:mv [参数] 源文件或目录… 目标文件或目录)
- 源和目标 目录一样时就是重命名的效果
- cat (用法:cat [参数] 文件路径,查看目标文件的内容)
- -n (显示行号)
- rm(用法:rm [选项] 文件或目录,删除指定文件或目录)
- -f(强行删除文件或目录,不进行提醒)
- -i(删除文件或目录时提醒用户确认)
- -r (递归删除整个目录树)
- rm -rf /(删除整个linux系统的文件,从删库到跑路!)
Vi编辑器(非常重要)?
vi编辑器是Linux和Unix上的标准文本编辑器,相当于windows上的记事本,功能更强大。vim是增强版的vi。
vi编辑器的三种模式?
- 命令模式
- 使用vi/vim 文件名 进入编辑器后就是命令模式
- 可以进行复制、剪切、粘贴、删除等操作
- 命令行模式下保存并退出:输入 ZZ
- 命令模式下按一下冒号进入底行模式(shift+:)
- 插入模式(左下方出现 INSERT)
- 在命令模式下按字母 i 进入 Insert mode,插入模式下可以输入文字
- 插入模式按esc返回命令模式
- 底行模式(最下方出现冒号)
- w 文件名(以指定的文件名保存)
- wq (存盘并退出vi)
- q! (不存盘强制退出vi)
远程连接Linux?
SecureCRT、XShell等软件都可以,这里我们使用SecureCRT
一些常用操作?
- 查看网络接口状态
- ifconfig(对应windows里 ipconfig)
- 配置静态IP
- sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0
- 修改 bootproto 为 static
- 添加 IPADDR=192.168.25.91,NETMASK=255.255.255.0,GATEWAY=192.168.25.2,PREFIX=24
- 测试网络
- ping 地址(自动无限循环,windows要加 -t)
- 主机名
- 查看:hostname
- 修改(临时生效):hostname 名字
- 修改(重启永久生效,centos6):vi /etc/sysconfig/network
- 对防火墙的操作
- 防火墙是位于内部网和外部网之间的屏障,它按照系统管理员预先定义好的规则来控制数据包的进出
- service iptables status:查看防火墙状态
- service iptables start:开启防火墙
- service iptables stop:关闭防火墙
- chkconfig iptables on:开机自启
- chkconfig iptables off:关闭开机自启
- 系统启动级别
- 查看级别:runlevel
- 修改启动级别:vi /etc/inittab(centos6,0-6,改为3)
- 切换用户
- su 用户(可带参数“-”,表示切换用户及用户对应的环境变量)
-
文件权限
我们执行 ls -l (或者 ll )指令后,得到如下内容
- 前10个字符就表示不同的用户能对这个文件做什么样的操作
- 第一位表示文件的类型(-表示文件、d表示目录、l表示链接)
- 其余9位字符每3个一组(rwx),读(r)、写(w)、执行(x)
- 第一组:文件所有者的权限
- 第二组:与文件所有者同一组的用户的权限
- 第三组:不与文件所有者同组的其他用户的权限
- 接下来的数字表示连接数,就是该目录下面的目录的个数,包括隐藏的.和..目录
- 第一个root表示用户
- 第二个root表示用户所在的组
-
在后面就分别是文件大小与最后修改时间,最后就是文件名
-
权限修改
- chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限
- chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限
- chmod a+r abc:给所有用户添加读的权限
- chmod 755 abc:赋予abc权限rwxr-xr-x(用数字表示为:r=4,w=2,x=1)
Linux上安装JDK?
- 从windows上传压缩包到Linux
- 使用sftp连接到远程主机( sftp 主机名 或者在工具里按快捷键 alt + p )
- pwd 查看在目标机器工作目录,上传后的文件就在这里,可以使用 cd 指令切换
- lpwd 查看在本机的工作目录,下载后的文件就在这里,可以使用 lcd 切换
- put jdk安装包路径 (路径不要带中文)
- 使用sftp连接到远程主机( sftp 主机名 或者在工具里按快捷键 alt + p )
- 解压到指定目录 (比如:/usr/local)
- tar -zxvf 压缩包路径 -C 目标路径(目标路径不存在则需要先创建:mkdir xxxxx)
- 配置环境变量
- vi /etc/profile(打开保存环境变量的文件)
- 在最后面加入以下语句:
export JAVA_HOME=jdk路径
export PATH=$PATH:\$JAVA_HOME/bin:$JAVA_HOME/jre/bin
然后保存并退出vi编辑器 - source /etc/profile(使用该指令重新加载一次环境变量,使新配置的环境变量生效)
- 输入 java -version 检验jdk是否安装成功
- 看到以下内容表示安装成功