之前在大学学过linux,出来工作发现linux不只是一个系统而已,KALI也是封装在Linux上,磨刀不误砍柴工,于是,又撸起了linux
一:LIUNIX发展历史
1、1969年,肯·汤普森在DEC PDP-7机器上开发了unics系统,(即Unix的原型)
2、1971,肯汤普森的同事丹尼斯·里奇发明c语言,1973,unix系统的绝大部分源码用c语言重写。这为提高unix系统的可移植性打下基础。
3、1984,Tanenbaum教授为了教学需要,参照unix编写Minux
linux诞生于1991,李纳斯和后来陆续加入的众多爱好者共同开发,linux是开源软件,源代码开放的Unix。
4、1984年,Stallman开始GNU(GNU's Not Unix)项目,创办FSF(Free Software Foundation)基金会
5、1991年,芬兰赫尔辛基大学的研究生Linus Torvalds基于gcc、bash开发了针对386机器的Lniux内核
二:概念
1、linux内核:系统的核心,运行程序和管理
2、shell(命令解释器):是系统的用户界面,提供了用户与内核进行交互操作的一种接口
3、文件系统:文件存放的磁盘等存储的组织方法
windows:FAT32,NTFS
linux:etx3,etx4,brtfs
4、内核版本:主版本号+次版本号+修正号
三、安装linux系统须知
1、磁盘分区:是使用分区编辑器,在磁盘上划分几个逻辑部分,碟片一旦划分成数个分区,不同类的目录与文件可以存储进不同的分区。这是一个操作系统规划的重中之重, 系统以后的扩展性,和安全性都与这步很有关系
分区类型:
(1.)主分区(Primary Partition):最多只能有4个。
(2.)扩展分区(Extension Partition):最多只能一个
主分区加扩展分区最多有4个
扩展分区不能写入数据,只能包含逻辑分区
(3.)逻辑分区(Logical Partition)
可以正常的格式化,和读写数据
如图,boot,etc是根目录的子目录,同时又是一个独立的分区
正确的分区就可以写入数据了?不是,还必须经过格式化
2、格式化:高级/低级格式化
格式化:(高级格式化)又称逻辑格式化,它是格局用户选定的文件系统(如FAT16,FAT32,NTFS,EXT2,EXT3,EXT4等),在磁盘的特定区域写入特定数据,在分区中划出一片用于存放文件分配表、目录表等用于文件管理的磁盘空间。(格式化的主要工作是写入文件系统,文件系统所做的工作是将硬盘分成一个一个等大小的数据块,同时建立一个inode列表)
如:ext4默认进入格式化的时候,将 磁盘分成一个一个等大小的数据块,一个数据库默认的标准大小为4kb,如果数据大小为10kb,第三个为2kb,剩下的2kb不再放入数据。但数据分列是散开的,不是放在一起的,所以windows上有个磁盘整理,就是尽量的把数据块放在一起,便于数据的读取。
文件分区表:i节点号,i节点看作是一个指向磁盘上该文件存储区的地址,我个人把他类是为url,都是一个唯一的标识地址,只不过i节点无法直接使用。
3、硬件设备文件名
硬件 | 设备文件名 |
IDE硬盘 | /dev/hd[a-d] |
SCSI/SATA/USB硬盘 | /dev/sd/[a-p] |
光驱 | /dev/cdrom或/dev/sr0 |
软盘 | /dev/fd[0-1] |
打印机(25针) | /dev/lp[0-2] |
打印机( USB) | /dev/usb/lp[0-15] |
鼠标 | /dev/mouse |
4、分区设备文件名
/dev/hda1 (IDE硬盘的第一个分区)
/dev/sda1 (scsi硬盘接口,sata硬盘接口)
1,2,3,4四个分区号只能给主分区和扩展分区使用,逻辑分区从5开始
5、挂载
linux中拿空的目录名称来作为盘符,理论上任何一个目录都可以作为盘符,只是理论上,但有些不可以
(1.)必须的分区
/(根分区)
swap分区(交换分区)虚拟内存,
men<4G,swap=menx2
4G<men<16G.swap=men
men>16G,swap=16G
(2.)推荐分区
/boot(启动分区,200MB)假如根分区写满了,linux就会启动不起来
linux与windows相比:
盘符——挂载点
给分区分配盘符的过程——挂载
我们来理下安装linux的步骤:
分区——格式化——设备名称——挂载
分区:把大硬盘分为小的逻辑分区
格式化:写入文件系统
分区设备文件名:给每个分区定义设备文件名
挂载:给每个分区分配挂载点(1.挂载点必须是目录;2.目录必须是空目录)
下来开始安装(基本也是傻瓜式操作,这里解释下几步关键步骤)
说明:
1、虚拟机非常智能,第一次启动,没有操作系统会自动调整为光盘启动,有操作系统又会自动调整会硬盘启动,但真实机没有,需要更给为光盘启动,装完后还需改回硬盘启动。
2、内存必须大于628兆,才能进入图形界面。
3.将我们下载好的镜像放入使用。
4.发现磁盘,是否需要检测,我们选择skip。
5、设置必须的分区,这里无论先设置谁的分区,/boot都会是sda1。
当然还有一点是必须提的,这也是我之前在学linux的时候,我们老师也强调过的,那就是密码原则。
密码原则:
1.复杂性:
八位字符以上、大小写字符、数字、符号
不能是英文单词
不能是和用户相关的内容
2.易记忆型
3.时效性
还记得那个时候,老师和我们说了一个国外公司设置密码的方式,将自己未来短期的目标设置为自己的目标,不但不会忘记,而且还时常的提醒自己(不得不感慨,上学的时候,才是最美好的时刻。。。)
下一步下一步之后,我们就安装好了linux,我们先打开终端,先ls查看下
/root/install.log 存储了安装在系统中的软件包及其版本信息
/root/install.log.syslog 存储了安装过程中留下的事件记录
/root/anaconda-ks.cfg 以Kickstart配置文件的格式记录安装过程中设置额
Kickstart:自动化安装linux的一外包
四、远程登录管理工具
先来说下我之前一直很糊涂的问题,现在慢慢的理解了,虚拟机的几种网络连接模式。
桥接模式:虚拟机利用真实网卡与真实机进行通信,与真实机在同一个网段,可也真实机同一网段的其他主机通信(会占用一个ip)
NET模式:用vmnet8虚拟网卡与真实机进行通信,如果真实机可以访问互联网,虚拟机也能访问互联网
仅主机模式 :用vmnet1虚拟网卡与真实机进行通信,但仅能和本机通信
vmnet1和8只能和真实机通信,不能和局域网其他主机通信
我们这里使用NET模式
我vmnet8的是在192.168.154.0网段的。
我们可以先用ifconfig eth0 192.168.154 暂时修改下ip地址,(重启后会失效,永久需要更改配置文件)和vmnet1在同一个网段
因为我的真实机可以连接互联网,所以,我虚拟机也就可以上网了。
secureCRT
crt相互应该都会用了,这里就是提下就好了
这里需要说明的是:我们安装中文版,crt显示中文的时候可能会乱码
我们在会话选项中设置外观的字体为UTF-8就可以了。
linux的注意事项:
1、linux严格区分大小写(windows不分区大小写)
2、linux中所有内容能够以文件形式保存,包括硬件
3、linux不靠扩展名区分文件类型,但不全都没有扩展名
压缩包:*.gz、*.bz2、*.tar.bz2、*.tgz等
二进制软件包:.rpm
网页文件:*.html、*.php
脚本文件*.sh
配置文件:*.conf
扩展名只是为了管理员便于区分,系统不一定需要,没有扩展名,系统可以区分
4、linux所有的存储设备都必须挂载之后用户才能使用,包括硬盘、U盘
5、windows下的程序不能直接在linux中安装和运行
6、挂载:把设备文件和和挂载点连起来的过程,windows是自动识别U盘硬盘等设备,盘符就自动分配给他了,linux的分区和硬盘是自动挂载的,U盘,硬盘等设备插入之后都必须手动挂载,也就是手工分配盘符,图形化也支持自动挂载
7、远程服务器不允许关机,只能重启
8、重启时应该关闭服务
9、不要在服务器访问高峰期运行高负载命令
10、远程配置防火墙时不要把自己提出服务器
11、指定合理的密码规范并定期更新
12、合理分配权限
13、定期备份重要数据和日志