linux系统基础
linux基础和安装
操作系统介绍
- Unix
- linux
区别与联系
联系
- Linux模仿Unix界面和功能,源代码不同
- Unix比linux早 ,linux的思想源于Unix
区别 - Unix系统大部分跟硬件相关,Linux是可以运行在多种硬件平台上
- Unix有些版本是闭源的,而Linux是自由软件,免费,公开源代码
- 最大的不同:Linux是开放源代码的自由软件,Unix是对源代码实行知识产权保护的传统商业软件
Linux安装
平台win
软件:VM15 (虚拟机)
镜像文件 centos 7
虚拟机
- 定义:本质上就是一个程序软件
- 功能:用软件模拟一台计算机(拥有完整的硬件系统,与本机之间隔离)
- 应用:
- 一台计算机运行多个操作系统
- 测试病毒
- 测试程序
- 搭建符合自己需求的操作系统的环境
- 虚拟机类型
- 寄居虚拟化
- 裸金属虚拟化
- 操作系统虚拟化
- VMware基础
- 网卡操作
增加,删除,修改网卡 - 网卡类型
Bridge—桥接
Host-Only-仅主机VMnet1
NAT-地址转换:VMnet8
NAT设置:网关端口转发
LAN 区段
虚拟机内部通讯
服务开启
VMware NAT,VMware DHCP
- 快照
开机快照/关机快照 - 克隆
链接克隆/完整克隆
- Linux特点
- 开放性,遵循世界标准
- 多用户同时使用系统资源
- 多任务,同时执行多个程序,各个程序运行相互独立
- 设备独立性,继承Unix特点,把所有外部设备统一当成文件看待,/dev每个文件都标识一个设备
- 强大的文件管理系统
- 丰富的网络功能
- 可靠且安全,良好的移植性
- Linux缺点
- 习惯windows的图形界面,Linux不容易掌握
- Linux支持的PC硬件不如Windows支持的那么广泛
- Linux组成
- 内核
内核是系统的核心,是运行程序和管理的核心程序如进程管理,进程间的通讯调用等 - Shell
Shell是系统的用户界面,提供了用户与内核进行的接口 - 文件系统
文件存放在磁盘等存储设备上的组织方法,Linux是开放性的,能够支持多种异构的文件系统,如
ext2,ext3,fat,Vfat(fat32),ISO9960,nfs,xfs,reiserFS等 - 应用系统
标准的Linux系统都有一整套成为应用程序的程序集,包括文本编辑器,办公套件,数据库等
- Linux文件系统
组成
- 目录项 :
文件名 - INode:
文件相关信息 权限 。。。。 - 数据块:
存放文件内容
- Linux内核版本
- 主版本号.次版本号.修正号
- 次版本号 偶数稳定版 奇数测试版
- Linux设备号
硬件设备 | Linux代号 |
---|---|
IDE硬盘 | /dev/hd[a-d] (内核模块pata acpi会自动转成sd[a-d],此种表示方式不会再出现) |
SCSI/SATA/USB硬盘 | /dev/sd[a-p] |
光驱 | /dev/cdrom |
软驱 | /dev/fd[0-1] |
打印机 | /dev/lp[0-2] |
鼠标 | /dev/mouse |
网卡 | /dev/eth[n] |
- Linux目录架构
分区 | 作用 | 优点 |
---|---|---|
/ | 存放文件或目录 | 必须存在 |
/boot | 系统核心和开机所需要的的文件 | 备份还原分区比较容易 |
/swap | 虚拟内存 | 防止内存不够用,物理内存的两倍大小 |
/home | 用户的home目录 | 容易备份还原个人文件以及做磁盘限额 |
/usr | 系统默认安装的软件和命令都会存放的目录 | 备份还原比较容易 |
/var | 存放经常变动的资料,如log和未读邮件 | 防止其他分区时常变动 |
/tmp | 临时文件 | 不需要备份,容易做磁盘限额 |
/opt | 存放自己安装的软件 | 容易备份还原 |
- linux常用目录
分区 | 作用 |
---|---|
/etc | 系统配置文件 |
/dev | 所有的设备文件 |
/lost+found | 存放一些遗失的片段或者系统不正常开机,强制关闭程序等产生的错误片段,每个独立分割的分区都会产生这个目录 |
/proc | 反映内核的环境,是个虚拟目录,不占用磁盘空间。包含三类内容:进程相关部分,系统信息部分,以及系统子系统部分 |
bin | 存放系统管理或常用的执行文件 |
lib | 存放库函数,程序执行时调用 |
- Linux 安装后配置
- 命令提示符[root@tys /]#
- root :当前登录用户
- tys :当前系统主机名
- / 当前目录
- #:命令提示符 ,标识用户权限等级 普通用户$ 超级用户#
- 禁用防火墙和SELinux
-
systemctl stop Firewall 临时禁用防火墙
-
systemctl disable firewall.service 开机禁用,重启生效
-
systemctl status firewal 或 firewall-cmd --state 查看iptables是否关闭
-
setenforce 0 将seLinux设置为Permission临时禁用
-
更改/etc/selinux/config中selinux=enforcing 为disable 永久禁用selinux
-
Linux基本使用
-
基本守则
- Linux大小写敏感
- 文件名前带“.” 是隐藏文件
- Linux中的“/” 相当于dos “\”
- 配置文件#开头代表注释
- “\” 放在命令后 说明 继续执行下一行
- 跳脱字符“\”,将特殊字符转换成普通字符(""也可以是 单引号或者双引号)如空格,@,$
- 基本使用
- 登录 密码无回显
- 关机:shutdown -h now ,halt ,init 0
- 重启:shutdown -r now ,reboot,init 6
- 注销:logout/exit/Ctrl+D(shell)或者pkill -kill -t tty7或pst/0
- 锁屏:Ctrl+S
- 解锁Ctrl+q
- 退出 exit或Ctrl+D
- X-Windows与控制台切换:Ctrl +Alt+F1-F6
- who、w查看登录用户信息
- whoami 显示用户名
- which command 显示命令command所在位置
- whatis command 显示命令command的简短描述(数据库:/usr/share/man/whatis)
- whereis command\file 显示commnd文件file位于系统中的什么位置
- command --help 显示command的使用摘要和参数列表
- man [chapter] 显示命令command的说明文档chapte有8个号码(1-8)来区分章节,1、5、8比较重要
- 1:一般使用者都能使用的命令,manpasswd
- 5:命令的文件格式说明,man5passwd
- 8:root用户才可以使用的命令,manlvm操作
- /key-word:在说明文档中搜索key-word这个关键字,n跳到下一个关键字,N跳到上一个关键字
- q:离开说明文档man-Kkeyword查询所有含有关键字keyword的manpage
- history显示历史命令!序号:执行该行的命令;!$:上一条命令的最后一个参数
- uname显示系统信息-a参数显示全部信息
- cat/etc/redhat-release显示系统发行版本
- hostname显示主机名
- date显示或修改系统时间
- date-s‘10:10:10’•date-s‘20091031’•date-s‘2009103110:10:00’
- date-R查看时区
- tzselect选择当前时区
- cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime更改时区文件
- cal显示日历eg:cal012012显示2012年1月的日历
- Tab键自动补全命令
- 快捷键•Alt+←或者Alt+→切换上一个/下一个虚拟终端
- Shift+pgUp或者Shift+pgDn上,下滚动控制台缓存
- Ctrl+a把光标移动到命令行最开始的地方•
- Ctrl+e把光标移动到命令行末尾
- Ctrl+u删除当前光标前的所有内容。。。
Linux文件和目录操作
- cd
- cd dir进入一个目录dir
- cd.可以验证“.”代表当前目录
- cd…进入当前目录的上一级目录
- cd…/…当前目录的上两级目录
- cd-回到刚才工作的目录
- pwd显示当前所在的工作目录
- ls [option][dir]显示当前目录或dir目录中的文件option的一些值
-
-a显示所有文件(包含隐藏文件)
-
-l显示文件或目录的详细信息
-
-d显示当前目录本身的属性•-i显示文件或目录的indoes
- touchfile/vifile创建文件file
- 当文件存在时,touch命令会更新文件的时间戳
- touch是立即生成,vi必须要保存才能生成相应的文件
- mkdir dir创建目录dir
- rm dir 只能删除空目录,如果要删除非空目录:rm-rf sovand
- cp[option]scrdst复制文件或目录
- dst是目录,可以复制多个文件option的一些值
- -p保留原来的时间戳、拥有者信息等
- -r复制目录
- -a等同于同时使用-rp
- mv [option] file dst移动、重命名文件或目录
- dst仅是文件名,重命名
- dst是目录和文件名,但目录不是当前目录,移动并重命名•dst仅是目录,是移动文件,此时可以移动多个文件
- rm [option]建立或者删除文件option的一些值
- -i确认信息,root用户默认会有此参数,而普通用户没有
- -r递归,删除目录时必须使用
- -f强制删除,不提示和确认
- file fille_name 显示file_name是那种类型的文件eg:file/dev/tty1
- ln[-s]targetlink_name建立文件或者目录的链接(target最好指定绝对路径)eg:ln/tmp/file/tmp/1//将文件file硬链接到目录1中
- -s参数是指建立软链接,它和target文件有不同的inodes。相当于windows中的快捷方式。
- 否则是硬链接,它和target文件有相同的inodes。所以它不能跨分区建立目录建立硬链接(源文件target和link_name都被删除时,真正文件才会被删除,可以建立硬,并且无法针对连接到重要文件,以防止“误删”的功能。)
- gzip、gunzip或者bzip2、bunzip2压缩、解压文件(bzip压缩比例会比gzip高)gzip[option]file此命令不能用来压缩目录•不带任何参数,是压缩文件file,并且用file.gz替换file
- -c压缩文件file,但是保留原来的文件gzip-cfile>file.gz
- -v会显示压缩过程中的信息•-r递归压缩一个目录中的文件针对gz的压缩包可以使用zcat、zgrep、zless、zdiff等
- gunzip[option]file.gz解压文件file.gz
- bzip2[option]file和bunzip2[option]file.bz2的用法与gzip和gunzip类似
- tar创建打包、释放打包文件(在tar后面所使用的参数前不需要加“-”这个符号)
- 创建:tar cvf打包后的文件名哪些需要打包的文件
- 释放:tar xvf打包的文件名
- tar tf打包文件名.tar只会显示打包好的这个文件里面打包了哪些文件的清单
- tar tvf打包文件名.tar除了会显示清单外,还会显示文件的详细内容
- c创建打包文件;v显示打包了哪些文件;f使用这个参数后面接的字串来当做打包后的文件名称;x释放打包文件;P使用绝对路径,不会将“/”删除(不建议使用此参数)
- tar有压缩和解压的功能tar打包文件的时候可以用以下两种参数决定是否压缩
- z使用gzip的技术来压缩打包好的文件tarzcvffile.tar.gzfile
- j使用bzip2的技术来压缩打包好的文件
- eg:
- gzip-cvfile>file.gz
- gzip-rv/tmp/*
- gzip-lfile.gz
- gunzip file.gz
- bzip2 -kv file
- bunzip2 file.bz
- tar cvf file.tar file1 file2
- tartffile.tar
- tar zcvf file.tar.gz file1 file2
- tar zxvf file.tar.gz
- tar jcvf file.tar.bz2 file1 file2
- tar jxvf file.tar.bz2
Linux文本处理
- cat显示文件的所有内容•
- -A显示换行字符;
- -s文件有超过两行空白行,压缩成一行显示;
- -n显示行号;-b和-n相似,但对空白行不编号
- more查看文件内容,只可以往下查看不能往上查看
- less分页显示文件内容
- /key-word搜索关键字key-word;
- n下一个关键字;N上一个关键字;
- v快速编辑;b上一页;
- g顶端;G末端;可以使用pagedown、pageup
- sort对标准的输出排序,原始资料不变,按照a-z顺序排序
- -r反向排序;
- -u唯一性,重复的删除;
- -t设置栏位间的间隔符;
- -n数值进行排序;
- -k按照哪一栏进行排序,可指定多栏sort-t:-k3–n/etc/passwd
- du:显示目录或文件的磁盘占用量
- -h:以K、M、G为单位显示,提高信息的可读性
- -s:仅显示总计
- “|”管道,将一个命令的输出变成另外一个命令的输入eg:cat/etc/passwd|sort
- 资料导入导出
- >导出(覆盖)cal012012 > cal.txt
- >>导出(附加)cal012012>>cal.txt
- <导入(输入)cat>tys<yb,创建tys并从yb导入内容
- <<结束cat>ask<<“eof”,创建ask自行输入内容并在输入eof时结束
- diff file1 file2显示两个文件file1和file2的差异
- cmp file1 file2仅比较文件的内容是否相同
- head、tail显示文件的首、尾行(默认为10行)
- tail-num file显示文件file的末尾10行tail -20 /var/log/messages
- tail -f file以一定的时间实时显示file的更新
- grep[option]expr查找字符串exproption:
- -i忽略大小写
- -H显示路径和文件名eg:rpm-qa|grep-issh
- wc统计文件的字数eg:catcal.txt|wc-l
- -l行数统计;-w单词统计;-c字符统计
Linux中的vi编辑器
- 三种模式
- 命令模式:可移动光标位置,可修改、删除、复制、粘贴、搜索关键字•插入模式:输入新的字符,点esc键或者“ctrl+[”回到命令模式
- 扩展模式:命令模式下输入“:”进入扩展模式,保存、退出、搜索等
- 插入模式
- a光标会跳到当前后一格位置
- i光标位置不变
- A光标会停在当前行的最后位置
- I光标会停在当前行的最前面的位置
- o会在光标所在行的下面新增一行空白
- O会在光标所在行的上面新增一行空白
- r替换光标所在位置的字符,但不进入插入模式
- R从光标所在位置开始替换
- 扩展模式的命令•:w保存•:q退出•:wq保存及退出
- 命令模式的命令
- cc修改,即删除当前行并进入插入模式
- dd删除当前行,numdd删除num行
- x删除光标处的字符,numx删除num个字符
- yy复制当前行,numyy复制num行
- p、P修改,删除,或者复制的内容作粘贴(p粘贴在当前行下面,P粘贴在当前行上面)
- u、U撤销最近的操作(u最近一次,U最近操作的那行)
- ctrl+r恢复一次撤销的动作
- /、?key-word搜索关键字(/往下寻找,?往上寻找)
- n、N搜索关键字的时候继续寻找下一个(n同方向,N反方向)
- G光标跳到最后一行,numG光标跳到num行
- H、M、L光标跳到屏幕的第一行、正中间、最后一行
- :w!强制保存•:q!强制离开•:wq!强制保存离开