linux学习笔记--基础
一、学习初衷
本来想学一下Git,但Git需要用到很多linux指令,正好之前做嵌入式开发就想学linux来着,趁此机会学习一下,在此记录学习笔记。
linux 应用的广泛度很高,也很出名,想学的人自然知道linux的好处,在此就不重复那些了,下面直接进入学习。
二、环境搭建
由于linux是一个操作系统,而我们用的windows也是操作系统,所以需要安装一个虚拟机,然后在虚拟机上安装一个linux系统来学习。
在此之前首先说一下linux的发行版,由于linux只是一个内核,相当于一个裸机,我们不能直接在内核上应用。很多公司用linux内核加上一些库和应用程序就形成了我们能直接使用的发行版,这些发行版主要有:Redhat(Redhat,CentOS),Ubuntu,Suse,红旗Linux。Redhat在研发时又新推出了CentOS,所以这里相当于Redhat家族中存在Redhat发行版和CentOS发行版,本篇使用的就是CentOS6.8版本。
首先安装虚拟机VM12(安装文件和安装教程自行查找,也可评论留下邮箱我发给你);
- 打开软件创建新的虚拟机,选择典型配置 – 稍后安装操作系统 – Linux(版本CentOS 64位)-- 名称和位置自定,推荐放到安装目录下新建一个文件夹(剩余空间最好大于20GB) – 磁盘20GB,拆分成多个文件 – 完成。
- 编辑虚拟机配置,内存选择2048MB – 处理器根据自己电脑的CPU数量选择,可在设备管理器-处理器中查看有几个 – CD/DVD选择使用ISO映像文件,选择centos的.iso文件 – 网络适配器选择NAT模式,这里介绍三种模式的区别:
- 桥接模式:linux可以和其它的系统在局域网通信,如本机地址为192.168.0.20,另一个系统地址为192.168.0.32,但在环境内只能有253个ip地址,其中只有20或32可以变,其它的192,168,0都不可以变(去掉网关地址1,广播地址255),系统过多时可能会造成ip冲突。
- NAT模式:网络地址转换方式,如地址为192.168.0.20,其中的0也可以变,这代表可以访问外网,并不局限在局域网内,由于数量增大了平方倍,所以不会造成ip冲突。
- 主机模式:你的linux是一个独立的主机,不能访问外网。
- 打开虚拟机:稍等片刻检测文件,在Disc Found检测磁盘界面一定要点跳过,不然需要很长时间。鼠标点击虚拟机内鼠标箭头消失,按Tab键切换,想跳到Windows按ctrl+alt,鼠标箭头就会弹出。
- 蓝色选择界面直接点击回车,稍等片刻后点击下一步,选择中文简体
- 美国英语式
- 基本存储设备
- 是,忽略所有数据
- 主机名这里取hadoop1(大数据中都用这个命名)
- 选择城市:亚洲/上海
- 自行设置密码
- 创建自定义布局(这里介绍布局用)
- 创建/创建标准分区/挂载点选择boot(引导文件)/其它默认/确定 – 创建/创建标准分区/文件系统类型选择swap交换分区(虚拟内存,当内存不够用时用swap内存代替)/大小输入2048/其它默认/确定 – 创建/创建标准分区/挂载点选择第一个(斜杠)/其它大小选项选择使用全部可用空间//其它默认/确定
- 下一步
- 格式化
- 将修改写入磁盘
- 下一步
- 最下面选择现在自定义/下一步
- 只有这几个选,其它默认选的也要取消掉:基本系统/兼容程序库、基本、调试工具,应用程序/互联网浏览器,桌面都保留,语言支持/中文支持
- 下一步,等待约20分钟安装过程
- 安装完成后点击重新引导
- 前进,前进,创建用户这里不用管,直接点前进,选择是
- 时间设置就直接用默认的,前进
- Kdump这里取消勾选启用kdump,点完成,选择是,确定
- 稍等片刻后点击其他,用户名输入root(暂时用root),密码输入刚才设置的,点登录,弹出的窗口点关闭即可,下面是登录成功界面
三、CentOS的终端使用和联网
- 点击鼠标右键,选择在终端中打开,点击编辑-侧写首选项-颜色,可设置自己喜欢的界面样式
- 点击图片中最右侧图标,选择System eth0,连接虚拟网卡
四、vmtools安装
为了实现在windows和centos之间复制粘贴,并且在windows和centos之间建立一个共享的文件夹,就必须要安装vmtools工具。
- 点击VM菜单栏的虚拟机,安装VMware Tools,选择 .gz 文件右键复制
- 在虚拟机中双击计算机/文件系统/opt 文件夹,右键粘贴
- 右键.gz文件,解压缩到此处,之后双击vmware-tools-distrib
- 双击vmware-install.pl文件,点击在终端中运行
- 一直回车,直到终端关闭
- 在虚拟机桌面右键在终端中打开,输入rebook回车,等待重启
- 这时就可以从windows复制粘贴到虚拟机了,当然也可以反过来复制粘贴,可以右键创建文档/空文件 进行测试
- 菜单栏选择虚拟机/设置/选项/共享文件夹,选择总是启用,在文件夹处添加/下一步/主机路径选择需要共享的文件夹,点击下一步/完成
- 将要共享的文件夹设置为共享,重启CentOS,打开计算机/文件系统/mnt/hgfs(共享文件夹默认是放到这里),就可以看到windows上的文件夹了。
五、Linux的目录结构
windows中有C盘、D盘、E盘等等,而Linux只有一个根目录,相当于只有一个C盘,然后在根目录下再创建其他的目录。
一句经典的话:在Linux世界里,一切皆文件。像声卡、硬盘类的硬件也都成为了一个文件进行管理。下面是Linux的实现规划好的默认目录,文件不能乱放,且Linux是以文件的形式管理我们的设备。
具体的目录结构如下:
- /bin [重点] (/usr/bin、/usr/local/bin)
- 是Binary的缩写, 这个目录存放着最经常使用的命令
- /sbin (/usr/sbin、/usr/local/sbin)
- s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
- /home [重点]
- 存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
- /root [重点]
- 该目录为系统管理员,也称作超级权限者的用户主目录。
- /lib
- 系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
- /lost+found
- 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
- /etc [重点]
- 所有的系统管理所需要的配置文件和子目录 my.conf
- /usr [重点]
- 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
- /boot [重点]
- 存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
- /proc(内核部分,不要修改)
- 这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息。
- /srv(内核部分,不要修改)
- service缩写,该目录存放一些服务启动之后需要提取的数据。
- /sys(内核部分,不要修改)
- 这是linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统
- /tmp
- 这个目录是用来存放一些临时文件的。
- /dev
- 类似于windows的设备管理器,把所有的硬件用文件的形式存储。
- /media [重点]
- linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后, linux会把识别的设备挂载到这个目录下。
- /mnt [重点]
- 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了。(刚才设置的共享文件夹)
- /opt
- 这是给主机额外安装软件所摆放的目录,如安装ORACLE数据库就可放到该目录下,默认为空。
- /usr/local [重点]
- 这是另一个给主机额外安装软件所安装的目录,一般是通过编译源码方式安装的程序。
- /var [重点]
- 这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下,包括各种日志文件。
- /selinux [security-enhanced linux]
- SELinux是一种安全子系统,它能控制程序只能访问特定文件,在黑客入侵时可以在这里看到具体发生了什么,类似360。