兄弟连Linux学习笔记

兄弟连新版Linux全套资料百度云(包含全套视频及相关参考书籍、配套VMware 8.0虚拟机软件及用到的软件工具等配套CentOS-6.3-i386-bin-DVD1系统压缩包镜像)请往我的资源(https://download.csdn.net/download/qq_32809093/12575777)查看。

目录:

第一讲:Linux系统简介
第二讲:Linux系统安装
第三讲:给初学者的建议
第四讲:Linux常用命令

4.1 文件处理命令
     4.1.1 命令格式与目录处理命令ls
     4.1.2 目录处理命令
     4.1.3 文件处理命令
     4.1.4 链接命令
4.2 权限管理命令
     4.2.1 权限管理命令chmod
     4.2.2 其他权限管理命令
4.3 文件搜索命令
     4.3.1 文件搜索命令find
     4.3.2 其他搜索命令
4.4 帮助命令
4.5 用户管理命令
4.6 压缩解压命令
4.7 网络命令
4.8 关机重启命令

第五讲 文本编辑器Vim
5.1 Vim常用操作
5.2 Vim使用技巧

第六讲  Linux 软件安装
6.1 软件包管理简介
6.2 RPM包管理-rpm命令管理
     6.2.1 包命名与依赖性
     6.2.2 安装升级与卸载
     6.2.3 命令管理与查询
     6.2.4 校验和文件提取

6.3 RPM包管理-yum在线管理(自动在线安装)
     6.3.1 IP地址配置和网络yum源
     6.3.2 yum命令
6.4 源码包管理
     6.4.1 源码包和RPM包的区别

第一讲:Linux系统简介

UNIX  发展历史:1965年,美国麻省理工学院(MIT)、通用电气公司(GE)及AT&T的贝尔实验室联合开发Multics工程计划,其目标是开发一种交互式的具有多道程序处理能力的分时操作系统,但因Multics追求的目标过于庞大复杂,项目进度远远落后于计划,最后贝尔实验室宣布退出。1969年,美国贝尔实验室的肯 • 汤普森在DEC PDP-7机器上开发出了UNIX系统。1971年,肯 • 汤普森的同事丹尼斯 • 里奇发明了C语言;1973年,UNIX系统的绝大部分源代码用C语言重写,这为提高UNIX系统的可移植性打下基础。

Linux  系统简介:Linux系统出现于1991年,由芬兰大学生李纳斯(Linus Torvalds)和后来陆续加入的众多爱好者共同开发完成。Linux是一个自由软件,是源代码开放的UNIX。

开源软件并不意味着都是免费的,绝大多数开源软件是免费的。

支持互联网的开源技术:LAMP(Linux操作系统、Apache Web服务器、MySQL数据库、PHP编程语言)

Linux  优良特性
1 ) 分时的多用户、多任务的操作系统
2 ) 多数网络协议支持,方便的远程管理
3 ) 强大的内存管理和文件管理系统
4 ) 大量的可用软件和免费软件
5 ) 优良的稳定性和安全性
6 ) 良好的可移植性和灵活性
7 ) 可供选择的厂商多

第二讲:Linux系统安装

一、VMware虚拟机安装与使用

VMware是一个虚拟PC的软件,可以在现有的操作系统上虚拟出一个新的硬件环境,相当于模拟出一台新的PC ,以此来实现在一台机器上真正同时运行两个独立的操作系统。

VMware主要特点:
1、不需要分区或重新开机就能在同一台PC上使用两种以上的操作系统
2、本机系统可以与虚拟机系统网络通信
3、可以设定并且随时修改虚拟机操作系统的硬件环境

二、系统分区

1、磁盘分区是使用分区编辑器(partition editor)在磁盘上划分几个逻辑部分。碟片一旦划分成数个分区(Partition),不同类的
目录与文件可以存储进不同的分区。

2、格式化(高级格式化)又称逻辑格式化,它是指根据用户选定的文件系统(如FAT16、FAT32、NTFS、EXT2、EXT3、EXT4
等),在磁盘的特定区域写入特定数据,在分区中划出一片用于存放文件分配表、目录表等用于文件管理的磁盘空间。

3、硬件设备文件名

总结
分区:把大硬盘分为小的逻辑分区
格式化:写入文件系统,同时把硬盘中数据全部删除
分区设备文件名:给每个分区定义设备文件名
挂载:给每个分区分配挂载点

四、远程登录管理工具SecureCTR

Host-Only:表示虚拟机(或理解为服务器)通过VMnet1与真实机进行通信

ifconfig   查看IP地址(即当前网卡信息)

ifconfig eth0 192.168.92.2   为虚拟机网卡0分配(设置)一个IP地址192.168.92.2(临时更改IP地址,电脑重启后失效),注意要与VMnet1中的网关(本电脑是92)相同

将真实机cmd命令窗口调出,输入ping 192.168.92.2

可见真实机和虚拟机通信正常

通过SecureCTR仿真软件(远程工具)进行网络连接,IP地址即为以上设置的虚拟机IP地址  192.168.92.2

可见连接成功

df命令

注:VMnet1与VMnet8是虚拟网卡

如果虚拟机中选择的是桥接,则其会使用电脑中的真实网卡(本地连接或无线网络连接)与当前真实计算机进行通信,且可以与其它有连接网络的电脑或服务器通信,但会占用网络真实 IP 地址(如果真实机可以访问互联网,则虚拟机也可以)

如果虚拟机中选择的是net,则其会使用虚拟出来的VMnet8网卡与当前真实计算机进行通信,但不能与局域网其它电脑通信,只能与真实机通信

如果虚拟机中选择的是host-only,则其会使用虚拟出来的VMnet1网卡与当前真实计算机进行通信,但不能与局域网其它电脑通信,只能与真实机通信

第三讲:给初学者的建议

注意事项:

Linux严格区分大小写
Linux中所有内容以文件形式保存(命令行的更改只是临时生效,所有的更改必须通过文件形式更改才有效),包括
硬件
 硬盘文件是/dev/sd[a-p]
光盘文件是/dev/sr0等

Linux不靠扩展名区分文件类型(即没有扩展名概念),扩展名只是为了使管理员更加方便使用
压缩包:“*.gz”、“*.bz2” *.tar.bz2”、
“*.tgz”等
 二进制软件包:“.rpm”
网页文件:“*.html”、“*.php”
 脚本文件:“*.sh”
 配置文件:“*.conf”

打开bin文件

Linux所有的存储设备都必须挂载(设备文件名和盘符连接起来的过程称挂载)之后用户才能使用,包括硬盘、U盘和光盘
Windows下的程序不能直接在Linux中安装和运行

服务器的管理和维护建议:

查看设备文件信息:

打开 / 下目录

2、服务器注意事项

远程服务器不允许关机,只能重启
重启时应该关闭服务

不要在服务器访问高峰运行高负载命令
远程配置防火墙(过滤器,判断是否符合规则要求)时不要把自己踢出服务器

指定合理的密码规范并定期更新
合理分配权限
定期备份重要数据和日志

第四讲:Linux常用命令

4.1 文件处理命令

4.1.1 命令格式与目录处理命令ls

命令格式
命令格式 :命令 [-选项] [参数]
例 : ls -la /etc
说明:

1)个别命令使用不遵循此格式
2)当有多个选项时,可以写在一起
3)简化选项与完整选项
-a 等于 --all

 

目录处理命令 : ls(list菜单、目录)
命令名称:ls
命令英文原意:list
命令所在路径:/bin/ls
执行权限:所有用户
功能描述:显示目录文件
语法:ls 选项[-ald] [文件或目录]
-a(-all) 显示所有文件,包括隐藏文件
-l (-long)详细信息显示
-d 查看目录属性

使用 ls 查看目录文件,ls -a查看所有目录文件

可见一共有八个文件,其中有五个隐藏文件(其前面带点的文件)

使用 ls -l 或 ls -lh 进行详细(长)目录显示

  例如图中1为文件计数、root表示文件所有者,后面root为所属组,1208表示此文件为1208字节,后面为此文件最后修改时间,最后为文件名

显示 / 目录下文件

使用 ls -ld /etc 查看etc当前目录文件信息(不包括etc目录下文件)

使用 ls -l /etc 查看etc目录下所有文件信息

使用 ls -i 查看文件i结点

 -rw-r--r--分别对应u-g-o,表示所有者可读写,所属组可读,其它人可读
- 文件类型(- 文件      d 目录        l 软链接文件)
rw-(可读可写)           r--(可读)              r--(可读)
u                             g                           o
u所有者                   g所属组                 o其他人

r读    w写    x执行(execute)

 

4.1.2 目录处理命令

目录处理命令 : mkdir
命令名称:mkdir
命令英文原意:make directories
命令所在路径:/bin/mkdir
执行权限:所有用户
语法:mkdir -p [目录名]
功能描述:创建新目录
-p 递归创建
范例: mkdir -p /tmp/Japan/boduo
mkdir /tmp/Japan/longze /tmp/Japan/cangjing

在tmp文件下创建文件wode

使用 -p 递归创建Japan与boduo文件,并使用ls命令查看Japan下的boduo文件

同时创建longze与cangjing两个文件,并查看此时Japan文件目录下的文件有哪些

 

目录处理命令 : cd
命令名称:cd
命令英文原意:change directory
命令所在路径:shell内置命令
执行权限:所有用户
语法:cd [目录]
功能描述:切换目录
范例: $ cd /tmp/Japan/boduo 切换到指定目录
$ cd .. 回到上一级目录

使用cd /tmp/Japan/boduo切换到boduo这个目录

使用 cd .. 回到上一级目录,pwd为显示当前目录

 

目录处理命令 : pwd
命令名称:pwd
命令英文原意:print working directory
命令所在路径:/bin/pwd
执行权限:所有用户
语法:pwd
功能描述:显示当前目录
范例:$ pwd
/tmp/Japan

使用pwd显示当前目录的详细信息


 

文件处理命令 :rm dir
命令名称:rmdir
命令英文原意:remove empty directories
命令所在路径:/bin/rmdir
执行权限:所有用户
语法:rmdir [目录名]
功能描述: 删除空目录
范例: $ rmdir /tmp/Japan/boduo

使用 rmdir /tmp/Japan/boduo 删除空目录boduo,并使用 ls /tmp/Japan 或者 ls -l /tmp/Japan查看Japan目录下有哪些目录文件

 

目录处理命令 : cp
命令名称:cp
命令英文原意:copy
命令所在路径:/bin/cp
执行权限:所有用户
语法:cp -rp [原文件或目录] [目标目录]
-r 复制目录
-p 保留文件属性(复制的文件修改时间与原文件相同)
功能描述:复制文件或目录

范例:
$ cp -rp /tmp/Japan/longze /root将/tmp/Japan目录下的longze目录复制到/root下,保持目录属性

$ cp -r /tmp/Japan/cangjing /root 将目录/tmp/Japan/cangjing复制到目录/root下

$ cp -r /tmp/Japan/longze /root/yiwofeiye 将/tmp/Japan目录下的longze目录复制到/root下,并将其名字改为yiwofeiye

clear命令可以清屏(或者按住ctrl + l)

目录处理命令 : mv
命令名称:mv
命令英文原意:move
命令所在路径:/bin/mv
执行权限:所有用户
语法:mv [原文件或目录] [目标目录]
功能描述:剪切文件、改名

使用 mv /root/yiwofeiye /tmp/Japan 将root下的yiwofeiye文件剪切到Japan文件下

使用mv cangjing canglaoshi实现同文件目录下将cangjin改名为canglaoshi

图中cd命令先到root目录下,再使用ls则可以查看当前目录信息

 

目录处理命令 : rm
命令名称:rm
命令英文原意:remove
命令所在路径:/bin/rm
执行权限:所有用户
语法:rm -rf [文件或目录]
-r 删除目录
-f 强制执行
功能描述:删除文件

范例:
$ rm /tmp/yum.log
删除文件/tmp/yum.log
$ rm -rf /tmp/Japan/longze
删除目录/tmp/Japan/longze

使用 rm grub.conf 删除root下的grub.conf文件

使用 rm -rf /tmp/Japan 删除Japan目录及其以下的所有子目录

 

4.1.3 文件处理命令

文件处理命令 : touch
命令名称:touch
命令所在路径:/bin/touch
执行权限:所有用户
语法:touch [文件名]
功能描述:创建空文件
范例:

使用$ touch Japanlovestory.list 在root目录下创建一个Japanlovestory.list文件

创建文件program files

 

文件处理命令 : cat
命令名称:cat
命令所在路径:/bin/cat
执行权限:所有用户
语法:cat [文件名]
功能描述:显示文件内容
-n 显示行号
范例: $ cat /etc/issue


$ cat -n /etc/issue(显示行号)

 

文件处理命令 :tac
命令名称:tac
命令所在路径:/usr/bin/tac
执行权限:所有用户
语法:tac [文件名]
功能描述:显示文件内容(反向列示)
范例: $ tac /etc/issue

 

文件处理命令 : more
命令名称:more
命令所在路径:/bin/more
执行权限:所有用户
语法:more [文件名]
(空格) 或f 翻页
(Enter) 换行
q或Q 退出
功能描述:分页显示文件内容(对应文件内容过多时)
范例: $ more /etc/services

进入more后,空格或者f翻页,回车一行行往下翻,q结束(注:上图中打开文件中 # 表示注释)

 

文件处理命令 :less
命令名称:less
命令所在路径:/usr/bin/less
执行权限:所有用户
语法:less [文件名]
功能描述:分页显示文件内容(可向上翻页)
范例: $ less /etc/services

进入less后,空格或者f翻页,回车一行行往下翻,pgup往上翻,pgdn往下翻,上下箭头一行行往上或下翻,q结束

在less里输入 /service 实现对信息中关键词service进行查找

按下n实现继续向下查找

 

文件处理命令 :head
命令名称:head
命令所在路径:/usr/bin/head
执行权限:所有用户
语法:head [文件名]
功能描述:显示文件前面几行
-n 指定行数
范例: $ head -n 3 /etc/services查看前3行

 

文件处理命令 :tail
命令名称:tail
命令所在路径:/usr/bin/tail
执行权限:所有用户
语法:tail [文件名]
功能描述:显示文件后面几行
-n 指定行数
-f 动态显示文件末尾内容
范例: $ tail -n 2 /etc/services查看后两行

注:在虚拟机(服务器)中,ctrl + shift + C实现复制,ctrl + shift + V或者鼠标右键 实现粘贴

 

4.1.4 链接命令

文件处理命令 : ln
命令名称:ln
命令英文原意:link
命令所在路径:/bin/ln
执行权限:所有用户
语法:ln -s [原文件] [目标文件]
-s 创建软链接(相当于windows中创建的快捷方式)
功能描述:生成链接文件

范例:
$ ln -s /etc/issue /tmp/issue.soft创建文件/etc/issue的软链接/tmp/issue.soft

软链接特征:类似Windows快捷方式
1、lrwxrwxrwx l 软链接
软链接文件权限都为rwxrwxrwx
2、文件大小-只是符号链接
3、/tmp/issue.soft -> /etc/issue箭头指向原文件


$ ln /etc/issue /tmp/issue.hard创建文件/etc/issue的硬链接/tmp/issue.hard

硬链接可实现两个文件的同步更新,使用echo "this is a test" >> /etc/motd修改issue原文件,cat显示文件内容,ls -l 实现目录文件详细信息显示

如果原文件被删除,则软链接失效,硬链接依旧可以正常使用,硬链接不可以跨分区,软链接可以跨分区

硬链接(相当于拷贝)特征:
1、拷贝cp -p + 同步更新
echo "this is a test" >> /etc/motd
2、可通过i节点识别
3、不能跨分区
4、不能针对目录使用

4.2 权限管理命令

4.2.1 权限管理命令chmod

权限管理命令 : chmod
命令名称:chmod
命令英文原意:change the permissions mode of a file
命令所在路径:/bin/chmod
执行权限:所有用户
语法:chmod [{ugoa}{+-=}{rwx}] [文件或目录]
[mode=421 ] [文件或目录]
-R 递归修改
功能描述:改变文件或目录权限

$ chmod u+x Japanlovestory.list 来给所有者u添加x权限

$ chmod u-x,g+w,o+w Japanlovestory.list来给所有者u减少x权限,所有组g与其它人o都增加w写权限

$ chmod o=x Japanlovestory.list 直接给其它人o赋予x权限

权限的数字表示
r ---- 4
w ---- 2
x ---- 1
rwxrw-r--
7 6 4

范例:

$ chmod  777 Japanlovestory.list 给此文件的所有用户全部权限


$  chmod -R 666 /tmp/wode
修改目录wode及其目录下文件的所有用户具有相同的rw权限

文件目录权限总结

注:只有管理员root和所有者才能更改目录或文件权限

4.2.2 其他权限管理命令

权限管理命令 : chown
命令名称:chown
命令英文原意:change file ownership
命令所在路径:/bin/chown
执行权限:所有用户
语法:chown [用户] [文件或目录]
功能描述:改变文件或目录的所有者
范例:$ chown shenchao fengjie改变文件fengjie的所有者为shenchao

cd为切换到指定目录,touch新建文件,ls -l查看文件或目录详细信息,useradd xuyaotong表示增加所有者xuyaotong

 

权限管理命令 : chgrp
命令名称:chgrp
命令英文原意:change file group ownership
命令所在路径:/bin/chgrp
执行权限:所有用户
语法:chgrp [用户组] [文件或目录]
功能描述:改变文件或目录的所属组
范例:$ chgrp liujing fengjie改变文件fengjie的所属组为liujing

其中,groupadd liujing为增加所属组liujing

为所属组增加w写权限

注:谁创建了文件,谁就是文件的所有者。

 

权限管理命令 : umask
命令名称:umask
命令英文原意:the user file-creation mask
命令所在路径:Shell内置命令
执行权限:所有用户
语法:umask [-S]
-S 以rwx形式显示新建文件缺省权限
功能描述:显示、设置文件的缺省权限
范例: $ 使用umask -S 缺省设置文件权限(缺省创建的文件是没有可执行权限x的)

更改创建的文件或目录权限为rwxr-xr--(754),则umask应该给值=777-754=023

4.3 文件搜索命令

4.3.1 文件搜索命令find

文件搜索命令 : find
命令名称:find
命令所在路径:/bin/find
执行权限:所有用户
语法:find [搜索范围] [匹配条件]
功能描述:文件搜索

$ find /etc -name init 在目录/etc中查找文件名为init的文件

$ find /etc -name *init* 则可以搜索/etc目录下含有init的文件(星号可以匹配任意字符,问号匹配一个字符)


-iname 不区分大小写


$ find / -size +204800(此处为100MB,单位为数据块0.5KB) 在根目录下查找大于100MB的文件     +n 大于     -n 小于    n 等于


$ find /home -user xuyaotong 在根目录下查找所有者为xuyaotong的文件(-group 则为根据所属组查找)

$ find /etc -cmin -30 在/etc下查找30分钟内被修改过属性的文件和目录


-amin 访问时间 access
-cmin 文件属性(所有者、所属组等) change
-mmin 文件内容 modify

$ find /etc -size +10240 -a -size -204800 在/etc下查找大于5MB小于100MB的文件
-a 两个条件同时满足
-o 两个条件满足任意一个即可


$ find /etc -name inittab -exec ls -l {} \; 在/etc下查找inittab文件并显示其详细信息


-exec/-ok 命令 {} \; 对home目录下所有者为xuyaotong的文件的搜索结果执行相应(此下图为删除)操作

-type 根据文件类型查找
f 文件     d 目录      l 软链接文件

$ find /etc -name init* -a -type d 实现etc目录下以init开头的目录查找

$ ls -i  /tmp 显示tmp目录下文件、目录及其前面对应的i结点

$ find . -inum 917817 -exec rm {} \; 利用-inum 根据i节点查找到917817对应的fengjie文件进行删除

4.3.2 其他搜索命令

文件搜索命令 : locate
命令名称:locate
命令所在路径:/usr/bin/locate
执行权限:所有用户
语法:locate 文件名
功能描述:在文件资料库中查找文件(查找速度快)
范例:$ locate inittab 搜索inittab文件

查找前记得使用updatedb对文件资料库进行更新

注:locate不对tmp临时目录中的文件与目录进行查找

$ locate -i teacher.cang 不区分大小写搜索文件(因为加了-i )

 

文件搜索命令 : which
命令名称:which
命令所在路径:/usr/bin/which
执行权限:所有用户
语法:which 命令
功能描述:搜索命令所在目录及别名信息
范例:$ which rm 查找rm命令所在的位置及别名(此处rm别名为 rm -i )

 

文件搜索命令 : whereis
命令名称:whereis
命令所在路径:/usr/bin/whereis
执行权限:所有用户
语法:whereis [命令名称]
功能描述:搜索命令所在目录及帮助文档路径
范例:$ whereis ls 搜索ls命令所在目录及帮助文档路径

 

文件搜索命令 : grep
命令名称:grep
命令所在路径:/bin/grep
执行权限:所有用户
语法:grep -iv [指定字串] [文件]
功能描述:在文件中搜寻字串匹配的行并输出
-i 不区分大小写
-v 排除指定字串
范例:$ grep mysql /root/install.log 在install.log文件中查找与mysql相关的行并输出

$ grep -v ^# /etc/inittab 在inittab文件中排除指定字串#对应的行输出

4.4 帮助命令

帮助命令 : man
命令名称:man
命令英文原意:manual
命令所在路径:/usr/bin/man
执行权限:所有用户
语法:man [命令或配置文件]
功能描述:获得帮助信息
范例: $ man ls (直接写命令或配置文件名,不是绝对路径)查看ls命令的帮助信息


$ man services 查看配置文件services的帮助信息

由name可见该配置文件为互联网网络列表文件

配置文件格式(网络服务名称   端口/服务  服务别名)

注:在帮助文件中,****.1 表示命令的帮助    ****.5表示配置文件的帮助

$ whatis ls 查看ls命令的简短信息   $ whatis cp 查看cp命令的简短信息  

 $ apropos inittab查看配置文件inittab简短信息  

$ date 查看当前时间

$ man date 查看date命令详细信息

$ date 063015582019.15更改当前时间

 

帮助命令 : help
命令名称:help
命令所在路径:Shell内置命令
执行权限:所有用户
语法:help 命令
功能描述:获得Shell内置命令的帮助信息(umask、cd等都为Shell内置命令)
范例: $ help umask 查看umask命令的帮助信息

注:找不到命令路径的命令都是Shell内置命令

4.5 用户管理命令

用户管理命令 :useradd
命令名称:useradd
命令所在路径:/usr/sbin/useradd
执行权限:root
语法:useradd 用户名
功能描述:添加新用户
范例: $ useradd yangmi

 

用户管理命令 :passwd
命令名称:passwd
命令所在路径:/usr/bin/passwd
执行权限:所有用户
语法:passwd 用户名
功能描述:设置用户密码(123456)
范例: $ passwd yangmi

 

用户管理命令 :who
命令名称:who
命令所在路径:/usr/bin/who
执行权限:所有用户
语法:who
功能描述:查看登录用户信息
范例: $ who 查看登录用户信息

图中格式为:(登录用户名    登录终端    登录时间    登录的主机的 IP 地址(未写则表示本机登录,即虚拟机登录))

tty表示本地终端(虚拟机登录或本机登录,虚拟机 IP 为192.168.92.2),此处远程登录工具CRT是通过192.168.92.1这台主机(即我的电脑)远程登录192.168.92.2这台主机(即虚拟机)

pts表示远程终端

第一行root信息表示虚拟机登录,虚拟机 IP 为192.168.92.2

第二行root表示远程登录工具CRT通过我的电脑( IP 为192.168.92.1)登录root用户

第三行yangmi表示远程登录工具CRT通过我的电脑( IP 为192.168.92.1)登录yangmi用户

 

用户管理命令 :w
命令名称:w
命令所在路径:/usr/bin/w
执行权限:所有用户
语法:w
功能描述:查看登录用户详细信息
范例: $ w 查看登录用户详细信息

4.6 压缩解压命令

压缩解压命令 :gzip
命令名称:gzip
命令英文原意:GNU zip
命令所在路径:/bin/gzip
执行权限:所有用户
语法:gzip [文件]
功能描述:压缩文件
压缩后文件格式:.gz

$ gzip boduo 以gzip格式压缩boduo空文件(不保留原文件,但保留原目录),其中$ rm -rf  * 为删除当前所处tmp目录中所有文件及目录

 

压缩解压命令 :gunzip
命令名称:gunzip
命令英文原意:GNU unzip
命令所在路径:/bin/gunzip
执行权限:所有用户
语法:gunzip [压缩文件]
功能描述:解压缩.gz的压缩文件
范例: $ gunzip boduo.gz 对boduo.gz进行解压

文件进行压缩与解压缩,可见压缩比例达到5倍多。

 

压缩解压命令 :tar
命令名称:tar
命令所在路径:/bin/tar
执行权限:所有用户
语法:tar 选项[-zcf] [压缩后文件名] [目录]
-c 打包
-v 显示详细信息
-f 指定文件名
-z 打包同时压缩
功能描述:打包目录
压缩后文件格式:.tar.gz

范例:
$ tar -cvf Japan.tar.gz Japan将目录Japan中文件打包为.Japan.tar文件

$ tar -zcf Japan.tar.gz Japan将目录Japan中文件打包并压缩为.Japan.tar.gz文件

tar命令解压缩语法:
-x 解包
-v 显示详细信息
-f 指定解压文件
-z 解压缩
范例:$ tar -zxvf Japan.tar.gz

删除Japan目录(蓝色的为目录,白色的为文件

范例:$ tar -zxvf Japan.tar.gz 对Japan.tar.gz 进行解压缩并显示详细信息

 

压缩解压命令 :zip
命令名称:zip
命令所在路径:/usr/bin/zip
执行权限:所有用户
语法:
zip 选项[-r] [压缩后文件名] [文件或目录]
-r 压缩目录
功能描述:压缩文件或目录
压缩后文件格式:.zip

范例:$ zip buduo.zip boduo压缩文件(原文件保留,同时生成压缩文件),图中可见压缩比为80%


$ zip -r Japan.zip Japan 压缩Japan目录


 

压缩解压命令 :unzip
命令名称:unzip
命令所在路径:/usr/bin/unzip
执行权限:所有用户
语法:unzip [压缩文件]
功能描述:解压.zip的压缩文件
范例:$ unzip boduo.zip解压boduo.zip压缩文件(解压后产生解压文件boduo,同时原文件boduo.zip保留

 

压缩解压命令 :bzip2
命令名称:bzip2
命令所在路径:/usr/bin/bzip2
执行权限:所有用户
语法: bzip2 选项 [-k] [文件]
-k 产生压缩文件后保留原文件
功能描述:压缩文件
压缩后文件格式:.bz2

$ tar -cjf Japan.tar.bz2 Japan 对Japan目录进行压缩
范例:$ bzip2 -k wode 以bz2格式压缩wode文件,产生压缩文件后保留原文件

 

压缩解压命令 :bunzip2
命令名称:bunzip2
命令所在路径:/usr/bin/bunzip2
执行权限:所有用户
语法: bunzip2 选项 [-k] [压缩文件]
-k 解压缩后保留原文件
功能描述:解压缩

$ tar -xjf Japan.tar.bz2 对Japan.tar.bz2目录压缩文件进行解压
范例:$ bunzip2 -k wode.bz2 以bz2格式解压wode文件, 解压缩后保留原文件

4.7 网络命令

网络命令:write
指令名称:write
指令所在路径:/usr/bin/write
执行权限:所有用户
语法:write <用户名>
功能描述:给用户发信息,以Ctrl+D保存结束
范例: # write yangmi 输入后按下回车开始给yangmi写信,如果有输入错误,按下ctrl+backspace键进行删除,最后以Ctrl+D保存结束

$ w 可查看yagnmi是否在线

 

网络命令:wall
指令名称:wall
命令英文原意:write all
指令所在路径:/usr/bin/wall
执行权限:所有用户
语法:wall [message]
功能描述:发广播信息
范例: # wall yangmi have a boyfriend already! 发送广播信息,按下ctrl + 回车键进行广播发送(在线服务器都能收到)

 

网络命令 :ping
命令名称:ping
命令所在路径:/bin/ping
执行权限:所有用户
语法:ping 选项 IP地址
-c 指定发送次数
功能描述:测试网络连通性
范例: # ping 192.168.92.2 进行虚拟机自己的网络测试,按下ctrl + c 结束

# ping -c 3 192.168.92.2 只进行ping三次

 

网络命令 :ifconfig
命令名称:ifconfig
命令英文原意:interface configure
命令所在路径:/sbin/ifconfig
执行权限:root
语法:ifconfig 网卡名称 IP地址
功能描述:查看和设置网卡信息
范例:# ifconfig eth0 192.168.92.2 临时配置虚拟机IP地址为192.168.92.2

 

网络命令 :mail
命令名称:mail
命令所在路径:/bin/mail
执行权限:所有用户
语法:mail [用户名]
功能描述:查看发送电子邮件(对方服务器不在线也可以发送)
范例:# mail yangmi 通过root给yangmi发送一封邮件,如果有输入错误,按下ctrl+backspace键进行删除,最后以Ctrl+D保存结束

# mail 在yangmi用户中进行接收,之后输入 1 进行邮件具体内容查看,d 1 进行邮件删除,q 退出

 

网络命令 :last
命令名称:last
命令所在路径:/usr/bin/last
执行权限:所有用户
语法:last
功能描述:列出目前与过去登入系统的用户信息
范例:# last 列出目前与过去登入系统的用户信息

 

网络命令 :lastlog
命令名称:lastlog
命令所在路径:/usr/bin/lastlog
执行权限:所有用户
语法:lastlog
功能描述:检查某特定用户上次登录的时间
范例:# lastlog 检查某特定用户上次登录的时间

# lastlog -u 501 查看用户最后一次访问信息,# id yangmi 可查看yangmi用户的 ID 信息

 

网络命令 :traceroute
命令名称:traceroute
命令所在路径:/bin/traceroute
执行权限:所有用户
语法:traceroute
功能描述:显示数据包到主机间的路径(跟踪路径)
范例:# traceroute www.sina.com

由上图可知本机IPv4的DNS服务器地址为192.168.0.1(因为DNS服务器是进行域名和与之相对应的IP地址之间转换的服务器,即将www.sina.com解析为61.158.251.244的服务器,所以得首先访问),下图中VMware8中DNS也可设置192.168.0.1(不设其实也可以上网)

####################################################################################################

本电脑由于有线网线短缺,所以使用无线网WIFI进行的网络连接,然后通过无线网络共享给虚拟网络VMware8,虚拟机通过VMware虚拟网络实现网络连接,具体设置要点见下图。

1、确保无线网络已连接(即本电脑有网),且将其共享打开(本电脑网络共享给虚拟网络VMware8)

2、查看VMware8的IP地址,本电脑的WMware8的网关为233

3、虚拟机的网络设置为自定义VMware8(NET)

4、确定虚拟网络VMnet8已启用,网关233

5、查看虚拟机的IP地址(如果网关不是233则设置为233)

6、在本电脑中ping 192.168.233.128(即虚拟机的网络IP地址)

成功后本电脑和虚拟机便都可以上网啦!!!

####################################################################################################

4.8 关机重启命令

1、shutdown命令(推荐使用)
[root@localhost ~]# shutdown [选项] 时间
选项:
-c: 取消前一个关机命令
-h: 关机($ shutdown -h now 现在关机)
-r: 重启

2、其他关机命令
[root@localhost ~]# halt
[root@localhost ~]# poweroff
[root@localhost ~]# init 0

3、其他重启命令
[root@localhost ~]# reboot
[root@localhost ~]# init 6(6级别表示重启)

4、系统运行级别
0 关机
1 单用户(安全模式)
2 不完全多用户,不含NFS服务
3 完全多用户(字符界面)
4 未分配
5 图形界面(X11)
6 重启

[root@localhost ~]# cat /etc/inittab   修改系统默认运行级别
id:3:initdefault:
[root@localhost ~]# runlevel   查询系统运行级别

5、退出登录命令
[root@localhost ~]# logout 退出登录

第五讲 文本编辑器Vim

5.1 Vim常用操作

Vim 简介
Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器,它的作用是建立、编辑、显示文本文件。Vim 没有菜单,只有命令。

创建一个叫yiwofeiye.msg的编辑文件

输入 i 进入插入模式(同windows中记事本下的编辑模式)

按下 ESC键 进入命令模式,$ :set number 加行号(命令模式下输入冒号进入命令的编辑模式,命令以回车结束运行

$ :wq! 保存并退出文件后,显示下图表示保存成功

 

插入命令

 

定位命令

 

删除命令

 

复制和剪切命令

 

替换和取消命令

 

搜索和搜索替换命令

 

保存和退出命令

5.2 Vim使用技巧

导入命令执行结果 :r !命令

编辑issue文件

$ :r /etc/issue 将issue文件中的内容导入到当前文件光标所在位置

$ :r !date  将当前日期内容导入到当前文件光标所在位置


定义快捷键 :map 快捷键 触发命令
范例: : map ^P I#<ESC> 使用该命令后,在命令模式时按下ctrl + p 则可以跳到行首并插入#注释号(即 I 的作用)

注:图中^P要同时按下ctrl + v + p

按下ctrl + p 便可注释当前行


$ : map ^B 0x 命令后,在命令模式下输入ctrl + b 则可取消光标当前行注释
$ :n1,n2s/^/#/g  注释连续行注释
:n1,n2s/^#//g
:n1,n2s/^/\/\//g
 替换 :ab mymail samlee@lampbrother.net

$ :map ^H i 1837393417@qq.com <ESC> 命令后,在命令模式下输入ctrl + h 则可在光标处插入此qq邮箱

将自己定义的快捷键命令写入到配置文件中,则电脑重启后仍然有效

打开yiwofeiye.msg文件,输入mymail,按下回车后将自动变成我的qq邮箱,^P与^H快捷键功能见上文。

第六讲  Linux 软件安装

6.1 软件包管理简介

1、软件包分类
源码包(脚本安装包,例如C源码包)
二进制包(RPM包、系统默认包)(即源码经过编译后生成的二进制包)

2、源码包
源码包的优点是:
开源,如果有足够的能力,可以修改源代码
可以自由选择所需的功能
软件是编译安装,所以更加适合自己的系统,更加稳定也效率更高
卸载方便
源码包的缺点
安装过程步骤较多,尤其安装较大的软件集合时(如LAMP环境搭建),容易出现拼写错误
编译过程时间较长,安装比二进制安装时间长
因为是编译安装,安装过程中一旦报错新手很难解决
3、RPM包
二进制包的优点
包管理系统简单,只通过几个命令就可以实现包的安装、升级、查询和卸载
安装速度比源码包安装快的多
二进制包缺点:
经过编译,不再可以看到源代码
功能选择不如源码包灵活
依赖性(安装过程由于依赖性,手动安装很繁琐)

6.2 RPM包管理-rpm命令管理

6.2.1 包命名与依赖性

1、RPM包命名原则
httpd-2.2.15-15.el6.centos.1.i686.rpm(包全名)
httpd 软件包名
2.2.15  软件版本
15  软件发布的次数
el6.centos 适合的Linux平台
i686 适合的硬件平台
rpm rpm包扩展名

2、RPM包依赖性
树形依赖: a→b→c(安装时则需要按c、b、a的顺序安装,卸载时按a、b、c顺序卸载)
环形依赖: a→b→c→a
模块依赖: 模块依赖查询网站:
www.rpmfind.net

创建挂载点、把光盘放进去(挂载光盘)、进入光盘目录下、打开文件或目录

打开Packages目录

6.2.2 安装升级与卸载

1、包全名与包名
 包全名:操作的包是没有安装的软件包时,
使用包全名。而且要注意路径
 包名:操作已经安装的软件包时,使用包名。
是搜索/var/lib/rpm/中的数据库

2、RPM安装
rpm –ivh 包全名

$ mount 检测是否挂载光盘(由下图可知已挂载,如若未挂载,请看上节笔记)

进入到Packages目录下

注:按下tab键,将自动将所有以已输入开头的安装包都列出来

选项:
-i(install) 安装
-v(verbose)  显示详细信息 
-h(hash) 显示进度
--nodeps  不检测依赖性

如下图,apr安装成功

如下图,apr-util 包安装成功

如下图,apr-util- ldap 包安装成功

如下图,httpd-tools 包安装成功

将apr重装一次,检测依赖性是否已经解决了(由下图可知,apr已安装成功)

3、RPM包升级
rpm -Uvh 包全名
选项:
-U(upgrade) 升级

3、卸载
rpm -e 包名
选项:
-e(erase)  卸载
--nodeps 不检查依赖性

$ rpm -e httpd 卸载apr(阿帕奇)

6.2.3 命令管理与查询

1、查询是否安装
[root@localhost ~]# rpm -q 包名                     # 查询 httpd(阿帕奇) 包是否安装


选项:
-q  查询(query)

-a  所有(all)
[root@localhost ~]# rpm –qa                         # 查询所有已经安装的 RPM 包

[root@localhost ~]# rpm –qa | grep httpd                     # 查询所有已经安装的 与httpd有关的RPM 包

 

2、查询软件包详细信息
[root@localhost ~]# rpm –qi 包名    
选项:
-i  查询软件信息(information)
-p  查询未安装包信息(package)

# rpm –qi httpd          #查询软件包httpd详细信息

查询未安装包的详细信息

 

3、查询包中文件安装位置
[root@localhost ~]# rpm –ql 包名
选项:
-l  列表(list)
-p  查询未安装包信息(package)

# rpm –ql httpd          #查询软件包httpd的文件安装位置

 

4、查询系统文件属于哪个RPM包
[root@localhost ~]# rpm –qf 系统文件名
选项:
-f 查询系统文件属于哪个软件包(file)

# rpm –qf  /var/www/icons/up.gif          #查询系统文件 up.gif 属于哪个RPM包

 

5、查询软件包的依赖性
[root@localhost ~]# rpm –qR 包名
选项:
-R 查询软件包的依赖性(requires)
-p 查询未安装包信息(package)

# rpm –qR httpd          #查询软件包httpd(阿帕奇)属于哪个RPM包

6.2.4 校验和文件提取

1、RPM包校验
[root@localhost ~]# rpm –V 已安装的包名
选项:
-V 校验指定RPM包中的文件(verify)

无提示,可见未修改过

修改 /etc/httpd/conf/httpd.conf 目录下的httpd.conf文件

保存后,再校验得

可见S、5、T改变了

验证内容中的8个信息的具体内容如下:
S  文件大小是否改变
M 文件的类型或文件的权限(rwx)是否被改变
5  文件MD5校验和是否改变(可以看成文件内容是否
改变)
D  设备的中,从代码是否改变
L  文件路径是否改变
U  文件的属主(所有者)是否改变
G  文件的属组是否改变
T  文件的修改时间是否改变

文件类型
c  配置文件(config file)
d  普通文档(documentation)
g  “鬼”文件(ghost file),很少见,就是该文件不
应该被这个RPM包包含
l  授权文件(license file)
r  描述文件(read me)

 

2、RPM包中文件提取
[root@localhost ~]# rpm2cpio 包全名 | \
cpio -idv .文件绝对路径
rpm2cpio 
# 将 rpm 包转换为 cpio 格式的命令
cpio
# 是一个标准工具,它用于创建软件档案文件和从档案文件中提取文件

[root@localhost ~]# cpio 选项 < [文件|设备]
选项:
-i:copy-in模式,还原
-d:还原时自动新建目录
-v:显示还原过程

[root@localhost ~]# rpm -qf /bin/ls
# 查询 ls 命令属于哪个软件包


[root@localhost ~]# mv /bin/ls /tmp/
# 将ls命令所在的文件移动到tmp中,造成 ls 命令误删除假象,则ls命令失效


[root@localhost ~]# rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls
# 提取 RPM 包中 ls 命令复制到当前目录的 /bin/ls 下


[root@localhost ~]# cp /root/bin/ls /bin/


# 把 ls 命令复制会 /bin/ 目录,修复文件丢失

6.3 RPM包管理-yum在线管理(自动在线安装)

6.3.1 IP地址配置和网络yum源

1、IP地址配置
[root@localhost ~]# setup               #使用setup工具


[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
把ONBOOT=“no” 改为
ONBOOT=“yes“
#启动网卡


[root@localhost ~]# service network restart           #重启网络服务

注:在局域网(即不是直接拨号上网,如学校、公司等连的wifi)中,有IP、子网掩码就可以了。

如果要直接访问互联网(拨号上网,即直接插网线),IP、子网掩码、网关、DNS,缺一不可。

$ ping www.sina.com.cn 确保虚拟机能够访问互联网,按下ctrl + c 结束访问

2、网络yum源(即网络地址池)
[root@localhost yum.repos.d]# vi /etc/yum.repos.d/CentOS-Base.repo 打开CentOS-Base.repo文件


 [base] 容器名称,一定要放在[]中
 name 容器说明,可以自己随便写
 mirrorlist  镜像站点,这个可以注释掉
 baseurl  我们的yum源服务器的地址。默认是CentOS官方的yum源服务
器,是可以使用的,如果你觉得慢可以改成你喜欢的yum源地

 enabled  此容器是否生效,如果不写或写成enable=1都是生效,写成
enable=0就是不生效
 gpgcheck  如果是1是指RPM的数字证书生效,如果是0则不生效
 gpgkey  数字证书的公钥文件保存位置。不用修改

6.3.2 yum命令

1、常用yum命令
1)查询
[root@localhost yum.repos.d]# yum list                            # 查询所有可用软件包列表

截图的几个软件包属于base容器
[root@localhost yum.repos.d]# yum search 关键字                     # 搜索服务器上所有和关键字相关的包

$ yum search httpd 搜索服务器上和httpd相关的包

2)安装
[root@localhost yum.repos.d]# yum –y install 包名
选项:
install  安装
-y 自动回答yes

$  yum -y install gcc便可以自动完成gcc编译器的安装,不需要考虑依赖性,相当于会自动安装(所有的源码包必须通过gcc编译器才能翻译成计算机可以识别的机器语言

[root@localhost ~]# rpm -q 包名                     # 查询 gcc 包是否安装

可见gcc包安装成功

3)升级
[root@localhost yum.repos.d]# yum -y update 包名
选项:
update  升级
-y 自动回答yes

 

4)卸载(不是很安全)
[root@localhost yum.repos.d]# yum -y remove 包名
选项:
remove  卸载
-y     自动回答yes

 

2、YUM软件组管理命令
[root@localhost ~]# yum grouplist                  #列出所有可用的软件组列表


[root@localhost ~]# yum groupinstall 软件组名               #安装指定软件组,组名可以由grouplist查询出来
[root@localhost ~]# yum groupremove 软件组名            #卸载指定软件组

6.4 源码包管理

6.4.1 源码包和RPM包的区别

1、区别
安装之前的区别:概念上的区别
安装之后的区别:安装位置不同

2、RPM包安装位置
是安装在默认位置中

3、源码包安装位置
 安装在指定位置当中,一般是
/usr/local/软件名/

$ rpm -ql httpd 查看阿帕奇安装包的安装位置

4、安装位置不同带来的影响
RPM包安装的服务可以使用系统服务管理命令(service)来管理,例如RPM包安装的apache的启动方法是:
 /etc/rc.d/init.d/httpd start(启动方法一)


 service httpd start(启动方法二)

而源码包安装的服务则不能被服务管理命令管理,因为没有安装到默认路径中。所以只能用绝对路径进行服务的管理,如:
 /usr/local/apache2/bin/apachectl start

 

 

 

  • 35
    点赞
  • 198
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亦我飞也

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值