linux基础知识

1 .虚拟机安装linux(centos 32bit)
     1.1  虚拟机安装前置工作的准备,如内存。硬盘。CPU分配。镜像下载等
     1.2  安装方式(图形界面或者命令行  推荐图形界面即直接回车)
     1.3  安装过程默认,如默认语言、键盘式等
     1.4  安装分区
         1.4 . 1  在选定磁盘上删除所有分区
         1.4 . 2  在选定驱动器上删除linux分区
         1.4 . 3  在选定驱动器上使用空闲空间
         1.4 . 4  自定义分区
             1.4 . 4.1  linux磁盘表示
                 1.4 . 4.1 . 1  IDE磁盘  hd(磁盘前缀)  hda(磁盘 1 )hdb(磁盘 2 ) hda1(磁盘 1 1 分区) hdb1(磁盘 2 1 分区)
                 1.4 . 4.1 . 2  SATA磁盘  sd(磁盘前缀) sda(磁盘 1 )sdb(磁盘 2 ) sda1(磁盘 1 1 分区) sdc6(磁盘 3 6 分区)
             1.4 . 4.2  linux分区表示
                 1.4 . 4.2 . 1  挂载点  即所有分区的根
                 1.4 . 4.2 . 2  文件系统类型  即分区存储格式
                 1.4 . 4.2 . 3  分区大小
                 1.4 . 4.2 . 4  交换分区(swap  即windows下的虚拟内存)
     1.5  网络配置(IP、网关、子网掩码、主机名、DNS等)
     1.6  时区、用户密码设置
     1.7  默认软件包安装
     1.8  安装完毕后重新启动系统即可
     1.9  系统初始化设置(防火墙、创建用户、SELinux等)
     1.10   如果是一机多系统的話,先装windows再装linux。因为装windows会重写引导文件
     
2 .熟悉系统图形界面
     2.1  文件夹标签打开方式显示(编辑,首选项里面设置)
     2.2  隐藏文件查看(首选项里面设置  以.开头的文件或者文件夹均为隐藏文件/文件夹)
     2.3  常用工具栏使用
     2.4  支持 7 个终端(前 6 个均为命令 后 1 个为图形 快捷键为ctrl+alt+ f1~f7) 
     
3 .命令
     3.1  命令格式
         3.1 . 1  命令 -选项.... 参数
     3.2  常用命令
         3.2 . 1  ls命令 显示当前目录文件信息
                 ls -l  显示目录的完整信息 =》ll
                 ls -i  显示目录所有的文件,包括隐藏文件
                 ls -s  显示文件大小
                 ls --help  显示关于ls的选项帮助信息
                 ls -lis 等同于 ls -l -i -s
         3.2 . 2  pwd命令  显示当前目录名
         3.2 . 3  clear命令(ctrl+l) 清屏
         3.2 . 4  date命令 显示当前时间日期
         3.2 . 5  cal命令  显示日历
                 cal  12  2012   查看 2012 12 月的日历  注意年月次序
                 cal  2012  查看 2012 年所有月份日历
         3.2 . 6  bc命令  计算器
                 scale= 4 (小数点后 4 位,默认情况下不保留小数点后的数字)
                 1 / 3
         3.2 . 7  history命令 执行过的命令集合( 1000 个有重复)
                 history
                 ! 22  (执行第 22 条命令)
     3.3  命令大小写区分
     
4 .热键和快捷键
     4.1  Tab热键————自动补齐命令
             如果唯一则自动补齐,如果不唯一需要按两次则加载所有可能性
     4.2  上下热键————执行历史命令切换
     4.3  ctrl+i/home————命令行光标快速切换到本行开头
     4.4  ctrl+e/end————命令行光标快速切换到本行结束
     4.5  ctrl+u————从当前光标处往前删除
     4.6  ctrl+k————从当前光标处往后删除
     4.7  ctrl+c————中止输入命令执行
     4.8  ctrl+shift+t—————多开终端
     4.9  ctrl+d————关闭终端
         
5 .帮助信息
     5.1  whatis 命令————查看该命令作用
             whatis ls
     5.2  ls --help ————该命令常用的选项有哪些
     5.3  man命令————查看该命令具体详细信息
             man ls
             man -k clock ————查看含有clock关键字的所有命令
             man host.allow————查看该文件配置说明
             
             输入 /+关键字 可将关键字高亮显示
             使用m/n可向上下查找(或向上向下键)
             退出按q
     5.4  info命令————用法跟man差不多。man可取代
             
6 .编译器
     6.1  nano
     6.2  gedit
     6.3  vi
     
7 .一些使用小技巧
     7.1  数据同步问题
         sync命令————同步内存数据到硬盘
     7.2  开关机命令
         7.2 . 1  shutdown命令
         7.2 . 2  reboot命令
         7.2 . 3  poweroff命令
         7.2 . 4  halt命令
     7.3  运行级别
         7.3 . 1  级别( 7 种)
               0 :关机模式
               1 :单用户模式
               2 :多用户模式(无NFS)
               3 :多用户模式(有NFS)
               4 :系统保留
               5 :图形化界面
               6 :系统正常关闭并重启
         7.3 . 2  init命令————切换运行级别
                 init  3   切换到 3 级别
                 init  0   切换到 0 级别 即关机
                 init  6   切换到 6 级别 即重启
     7.4  忘记root密码
         1 .开机时按e键进去可选进入项
         2 .进去编译模式
         3 .敲 1 按回车,按b进去编译
         4 .编译完成后输入passwd更改密码
         5 .然后重启即可使用新密码登陆
         
8 .文件权限和目录配置
     8.1  文件权限
         8.1 . 1  权限说明
                 drwxr-xr-x.  2  root root   4096  Oct  23  23 : 53  Desktop
                 drwxr-xr-x:文件/文件夹权限
                             第一位:
                                 d为文件夹 
                                 -为文件
                                 b为设备(块)  U盘、硬盘等
                                 c为设备(字符)键盘、鼠标等
                                 l为软连接(快捷方式)
                             其他位:
                                 r读
                                 w写
                                 x运行
                             前三位为所有者权限(u)
                             中间三位为所有组权限(g)
                             后三位为其他人权限(o)
                 .:是否为隐藏文件
                 root:文件/文件夹所有者
                 root:文件/文件夹所有组
                 4096 :文件/文件大小
                 Oct  23  23 : 53 : 创建时间/修改时间
                 Desktop: 文件/文件夹名
         8.1 . 2  默认权限
             1 .umask命令————文件默认权限
             2 .chattr/lsattr命令————文件隐藏属性
             3 .SUID/SGID/SBIT命令————文件特殊权限
             4 .file命令————文件类型
     8.2  更改文件/文件夹权限
         8.2 . 1  chmod命令————修改文件/文件夹读写运行权限
               第一种方式:chmod u+x,g+r,o+r xyz(不会改变子文件权限)
               第二种方式(推荐):chmod  766  xyz(不会改变子文件权限)
                                       r: 4
                                       w: 2
                                       x: 1
                                     7 :rwx
                                     6 :rw
                                     5 :rx
                                     3 :wx
                                   chmod -R  766  xyz(会改变子文件权限)
         8.2 . 2  chown命令————可以修改所有者和所有组权限
                     chown hadoop xyz/
                     将xyz的所有者更改为hadoop用户
                     
                     chown -R hadoop:root xyz/
                     将xyz下的所有文件所有者更改为hadoop用户,所有组更改为root
         8.2 . 3  chgrp命令————只能更改所有组
                     chgrp root xyz/
                     将xyz的所有组更改为root
     8.3  文件目录结构
         bin————可运行程序
         boot————系统启动文件,内核初始化
         dev————设备文件
         etc————配置文件
         home————用户的家目录
         lib————链接库文件
         lost+found————默认的
         media————挂载点,自动
         misc————默认的
         mnt————挂载点,手工
         net————网络文件
         opt————使用源码安装包时安装目录
         proc————内核参数,不占用磁盘大小
         root————root用户的家目录
         sbin————类似bin,系统管理员的命令
         selinux————selinux文件目录
         srv————
         sys————系统配置文件
         tmp————临时文件
         usr————安装软件默认路径
         var————日志文件、缓存文件、数据文件
     8.4  绝对路径和相对路径
         当前目录  .
         上一级目录  ..
     8.5  基本查看命令
         1 .uname命令————返回系统类型名
             uname -a  查看系统所有信息
         2 .lsb_release命令
 
9 .文件和目录的管理
     9.1  目录和文件相关操作
         1 .cd命令————切换目录
             cd:change directory
             ~:一个变量,代表当前用户家目录
             
             cd -  上次所在目录(注意不是上一级目录)
         2 .mkdir————增加目录
             mkdir xx yy zz 创建三个目录分别为xx yy zz
             mkdir -p xx/yy(如果父文件夹不存在创建父文件夹)
         3 .rmdir————删除目录(不能删除非空目录)
             rmdir xx yy zz
             rmdir -p xx/yy(如果父文件夹中只有一个文件,会删除掉父文件夹)
         4 .rm————删除文件
             rm -rf xx(删除xx中的所有文件)
         5 .cp————复制文件
             1 .cp xx/yy   xx1/yy1
                 如果yy是文件,且yy1是文件夹时,则将yy拷贝到yy1下
                 如果yy是文件,且yy1是文件或者不存在时,则将yy拷贝到xx1中并重命名为yy1
             2 .cp -rf xx/yy   xx1/yy1
                 yy是文件夹  即将yy所有文件拷贝到xx1下的yy1中(没复制权限属性信息)
             3 .cp -rfp xx/yy   xx1/yy1
                 yy是文件夹  即将yy所有文件拷贝到xx1下的yy1中(复制权限属性信息) 
         6 .mv————移动文件(与cp用法一致)
         7 .查看文件内容
             1 .cat————顺序显示,只能看到最后一屏的内容  适合查看小文件
                cat -n xx   有行号
             2 .tac————倒序显示
             3 .nl————相当于 cat -n
             4 .head————查看文件前几行
                 head - 5  xx 前五行(默认头 10 行)         
             5 .tail————查看文件后几行
                 tail - 5  xx 后五行(默认尾 10 行)
             6 .more————分屏查看内容
                 more xx (回车一行一行  空格一屏幕一屏幕  只能往后看, 不能往前看)
             7 .less————分屏查看内容
                 less xx(往前往后都可)
             8 .od————查看二进制文件
         8 .touch————创建文件
             touch xx
         9 .whereis/locate/find————查找文件
             whereis xx
             locate xx(不及时,在数据库来找,如果需要及时的話,要更新数据库 updatedb)
             find 目录 -属性 属性值(不指明目录在当前目录查找)
                        属性:权限、大小、时间等
     9.2  路径变量$PATH
         1 .变量赋值
         $PATH= ".:/usr/local/hadoop/bin:/usr/local/jdk/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"
         2 .输出打印变量值

        echo $PATH 

1 .Linux磁盘和文件系统
     VFS————虚拟文件系统
     df命令————查看已挂载的分区
         df 分区名
     du命令————查看文件夹大小
         du 文件夹名
     ln命令————符号链接
     fdisk命令————分区命令
       fdisk 硬盘名
     partprobe命令————更新分区表
       partprobe 硬盘名
     mkfs命令————格式化分区(新建分区只有格式化后才能使用)
         mkfs -t 文件系统类型(ext3、ext4) 分区名
         mkfs.文件系统类型(ext3、ext4) 分区名(等同于上面的)
     fsck/badblocks命令————磁盘检验
         badblocks -sv 分区名
     mount命令————挂载设备(临时,关机重启后无效)
         mount 外部设备 目录  将外部设备挂载在目录里
     umount命令————卸载设备
         umount 挂载点
         umount 外部设备
     fstab文件————挂载文件(重启关机均有效)
         配置信息格式:  设备名  挂载点  格式类型 默认权限 备份标识 检验标识
 
2 .文件的压缩和打包
     2.1  常用的压缩命令
         Compress命令
         gzip/zcat命令
             gzip 文件名(会直接将原文件压缩成.gz后缀的文件,源文件没有了)
             gzip -c 文件名 > 文件名.gz(会直接将原文件压缩成.gz后缀的文件,源文件还存在)
             gzip -d 文件名(会直接将源文件解压,源文件没有了)
             zcat 文件名(查看压缩文件内容,纯文本)
         bzip2/bzcat命令(使用方式同上 注意后缀为bz2) 
     2.2  常用的打包命令
         tar命令(无压缩功能)
             tar cvf  文件名.tar  文件名(打包文件,保留源文件)
             tar cvf  文件名.tar  文件名 --remove-files(打包文件,不保留源文件)
             tar tvf  文件(不解包下查看文件内容)
             tar xvf  文件(解包下查看文件内容)
     2.3  常用备份命令
         ————完全备份 ( 0
         ————差异备份 (级别从高往低)
         ————增量备份 (级别从低往高)
         dump命令————备份
             dump 级别( 0 ~ 9 ) 备份文件名  需备份文件
     2.4  常用还原命令
         restore命令————恢复
         
3 .vim程序编辑器
     vim是vi的增强版
     1 .插入模式:
         1 .i 当前光标后一字符
         2 .I 本行开头
         3 .a 当前光标后后一字符
         4 .A 本行行尾
         5 .o 本行后空一行
         6 .O 本行前空一行
         7 .insert  当前光标
     2 .命令模式:
         1 .esc
         2 .yy————复制行
         3 .p————粘贴行
         4 .dd————删除当前行
         5 .x————删除当前字符
         6 .r————替换当前字符
     3 .末行模式:
         1 .冒号:(保存w、退出q、替换s、定位(直接输入数字跳转到该数字行))
         2 .斜杠/   (查找)
         3 .next 切换下个文件
         4 .first 第一个文件
         5 .last  最后一个文件
     4 .特殊符号:
         1 .^ 表示行开头
         2 .$ 表示尾部
         3 .% 表示所有行
 
4 .认识和学习bash
     1 .查看系统支持的shell
         cat /etc/shells(Linux 默认使用bash)
     2 .which命令————查看命令所在目录
         which 命令名(如果找不到目录且该命令可用,则表示该命令为bash内置命令)
     3 .type命令————查看命令所属信息
         type 命令名
     4 .变量
         1 .变量赋值:变量名=值
         2 .变量使用:$变量名(前面一定要有美元符号)
         3 .变量取消:unset 变量名
         4 .本地变量(只在当前会话有效)
             定义  变量名=变量值
         5 .环境变量(所有会话有效)
             定义  export 变量名=变量值
         6 .位置变量(指定位置的变量)
             $ 0 (第一个变量)
             $ 1 (第二个变量)
             $#(总共几个变量)
             $*(变量分别是...)
         7 .变量查看
             set命令(查看所有变量 即本地和环境变量)
             env/export/export -p 命令(显示环境变量)
         8 .read命令————将键盘输入的值赋值给变量(以回车为结束标识)
             read 变量名
         9 .数组
             定义  xx=(aa bb cc)
             输出  echo ${xx[*]}  全部输出
                   echo ${xx[ 0 ]}  输出第一个元素
                   echo ${#xx[*]} 输出数组元素个数
                   echo ${!xx[*]} 输出所有元素下标
         10 .declare命令————定义变量
             declare -x aa= 1   (是环境变量)
             declare +x aa= 1  (不是环境变量)
             declare -r aa (aa值不能更改,即常量)
         11 .通配符
             1 .[] 匹配一个字符
             2 .-  表示范围  a-z即  a到z
             3 .?  表示任意一个字符
             4 .!或者^  表示非   [^ 0 - 9 ]即非数字
             5 .*  表示任意一个或多个字符
     5 .输出重定向
         1 .>命令————将控制台的输出输出到文件(若文件不存在,则创建该文件,如果存在,则覆盖)
             cal > 文件名 (只能重定向正确的结果)
             cal  2 > 文件名 (只能重定向不正确的结果)
         2 .>>命令————将控制台的输出输出到文件(若文件不存在,则创建该文件,如果存在,则追加)
             cal >> 文件名 (只能重定向正确的结果)
             cal  2 >> 文件名 (只能重定向不正确的结果)
         3 .&>命令————将控制台的输出输出到文件(无论正确或者错误均可重定向,覆盖文件)
     6 .命令特殊符号
         1 .:        命令 1 :命令 2 (即执行完命令 1 后执行命令 2 ,无论命令 1 是否正确)
         2 .&&        命令 1 &&命令 2 (如果命令 1 不正确,不会执行命令 2 )
         3 .||        命令 1 ||命令 2 (如果命令 1 正确,不会执行命令 2 )
     7 .管道
        命令 1 的结果通过管道传给命令 2 做参数  如 命令 1  | 命令 2
         1 .选取命令
             cut————分隔文件内容,适用于有规律的文件 如:cut -d: -f1 文件名(即按:来选取第 1 部分的文件内容)
             grep————选取文件内容,适用于无规律但知道关键字的文件 如:ifconfig eth1 | grep  "Mask" (即按Mask关键字将所在行过来展现出来) 
         2 .排序命令
             sort————将结果排序输出 如: grep -ivn  "abc"  文件名 | sort -r (将结果反向输出)
             wc————字数统计   如:wc 文件名(返回行号、单词数、字符数(空格和换行符均算))
             uniq————结果统计 如:uniq 文件名 -c(返回结果和结果次数)
         3 .双向重定向命令

你可能感兴趣的:(linux基础知识)