您的位置:首页 > 运维架构 > Linux

Linux初学笔记

2017-08-04 22:52 239 查看
笔记一:

关机:先关虚拟机,然后再关闭物理机

什么是内核:管理底层工作,优先级问题等

命令运行在内核之上

GPL:全部开源

LGPL:可开源部分

最初的开源软件都是用C语言写的

 

Linux特性:

真正多用户、多任务操作系统;

符合POSIX的系统

提供shell命令解释程序和编程语言

提供强大管理功能,包括远程功能

具有内核的编程接口(运算速度快,但有安全问题)

具有图形用户界面

 

 

Linux的基本思想:

1、 一切都是文件(屏蔽硬件区别,所有设备都抽象成文件,提供统一的借口给用户)

2、 由短小精悍单一功能的程序组成

3、 组合小程序完成大任务

 

Redhat(红帽)

Debian(谍变)

 

Ubuntu是由Debian演变过来的

CentOS是一个企业级的发行版,特别适合对稳定性,可靠性和功能要求较高用户,模仿红帽;

 

 

打开虚拟机搜索到的就是vms的文件;

Ctrl+Alt:退出虚拟机

Ctrl+E:关闭客户机

Ctrl+D:设置

NAT模式:流量走物理机

桥接模式:流量直接走交换机

 

 

 

笔记二:

Linux目录结构是:/(都是从上往下向左斜的)

Window相反

Sbin:系统使用的二进制文件

Usr:共享的只读文件

Usr下的bin文件:放置二进制文件的

Lib:安装的是库文件(Window下的动态库文件.dll结尾;静态库文件)

Linux环境下动态库文件是以.so结尾,静态库文件是.a结尾

动态库文件和静态库文件的区别:

Share:帮助文档位置

dev:设备文件

etc:配置文件

group:

passward:

profile:

var:?

tmp:临时文件存放目录

home:普通用户的帐号文件夹存放位置

root:超级用户的帐号文件夹存放位置

对文件的操作:读、写、可执行

命令:

Linux命令分为内置命令和外部命令

ll:按照详细列表罗列(罗列出的蓝色名字是文件夹名字)

第一位:

d:表示是个文件夹

-:普通文件

l:连接文件(类似window下的快捷方式)

b:设备文件

c:串行端口设备(例:键盘鼠标)

s:套接字文件

命令格式:命令字 [选项] [参数]

Ps:选项和参数可加可不加

命令选项包含两类:

短选项:-(两个短选项可以放在一起用,例:ls –ld ssh)

长选项:--

ls:罗列当前目录下所有文件

ls –l:以详细列表的形式罗列当前目录下的所有文件

命令参数:

ls /:罗列根目录下的所有文件(/是参数)

$ man Is:查看帮助文档

命令区分:1、 type 命令字—cd is a shell builtin (内置)

命令字 is a shell builtin(没有的都是外部命令)

  2、help 命令字(内置命令才能用)

  3、命令字 –(外部命令)

  4、man(手册) 命令字(查找帮助文档)(例:man ls)

root登陆的是#,普通帐号是$符号

[root@localhost ~] # 中~表示家(HOME)目录

Linux:隐藏文件都是以.开头的

路径:

绝对路径:从盘符开始一直到目标文件(C:\system)

   相对路径:相对于当前路径来数,目的目录使用..表示的一种方式

.表示当前路径,..表示当前路径的上一级路径

文件类型:

 

 

笔记三:
pwd:显示当前目录路径(终端在哪里打开,就显示哪里的)

mkdir:创建目录(mkdir test1)

mkdir –p a/b/c :递归创建(三级目录)

mkdir d e f :创建多个目录

rmdir:删除空目录(rmdir test1)

rmdir –p a/b/c:递归删除(先删除c,再删除b,最后删除a)

cp:复制(把a文件夹下面的file1文件直接复制到b文件夹中:cp a/file1 b/)

cp –r a b:把a中内容复制到b中(cp –r a b是cp –r ./a ./b的简写)

文件属性:读、写、时间戳

mv:相当于剪切(有重命名功能)

mv a/file3 b/:把a下面的file3剪切到b中

mv b/file3 a/file4:把b中的file3文件重命名为file4并且放到a文件夹中

rm:删除文件

rm file1:删除file1(会有提示删除跟y,不删除跟n)

rm –i file1:带提示信息问是否删除

rm –f file1:无提示无论如何直接删除(root下慎用)

rm –f *~:删除所有带~的文件

跟文件夹有关的基本都有-r

rm –r a:删除目录a

touch:主要功能是修改文件时间戳,附带创建空文件

touch f1 f2 f3 f4 f5:创建空文档f1 f2 f3 f4 f5

cat:1、查看文件内容;2、输入文件内容3、拼接文件4、创建一个不存在的文件

cat 文件名:cat跟空格+文件名来创建一个不存在的文件

cat f1:cat后跟文件名,可显示文件内容

cat > f1:cat后跟重定向符+文件名,可输入文件内容并覆盖原文件内容

cat >> f1:cat后跟两个重定向符+文件名,可输入文件内容,新的内容会拼接到老内容后面(ctrl+c或者ctrl+d结束输入)

cat f1 f2 > f3:把f1和f2中的内容拼接并且输入到f3中

cat –n:显示内容并且给出行标

more:分页显示文件内容(回车下翻,B键上翻,
4000
Q键退出查看)

-f:一页一页翻页

less:分页显示内容(上下箭头翻看)

head:查看头几行(默认显示前10行)

head –n 20 /etc/services:查看etc下的services中的前20行

tail /etc/services 查看日志文件后几行(默认10行)

tail –n 20 /etc/services:查看日志文件后20行

ln:生成链接文件

语法:ln –s [原文件] [目标文件]

软连接:相对于window下的快捷方式

硬链接:相当于原文件的一个副本

软硬链接区别:

ln f1 f1.l:创建一个普通文件指向f1的数据内存 

-s:创建软链接

ln –s f1 f1.lll:创建一个链接文件指向f1,f1指向数据内存

 

chmod:更改文件或者目录的权限

 权限:

r:读

w写

x:可执行

-:表示没有权限

chmod +x f4:给f4增加可执行权限

chmod –x f4:把f4的可执行权限消掉

文件属主:文件创建者

文件属组:

其他用户:

前三个是属主的权限,user  u

中间三个是属组的权限, group g

后三个是其他用户的权限, other  o

所有用户,all  a

chmod u+w f4:给user  f4的写权限

chmod g+w f4:给group  f4的写权限

chmod o+x f4:给 other  f4的可执行权限

 

 

chmod 777 f4:把所有权限赋给f4

-R:递归修改

访问控制列表可以专门指定一个人

chown:修改某个文件或者目录的拥有者

chown hpe f:把hpe文件的拥有者该文f

chgrp hpe f:把hpe文件的属组改为f

 

find:查找文件在哪个位置(文件搜索)

find ./ -name f3:在当前目录下查找名字是f3的文件 

find / -name f3:在根目录下查找名字是f3的文件

find / -size +204800:在根目录下查找大于100MB的文件

find /etc –cmin -5:在etc下查找5分钟内被修改过的属性和目录

-amin:访问时间 access、change、modify

 

 

 

 

-cmin:文件属性

-mmin:文件内容

 

Which:搜索该命令所在路径

 

 

起别名:

alias grep =’grep –color=auto’

 

 

grep:根据模式搜索文本,并显示符合模式的字符串

grep 33 f1:查询f1文件中存在33的字符串

grep –c 33 f1:查询f1文件中存在33的字符串行数

-i忽略大小写

-n:打印第几行出现的(grep –n 33 f1)

-v:排除制定字符

-o:只显示被匹配到的内容

 

 

useradd:给自己电脑添加用户

su user1:切换到use1用户

ctrl+alt+F2/F3/F4/F5/F6调出真正的终端

只给账号不能用来登录

Ctrl+alt+F1:退出终端

password 用户名:给用户名配置密码

只有根用户才能指定用户名称

 

 

groupadd:增加一个用户组、

 

 

userdel:用户删除

 

压缩解压命令:

压缩:

tar:(必须掌握)

语法:tar[选项][压缩格式]文件名

-zcf:c表示要对文件进行打包,z表示用gzip算法进行压缩

-jcf:j使用bzip2算法进行压缩

-f:指定文件名

-c打包

-v:显示详细信息

tar –zcf a .tar.gz a:

Linux下的压缩格式:

.gz

.bz2

解压:

-zxf:z表示用gzip算法进行解压缩

-jxf:j表示用bzip2算法进行解压缩

jxf:j表示用bzip2算法进行解压缩

加-表示符合Linux下的习惯

不加-表示也符合UNIX标准

tar –jxf a .tar.bz2 -C:

-C(大写):指定解压后的存放目录

 

 

zip b.zip b:

unzip b.zip:

 

ping –c 127.0.0.1:

-c:指定发送次数

ifconfig:查看网卡信息

ifconfig [网卡名] down: 断开网卡

ifconfig [网卡名] up:启用网卡

ifconfig[网卡名] 192.168.0.1(配ip地址)

ps:此命令是临时生效,关机后失效

 

 

setup:

 

挂载命令:mount

挂载:将新的文件系统关联至当前根文件系统

卸载:将某文件系统与当前跟文件系统的关联关系予以移除

硬盘的挂载点一般放置在mnt文件夹下面

先创建挂载点然后再挂载

 

 

 

是写保护的,只读

 

 

umount:卸载命令

umount [挂载点

shutdown –h now:即刻关机

-c:取消前一个关机命令

half:关机命令

poweroff:关机命令

init 0:关机命令

reboot:重启命令

init 6:重启命令

 

 

编辑器命令:

VI/VIM:

三种工作模式:

一般模式、编辑模式、命令行模式

 

Vi 文件名

 

vim +3 f2 :定位到f2的第三行

vim + filename:定位到文件的最后一行

vim +/] f2:定位到/

 

 

 

 

 

二周笔记:

 

Linux下的卸载只要把安装目录下的东西删除就OK

Configure是一个脚本文件

  写法:#!/bin/bash

gcc中-O:优化

 

安装源码包顺序:

./config

make

make install

 

 

$(CC):引用CC所代表的

-O:优化

 

 

排错:

man rpm

man yum

 

$ ./configure—prefix=/usr/local/软件名/

$ make

源码安装位置:/usr/local

rpm包就是可运行的不需要编译,安装速度快

源码包卸载就是删除安装路径就行

 

yum解决了rpm的依赖关系

96d4

 

 

 

 

 

 

 

 

 

@表示已经安装好了:

 

 

 

 

 

 

 

Ivh:i表示安装,v显示详细信息,h表示显示进度hash

 

如果想开发就需要安装-devel包,里面包含库文件,一般安装名字-版本号就行

 

常见依赖关系:

树形依赖:

环形依赖:

模块依赖:安装过程中需要依赖一个库

需要查一个网:www.rpmfind.com

把缺少的库文件名字复制到网站上搜索一下

 

rpm –U升级

 

使用rpm安装的时候不需要指定路径,他又默认的安装位置

 

-R:查询软件包的依赖性

 

 

只有红帽系列配了yum命令

 

使用yum命令需要配置软件源:

使用yum命令默认找的是Base.repo

 

管道写法:前面的输出结果作为后面的输入

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: