Linux基础及入门介绍

一、linux发展历程

①1969年unix诞生贝尔实验室

②谭宁邦:minix unix

③斯托曼(stallman),公司:自由软件基金会(FSF)

项目:GNU

规则:GPL(所有人可以自由传播,自由修改)

④斯托曼:91年开发出linux内核。

二、如何选择linux的发行版本

(一)linux桌面系统

①Ubuntu(乌班图),开发人员开发平台

②服务器linux系统:

redhat,centos(去掉redhat收费软件,去掉红帽里面的log)

③安全性较高:debian,freedsd

④数据库高级服务:openSUSE

⑤新技术、新功能:Fedora(稳定性:Fedora》redhat》centos)

⑥中文版本:红旗linux,麒麟linux。

三、企业标准选择系统

(一)系统分类

centos6.*,centos7. *

官网为:Centos.org

国内镜像网站:mirrors.aliyun.com

镜像源解释:

LiveDVD:体验版,写入到光盘中个,刻录到u盘中。

bin-DVD:生产中使用的。

torrent:下载种子。

(二)系统位数区别及虚拟机

32位和64位区别

①设计时候定位不同。

②安装配置要去不同。

③运算速度不同。

④寻址能力不同。

四、虚拟机

在一台计算机上,虚拟出多台计算机。

(一)学习环境的选择与推荐配置

Win7/10,intel i5以上cpu,内存8G以上,硬盘500G

虚拟机版本选择:

windows:Vmware 8.0/12

mac:vmware fusion

(二)虚拟机创建(vmware)

创建新的虚拟机--自定义--稍后安装操作系统--linux/redha/centos--虚拟机名称、虚拟机存放位置(vmware)--处理器配置(默认)--内存设置(大于1G)--网络类型(推挤nat)--磁盘(默认)-创建一个新的磁盘--指定磁盘容量(20G)--指定磁盘位置。

(三)虚拟机常见问题

①权限不够:右击以管理员身份运行

②编辑虚拟机配置:

CD/DVD:使用ISO读取文件,选择镜像所在的位置。

③点击运行虚拟机

Inter-vt-x不支持。

重启计算机后-F1,F2 进入安全模式:

security-vitualizaition-vitualizaition(开启)

vmware 相关windows服务没有开启:

services.msc 启动所有vmware

(四)企业级标准安装centos系统

运行虚拟机:选择

①install or upgrade an existing system

rescue installled system 启动救援模式

②media found --skip

③语言选择:English

④键盘:默认

⑤安装硬件存储类型:basic storage device

⑥hostname:centos6.9

⑦时区:上海

⑧设置root密码:123456

⑨分区:

use all space 使用所有空间

replace existing linux system 替换现有linux系统

shrink current system 缩小现有系统

use free space 使用剩余空间

***create custom layout 创建自定义布局

/boot 引导系统启动--200M

swap --内存的1.5倍。交换分区,临时作为内存使用

/ 根分区,剩余多少给多少。一切从根开始(c盘)。

点击(分区3次,点击3次):Free,选择分区,force to be primary partion。--format(格式化)

选择安装方式安装系统:minmal 最小化,customize now(自定义)

base system:base,cmpatibility libraries,debugging tools

deveplopment:deveplopment tools

reboot (重启)

配置虚拟机网络:

vmware 编辑虚拟网络编辑器:点击nat模式

(五)Linux网络配置

网络配置:

①setup-②network-configuration-③device conf -④eth0-⑤network configuration(去掉型号,按空格)-⑥ok-⑦save-⑧saveandquit-⑨quit

网卡的配置生效:

重启网卡:ifdown eth0;ifup eth0

查看网卡信息:ifconfig

(六)xshell 安装与优化

常用登陆登陆工具:xshell,secureCRT,putty

文件-属性:进行个性化设置

工具-选项:文件存储位置

登陆失败问题排除:

ip地址+端口(22)

vmware 的3种的网络模式

①电脑pc--皇帝

②虚拟机--贫民百姓

贫民百姓只关注谁给分配房子。

NAT模式:

①电脑pc---皇帝

②nat----宰相

③虚拟机---贫民百姓

贫民百姓的房子是宰相分配的,与皇帝无关。

虚拟机的ip是nat分配的,电脑环境无论怎么变化,都不会影响虚拟机。

好处:无论何处,连接虚拟机都可以使用相同的IP。

桥接模式:

①电脑pc--皇帝

②虚拟机--贫民百姓

只要更换环境,电脑和虚拟机的ip地址都会变化。

仅主机模式:

①电脑pc--皇帝

②虚拟机--贫民百姓

虚拟机贫民百姓被控制了,无法与外界联系,无法上网。

远程连接排错:屌丝去洗浴中心之路

①查看道路是否畅通

ping服务器的ip地址(本地shell进行ping测试)

②是否有人打劫

③查看是否提供服务

本地测试:telnet ip 端口

五、知识回顾

(一)基础知识

1.1解释下什么是GPL,GNU,自由软件

GNU:GNU is not unix

自由软件:gawk,bash,gcc,cmacs

GPL:通用许可证

1.2.如何选择linux操作系统发行版本?

redhat ,centos

1.3linux下面进行分区的几种方法?

/boot 引导分区

swap 交换分区

/ 根目录

1.4远程连接排错问题?

使用ping和telnet命令在本地进行测试:ip和端口。

(二)初次接触linux必会规则

[root@centos6-kvm2 ~]#

用户名,主机名,当前位置,提示符

linux系统命令操作语法的命令

命令和参数之间要有空格。

六、linux使用命令

/ 一切从根从开始。(斜线方向和win相反)

(1)创建一个目录(directory):

mkdir /data

ls #list 列表,显示目录里面的内容。

ls -l /data #查看目录里详细信息(tap键可以自动补全)。

(2)进入到某个目录:

cd /data

绝对路径:从根开始的路径,最前面有个/,如:/data,/etc/hosts

相对路径:不是从根目录开始,前面无/。

pwd #查看当前目录位置。

(3)创建文件:

touch /data/oldboy.txt

ls -l /data/

(4)编辑文件内容

vim /data/oldboy.txt

编辑文件:i

保存编辑文件:esc ,:wq!(q!强制退出,不保存编辑内容)。

(5)查看文件内容

查看编辑文件的内容:cat /data/oldboy.txt

(6) echo 命令使用

echo hello world

将内容追加到文件最后一行:(》重定向符号)

echo hello world >>/data/oldboy.txt

⑥在文件中放入多行内容

cat >>/data/oldboy.txt<<EOF

i

am

。。。

EOF(end of file ,也可以使用其他符号,和上面配对使用即可)

(7)重定向符号

标准输出重定向(>),将文件内容清空后再写入。

追加重定向(>>),把内容放在文件最后一行。

重定向符号前有1(1>>,1>),将正确的内容重定向至文件。

重定向符号前有2(2>,2>>),将错误的内容重定向至文件。(错误命令执行的结果),如:eho hello >>/data/oldboy.txt 2>>/data/oldboy.txt。可以简写成:eho hello >> /data/oldboy.txt 2>&1 #把错误的对的信息都放入。

小于号(<):输入重定向

xargs #分组命令

[root@centos6-kvm2 ~]# mkdir /data
[root@centos6-kvm2 ~]# touch /data/num.txt
[root@centos6-kvm2 ~]# echo 1 2 3 4 5 >>/data/num.txt
[root@centos6-kvm2 ~]# xargs -n2 </data/num.txt 
1 2
3 4
5
[root@centos6-kvm2 ~]# 

两个大鱼号(>>):

[root@centos6-kvm2 ~]# cat >> /data/num.txt << EOF
> I AN
> STUDING
> LINX
> EOF
[root@centos6-kvm2 ~]# 

(8)复制(cp)

复制文件:

cp /data/oldboy.txt /data/num.txt

备份:

cp /data/oldboy.txt /data/oldboy.txt .bak

复制目录:

cp /data /temp (omitting directory 忽略这个目录)

cp -r /data /temp (递归复制)

复制目录也可以:cp -a /data /tmp (-a,-pdr,复制所有:-p保持属性)

(9)将文件移动(mv,剪切)

mv /data/oldboy.txt /temp

ls -l /data/oldboy.txt

注意:vmware快照功能。

(10)进入目录删除文件

cd /tmp/data

ls -l #查看当前目录内容

rm oldboy.txt #-f,强制删除

rm -r /data #删除目录-r,-rf强制删除

注意:快捷键

ctrl +c #退出

ctrl + l #清屏

(11)find 命令使用

find /root/ -type f -name "oldboy.txt"

-type :类型,f文件,d目录

-name :名字,使用双引号。范围查找:“*.txt”

管道符:|,把前面命令的结果,传递给后面的命令。管道符和xargs 搭档使用。

[root@centos6-kvm2 /]# find /data/ -type f -name "num.txt" | xargs ls -l
-rw-r--r-- 1 root root 28 Dec 11 00:01 /data/num.txt
[root@centos6-kvm2 /]# 

(12)退出至上一级目录

cd ..#退至上一级目录

cd ../#退至根目录

注意:(.)一个点表示当前目录。

(13)删除文件中固定的内容

grep :查找内容所在的行,-v,取相反的内容

[root@centos6-kvm2 /]# grep -v 'AM' /data/num.txt

head #默认取前10行,-nxx,取前xx行。

[root@centos6-kvm2 /]# head /data/num.txt -n 2

tail:#默认取后10行,-nxx,取后xx行。

[root@centos6-kvm2 /]# tail -2 /data/num.txt

awk:过滤,!表示取反。

[root@centos6-kvm2 /]# awk '!/OLDBOY/' /data/num.txt

sed:过滤

[root@centos6-kvm2 /]# sed '/OLDBOY/d' /data/num.txt

(14)使用一条命令创建目录(多级)

mkdir -p /oldboy/test #-p,创建多级命令;-v显示创建过程。

(15)已知tmp下已经存在test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到tmp下覆盖掉/tmp/test.txt,而让系统不提示是否覆盖(root权限下)。

强制:不提示确认键

方法1:反斜线\

方法2:使用命令的绝对路径,全路径(如:which cp)

-i #命令提示参数,linux别名中带有-i

linux别名:防止危险命令,简化命令。

临时设置linux别名:

查看系统中别名:alias cp

配置别名:

执行rm 让其显示 do not rm:

alias rm='echo do not rm'

永久设置linux别名:

vim /etc/profile

alias rm='echo do not rm'

source /etc/profile #使其生效。

移动光标至最后一行:G

移动光标至第一行:gg

在光标所在位置的下一行插入一行,并进入编辑模式:o

在vim /root/.bashrc 中有:rm,cp,mv -i的别名,如果要修改,需要将这个文件中的别名注释掉。

命令前加\,临时取消别名。

(16)取出某一行或者多行

sed -n '20p' /data/num.txt

sed 默认取出所有内容,-n参数,只取出所选择的内容。

[root@centos6-kvm2 /]# sed -n '10,15p' /data/num.txt 
[root@centos6-kvm2 /]# sed -n '10p' /data/num.txt 

head +tail组合:

[root@centos6-kvm2 /]# head -15 /data/num.txt | tail -5

awk:

[root@centos6-kvm2 /]# awk 'NR==10,NR==15' /data/num.txt 
1
1
1

1
4
[root@centos6-kvm2 /]# sed -n '10,15p' /data/num.txt 
1
1
1

1
4
[root@centos6-kvm2 /]# 

小结:

1取出文件某一行

awk:三剑客之老三,擅长取列,NR表示行号。

sed :三剑客之老二,取行,与p配合使用。-n取消默认输出

'10p','10,15p'

head + tail组合使用。

grep -A10,找到显示的内容及接下来的行。

(17)替换文件工作

找出文件

find /data/ -type f -name '*.text'

把oldboy文件的内容替换成oldgirl

[root@centos6-kvm2 /]# sed -i 's#OLDBOY#OLDGIRL#g' /data/num.txt 

把find命令找到内容交给后面命令处理

[root@centos6-kvm2 /]# find /data/ -type f -name num.txt | xargs  sed -i 's#OLDBOY#OLDGIRL#g' /data/num.txt 

注意:linux命令帮助,man 命令

posted @ 2019-12-16 00:59  cuiyongchao007  阅读(429)  评论(0编辑  收藏  举报