一、初识

Linux与windows相比的优点是:长期稳定的运行,避免了因为系统的问题导致的项目运行中断;占用资源少;开源软件多。

Centos(Community Enterprise Operating System)是基于redhat,去掉商业软件,用开源软件替换。

操作系统是本质就是一系列软件,内核+常用软件组成,功能是帮助用户控制硬件来解决实际需求的操作。

二、安装过程中的知识点

虚拟机是在我们的操作系统中用软件模拟出来的,相当于虚拟机是寄宿在我们真实的物理机系统里,虚拟机和物理机是寄宿与被寄宿的关系,真实的物理机被称为宿主机。

Bridged(桥接模式):通过网络地址可以确定我们在互联网中的位置,桥接模式就是将我们虚拟机中的网卡的网络地址,放在我们真实的物理环境的网卡上。这样的话,我们的虚拟机就像我们的宿主机所在的局域网中的一台机器一样。桥接模式适合有路由器的情况,和真实的物理环境一样。

NAT(网络地址转换模式):在宿主机制作一个虚拟网卡,通过这个网卡给虚拟机分配IP。宿主机在这里的角色相当于局域网中的路由器。NAT模式适合于没有路由的情况,虚拟机通过宿主机取上网。

Host-Only模式和NAT的区别在于没有地址转换服务。该模式下的 虚拟机只能访问到主机,无法访问外网。

三、Linux目录结构

/ : 根目录所有目录都在

/boot : boot 配置文件、内核和其它启动 时所需的文件

/etc : 存放系统配置有关的文件

/home : 存放普通用户目录

/mnt : 硬盘上手动 挂载的文件系统

/media : 自动挂载(加载)的硬盘分区以及类似CD、数码相机等可移动介质。

/cdrom : 挂载光盘?

/opt : 存放一些可选程序,如某个程序测试版本,安装到该目录的程序的所有数据,库文件都存在同个目录下

/root : 系统管理员的目录,对于系统来说,系统管理员好比上帝,他可以对系统做任何操作,比如删除你的文件,一般情况下不要使用root用户。

/bin : 存放常用的程序文件(命令文件)。

/sbin : 系统管理命令,这里存放的是系统管理员使用的管理程序

/tmp : 临时目录,存放临时文件,系统会定期清理该目录下的文件。

/usr : 在这个目录下,你可以找到那些不适合放在/bin或/etc目录下的额外的工具。比如游戏、打印工具等。

/usr目录包含了许多子目录:

/usr/bin目录用于存放程序;

/usr/share用于存放一些共享的数据,比如音乐文件或者图标等等;

/usr/lib目录用于存放那些不能直接 运行的,但却是许多程序运行所必需的一些函数库文件。

/usr/local : 这个目录一般是用来存放用户自编译安装软件的存放目录;一般是通过源码包安装的软件,如果没有特别指定安装目录的话,一般是安装在这个目录中。

/var : 该目录存放那些经常被修改的文件,包括各种日志、数据文件;

/var/cache/ 应用程序缓存数据。这些数据是在本地生成的一个耗时的I/O或计算结果。应用程序必须能够再生或恢复数据。缓存的文件可以被删除而不导致数据丢失。

/var/lib/ 状态信息。 由程序在运行时维护的持久性数据。 例如:数据库、包装的系统元数据等。

/var/lock/ 锁文件,一类跟踪当前使用中资源的文件。

/var/log/ 日志文件,包含大量日志文件。

/var/mail/ 用户的电子邮箱。

/var/run/ 自最后一次启动以来运行中的系统的信息,例如:当前登录的用户和运行中的守护进程。现已经被/run代替[13]。

/var/spool/ 等待处理的任务的脱机文件,例如:打印队列和未读的邮件。

/var/spool/mail/ 用户的邮箱(不鼓励的存储位置)

/var/tmp/ 在系统重启过程中可以保留的临时文件。

/lib : 目录是根文件系统上的程序所需的共享库,存放了根文件系统程序运行所需的共享文件。这些文件包含了可被许多程序共享的代码,以避免每个程序都包含有相同的子程序的副本,故可以使得可执行文件变得更小,节省空间。

/lib32 : 同上

/lib64 : 同上

/lost+found : 该目录在大多数情况下都是空的。但当突然停电、或者非正常关机后,有些文件就临时存放在;

/dev : 存放设备文件

/run : 代替/var/run目录,

/proc : 虚拟文件系统,可以在该目录下获取系统信息,这些信息是在内存中由系统自己产生的,该目录的内容不在硬盘上而在内存里;

/sys : 和proc一样,虚拟文件系统,可以在该目录下获取系统信息,这些信息是在内存中由系统自己产生的,该目录的内容不在硬盘上而在内存里;

SWAP分区的作用:

当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。

sudo cat /proc/sys/vm/swappiness该值默认值是60.

swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,

swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。

--临时性修改:

[root@rhce ~]# sysctl vm.swappiness=10

m.swappiness = 10

[root@rhce ~]# cat /proc/sys/vm/swappiness

10

这里我们的修改已经生效,但是如果我们重启了系统,又会变成60.

-永久修改:

在/etc/sysctl.conf 文件里添加如下参数:

vm.swappiness=10

四、命令

mkdir == make directory         创建目录

    -p parent当父目录不存在时,自动创建父目录

mkdir

ls    == list     查看指定目录下的内容

   参数 -l 显示文件或目录的详细信息

ls

pwd   == print work directory    打印当前目录

cd    == change directory       切换目录

touch      创建一个空白文件

vi编辑文本:

1.vi    文本编辑器
2.i 插入模式
3.esc 退出编辑模式
4.:wq保存并退出

查看:

cat   一次查看文件的所有内容
more 分页查看文件的内容,翻页按空格,一行行看用回车键
less 分页查看文件的内容,想对于more,支持回看

复制:

cp    == copy                    复制,拷贝

移动:

mv    == move                    移动,剪贴

删除

rm    == remove    删除
参数 -f 强制删除
参数 -r配合-f一起使用,不提示直接删除目录

head  取文件的头部n行

tail  取文件的倒数n行

seq   生成队列

alias 查看别名

定义别名alias ipr='ip addr'

unalias 取消别名 unalias ipr

find   查找

sed 's#./hostlists.txt#../idctest_iplist#g'

特殊符号:

***** |  管道

/  根目录

.  当前目录

~  用户家目录

-  上一次所在的目录

.. 上一级目录

{ } 代表一个范围

>   重定向

相对路径: etc/services

绝对路径:/etc/services

五、常用操作

(1)创建目录

mkdir  /data

(2)新建文件

cd    /data

touch oldboy.txt

(3)编辑文件

vi oldboy.txt

默认进入常规模式,按i进入到插入模式,I am studying linux. 按esc回到常规模式,:wq保存并退出

i光标当前插入

a光标之后插入

o光标的下一行

(4)查看文件内容(一次性查看所有内容)

cat aa.txt

(5)拷贝文件到目标目录下

cp aa.txt  /tmp/

(6)移动目录及目录下所有文件和子文件夹到目标目录下

mv file_or_dir target_file_or_dir

(7)删掉目录及目录下所有文件及子文件夹

rm -rf data

(8)linux三剑客

***** grep  最擅长过滤

***** sed   擅长替换

***** awk   擅长取列

方法1:grep -v 'oldboy' test.txt

方法2:sed '/oldboy/d' test.txt

方法3:awk 'NR<3' test.txt

方法4:head -n 2 test.txt

(9)拷贝目标文件到有同名文件的文件夹下,要求不提示替换

方法1:/usr/bin/cp -i /mnt/test.txt /tmp

方法2:\cp /mnt/test.txt  /tmp

方法3:unalias cp

cp /mnt/test.txt /tmp

(10)查看文件某部分内容

head -n 30 ett.txt|tail -n 11

awk 'NR>19 && NR<31' ett.txt

sed -n '/20/,/30/p' ett.txt

grep '20' -A 10 ett.txt

grep '30' -B 10 ett.txt

grep '25' -C 5 ett.txt

(11)将目标文件夹下所有以.sh结尾的文件中的特定内容替换为其他内容

find /oldboy -type f -name "*.sh"|xargs sed -i 's#./hostlists.txt#../idctest_iplist#g'

find找出来的结果,是一段文本信息,xargs将找出来的文本,转换成文件对象

linux基本的更多相关文章

  1. Linux 驱动开发

    linux驱动开发总结(一) 基础性总结 1, linux驱动一般分为3大类: * 字符设备 * 块设备 * 网络设备 2, 开发环境构建: * 交叉工具链构建 * NFS和tftp服务器安装 3, ...

  2. Linux 内核概述 - Linux Kernel

    Linux 内核学习笔记整理. Unix unix 已有40历史,但计算机科学家仍认为其是现存操作系统中最大和最优秀的系统,它已成为一种传奇的存在,历经时间的考验却依然声名不坠. 1973 年,在用 ...

  3. 死磕内存篇 --- JAVA进程和linux内存间的大小关系

    运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...

  4. NodeJs在Linux下使用的各种问题

    环境:ubuntu16.04 ubuntu中安装NodeJs 通过apt-get命令安装后发现只能使用nodejs,而没有node命令 如果想避免这种情况请看下面连接的这种安装方式: 拓展见:Linu ...

  5. [linux]阿里云主机的免登陆安全SSH配置与思考

    公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...

  6. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ...

  7. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  8. SQL Server on Linux 理由浅析

    SQL Server on Linux 理由浅析 今天的爆炸性新闻<SQL Server on Linux>基本上在各大科技媒体上刷屏了 大家看到这个新闻都觉得非常震精,而美股,今天微软开 ...

  9. Microsoft Loves Linux

    微软新任CEO纳德拉提出的“Microsoft Loves Linux”,并且微软宣布.NET框架的开源,近期Microsoft不但宣布了Linux平台的SQL Server,还宣布了Microsof ...

  10. Linux 江湖系列阶段性总结

    引言 我使用 Linux 已经有很多年了,最开始接触 Linux 的时候是从 RedHat 9(没有 Enterprise),中途换过 N 个不同的发行版.多年前,我在 BlogJava 上面分享 J ...

随机推荐

  1. 用MyEclipse自带工具生成WebService客户端代码

    本文章主要是介绍如何利用已经发布了的Webservice的wsdl来自动生成java的客户端代码.注意:本方法需要你采用的java版本是1.5或者以上的版本,采用MyEclipse来自动生成代码. w ...

  2. ImportError: No module named google.protobuf.internal

    下载: protobuf-3.3.0 设置路径:export PYTHONPATH=/gruntdata/lihaiyang/local/protobuf-3.3.0/python:$PYTHONPA ...

  3. SpringBoot2.0.3 + SpringSecurity5.0.6 + vue 前后端分离认证授权

    新项目引入安全控制 项目中新近添加了Spring Security安全组件,前期没怎么用过,加之新版本少有参考,踩坑四天,终完成初步解决方案.其实很简单,Spring Security5相比之前版本少 ...

  4. Docker镜像的使用

    当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载. 下面我们来学习: 1.管理和使用本地 Docker ...

  5. POJ 3460 Booksort(算竞进阶习题)

    IDA* 这题真不会写..估价函数太巧妙了.. 按照lyd神牛的说法我们把a[i+1]=a[i]+1记为正确后继,反之则记为错误后继 那么考虑最优的一次交换区间,至多能够纠正三个错误后继,所以我们统计 ...

  6. 【XSY1580】Y队列 容斥

    题目大意 给你\(n,r\),求第\(n\)个不能被表示为\(a^b(2\leq b\leq r)\)的数 \(n\leq 2\times {10}^{18},r\leq 62\) 题解 我们考虑二分 ...

  7. 各种反演细节梳理&模板

    炫酷反演魔术课件byVFK stO FDF Orz(证明全有%%%) 莫比乌斯反演 \(F(n)=\sum\limits_{d|n}f(d)\Rightarrow f(n)=\sum\limits_{ ...

  8. 【CF1097F】Alex and a TV Show(bitset)

    [CF1097F]Alex and a TV Show(bitset) 题面 洛谷 CF 题解 首先模\(2\)意义下用\(bitset\)很明显了. 那么问题在于怎么处理那个\(gcd\)操作. 然 ...

  9. ssh 免密root登录

    安装SSH SERVER 在所有的节点上都安装SSH server服务. # apt-get install openssh-server1 因为我们搭建的Ceph直接使用root用户,所以需要修改s ...

  10. proxy.conf编写

    #这里的test.com要与proxy_pass http://test.com 一至!upstream test.com { ip_hash; server 172.16.0.20:80; serv ...