linux学习笔记系统管理篇.docx

上传人:b****6 文档编号:5073265 上传时间:2022-12-13 格式:DOCX 页数:23 大小:30.73KB
下载 相关 举报
linux学习笔记系统管理篇.docx_第1页
第1页 / 共23页
linux学习笔记系统管理篇.docx_第2页
第2页 / 共23页
linux学习笔记系统管理篇.docx_第3页
第3页 / 共23页
linux学习笔记系统管理篇.docx_第4页
第4页 / 共23页
linux学习笔记系统管理篇.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

linux学习笔记系统管理篇.docx

《linux学习笔记系统管理篇.docx》由会员分享,可在线阅读,更多相关《linux学习笔记系统管理篇.docx(23页珍藏版)》请在冰豆网上搜索。

linux学习笔记系统管理篇.docx

linux学习笔记系统管理篇

linux入门:

linux入门很重要,刚开始自学linux时懵懵懂懂好不容易装好了linux,大喜过后一脸无奈,这是哪跟哪呀~~~~~~里面的所有东西都不知道做什么用,自信对window有研究的我顿时手足无措,在给linux相了一天面后还是格掉了:

(此后开始看书,慢慢的找感觉~~~~~~~~~~~一直到长城开始系统的学才自以为找到了感觉(也就是入门了)。

自我评价:

学习linux找感觉最重要,不管是看书还是自己安装后琢磨,坚持着看和做,肯定能成。

如果仅仅看了两天书就认为入门了那肯定是自欺欺人。

Linux安装:

安装linux并不是很难,一般用光盘安装,安装时硬盘默认分为三个:

引导分区;根分区;交换分区;分区弄明白了安装也就没什么障碍了。

还有从硬盘安装,我当初从硬盘安装linux时颇费一番周折,幸亏有platinum和shadowmin老师的及时指点才得以顺利安上,再次感谢一下:

)附硬盘安装原文:

注:

装linux是要写规范主机名。

作服务器时系统CMOS时间应设为格林威治时间,即国际标准时间

 

linux基本命令:

挂接:

单根文件系统使用多个设备的方法。

mount设备挂接点

dmesg|grepcd此命令可看光驱在哪

(当老师讲到这里的时候机器出了点故障,鼠标不动了,老师用了一个命令就使鼠标复活,第一次感叹linux的神奇啊~~~~~原来鼠标还可以重起(windows下还真没想过)

顺便把老师用的命令也抄了下来,呵呵多学了个窍门

重启鼠标命令:

/etc/rc.d/init.d/gpmrestart

解除挂接:

umount挂接点

软盘写法:

/dev/fd0

SCSI硬盘写法:

/dev/sd(a)括号内可以依次排为bcd…….

USB硬盘SATA硬盘系统都做SCSI硬盘对待。

SCSI光驱写法:

/dev/scd(0)括号内为数字零依次后派

USB口的光驱也被认为SCSI光驱。

注:

只有先解除挂接可移动设备才可拿出来

shell和文件系统

shell命令:

unix中绝大多数都是外部命令。

内部命令常用的有cd很少

dos|shell

dir|ls

type|cat

cd|cd

md|mkdir

rd|rmdir

del|rm

copy|cp

ds|dear

attrib|chowncharpchmod

此上命令除了cd全是外部命令

 

最重要的命令:

man主题

主题可是shell命令也可是配置文件,还可是C语言函数,但有时shell命令和配置文件相同时打入命令怎么办呢,此时用参数

man1.命令2.系统函数3.标准库函数5.配置文件

例:

查passwd默认manpasswd会查到

manpasswd

(1)命令

此时要用man5passwd可查配置文件

模糊查找(匹配)参数:

-k例man–kPPP和大多数unix中一样k为小写.

第二个重要命令:

vi文件名(文本编辑器)

它有三种工作模式,缺省为”命令模式”

输入I进入”插入模式”按ESC回到命令模式

常见命令:

删一个字符x

删除一行dd

恢复操作u

复制yy(光标在哪一行将复制哪一行)

粘贴p(粘贴在光标下面)

在vi重复输入一些命令时,在前面加数字如插入100个a则在命令模式下先输入100按I输入一个a回到命令模式则会有100个a被插入5行东西重复3次则输入5yy3p存盘退出用大写ZZ

“末行模式”常见是搜索字符.用”/”在命令模式下输入

“/”加字符串.在手册中也能用

“;”会引发末行模式.可用”;”跳到某一行”;”加数字可直接到那

“;”还可用与文件操作

“;q”可直接退出

“;q!

”强制退出

“;w”存盘不退出

“;wq”存盘退出

“;recover”可在出现以外后修复文件

“;w文件名”另存为

 

shell命令的敲法:

命令参数1参数2

参数定界:

用到”‘‘”(单引号)用单引号括起的如’abcdef‘是告诉shell消除语法歧义

如要建一文件叫jack’sdaily却不能用单引号了,此时得用”\”应写为:

例如:

toucejack\’s\daily

“\”为转意字符,取消反斜杠后一个字符的特殊含义

文件系统

在unix中”.”无特殊含义

unix下区分文件类型的命令file

unix下是靠文件的头部说明来区分文件格式,所以操作系统不会理会扩展名的

(exe文件头两字母是MZ)

mount直接回车是显示当前所mount的状态

df察看磁盘利用状态磁盘分区

du–h+子文件名检测文件系统子目录所占空间

pwd查看当前子目录

unix下一个文件可以不可读而可执行,对于子目录而言x就是另外一层含义了,称之为检索。

对子目录而言r就是列表权

(经验:

不要安装基于文本界面的多媒体应用程序)

如何修改权限

修改属主:

chown[-R]新属主文件

-R:

将文件夹中的所有文件也更改掉

修改属组:

charp[-R]先属组文件

修改权限:

chmod[-R]新权限文件

新权限有两种表示方法:

(1)直观:

如rw-r—r—

数字644

110100100

(2)字母法:

如rw-r--r--

ugo

修改文件的访问权限不必非得是root,文件属主也可以

windows文件权限策略是ACL,侧重与灵活性;unix文件系统策略是权限位,侧重用效率;

linux所有权限都放于一个16位的短整数里

linux特有功能(ext2ext3所体现的):

列出所有权限命令:

lsattr

设置特殊权限:

chattr

连接:

硬连接:

硬连接本质使一个文件有两个文件名和windows不同windows中文件属性和文件名是放在一块的,而linux文件名仅是文件名

命令:

ln原文件名新文件名

硬连接有两限制:

(1)不能给子目录建硬连接

(2)不能跨文件系统建硬连接(即不能跨分区)

在unix下删除一文件的本质是断开一个硬连接,系统会将硬连接数减一,只要不为0则保留文件体。

符号连接:

(路径跳转)

命令:

ln–s跳转去向连接名

注:

建符号连接得用绝对路径。

写绝对路径此时可建成的在tem下看到的连接是红色的。

“”后面指向的仅一个services但在当前目录即tem下却没有这个文件此时便出错了。

注:

符号连接可跨分区建立

shell

shell使用:

在unix下常用的是bash

功能:

(1)自动完成按tab键支持路径,在参数位置上按tab会补齐文件名,按两下tab键便可看所有系统命令。

(3)命令历史:

按↑↓可查看所打过的历史命令。

注:

在用户文件夹下有个bash-histroy保存有上次使用的命令。

非shell功能,虚拟终端功能:

按alt+f1~f6切换

鼠标粘贴:

左键选择右键粘贴,可跨终端。

*shell如何运行外部命令:

进程:

一个正在运行的程序就是一个进程(不严密的解释)

派生:

系统的所有进程都是由一个进程派生出来的

shell有一个父进程当接到一个命令时会产生一个子进程,而shell则进入休眠状态,等待子进程结束,子进程完后交给父进程一信息,父进程激活等待。

后台运行命令:

命令&

作业控制:

ctrl+z把前台作业挂起(暂停)挂起后都会保存在内存中。

怎么知道有作业呢?

用jobs命令

fg+作业号是把后台暂停作业调回前台

bg+作业号是把前台作业换到后台

shell的基本配置:

bash的基本配置是由配置文件组成的./etc/profile称之为shell的全局配置文件。

另外一个文件在个人的目录下个人目录/.bash-profile

还有个文件在个人的目录下/etc/bashrc是第二个全局配置文件,保存的是(函数别名等)在个人目录下也有个配置文件~/.bashrc

etc下的文件是全局文件,一经修改所有的用户设置都改了

shell的具体概念:

环境变量:

变量名=变量值例:

LANG=en是设置语言为英文

LANG=zh-CN.GB18030是设置语言为中文

通过设置shell的变量来决定子进程继承什么样的值。

{变量名=变量值

export变量名

可简化为export变量名=变量值注:

export不能省略,另外此时定义的变量是当前shell的值,一旦注销便没有了,想固化得修改profile文件

命令env可查看所有环境变量里面有个path非常重要,它定义了shell命令执行的路径。

Linux下命令执行仅搜索path路径,不会搜索当前目录的外部命令,所以在当前目录下要执行当前目录中的命令需要加”./”命令。

3.引用变量的值:

$变量名例:

exportPATH= $PATH:

/etc/xxx

例如:

echo$LANGecho回显命令可察看LANG的值

例exportCMD=ls

$CMD–l等于ls–l

shell管道与重定向

一个进程的缺省标准输入输出分为标准输入;标准输出;标准错误输出三个管子。

控制终端:

缺省情况下进程的三个管子通向控制端

输入重定向:

命名<文件名解释:

原来要从终端读取的命令改成从文件读取。

例如:

cat

输出重定向:

(1)命名>文件名原来要输出到终端的命令改成输出到文件

(此时叫覆盖式重定向)

(2)命名>>文件名

(追加式重定向)

例如:

gcc命令0:

标准的输入

1:

标准输出

2:

标准错误输出

解释linux最精简的一句话是:

linux下一切都是文件。

管道:

匿名管道,unix传统进程间通信。

写法:

命令1|命令2

命令2处经常出现的是more或grep

例如:

cat/etc/services|grep‘http’意思是包含有http的输出

磁盘的分区格式化

分区:

fdisk-l列出分区表

fdisk磁盘而不是某分区(/dev/had)

command:

p看分区

n新建分区

d删除分区

q不保存退出

w保存退出

生成文件系统(格式化)

mkfs(makefilesystem)

mkfs-text2/dev/hda5

mkfs-text2–j/dev/hda5:

格式化成ext3格式

挂接:

mount/dev/hda5

 

shell脚本本身就是程序,是用shell命令构成的,小规模、结构化、模块化、程序设计。

命令:

echo输出信息用

read输入信息read+变量名

sleep休眠sleep+秒数

在终端上算数表达式写法:

echo$((1x2x3))这是整数运算不能带小数点。

/:

%:

shell脚本格式:

第一行必须是#!

/bin/sh

有三种结构顺序结构分支结构循环结构

顺序结构

wait命令保证进程同步等待一个子进程结束多个并发就用多个wait

例如:

#!

/bin/sh

echo“1”

sleep5&

echo“3”

echo“4”

wait

echo”5”

分支结构

if判断;then

T块

Else

F块

fi

判断test语句test表达式=[表达式]

表达式进行文件判断-f文件名(检测该文件是否存在且为普通文件

-d目录名

-r可读

-w可写

-x可执行

例如:

#!

/bin/sh

echo“file”

readFileName

if[-f$FileName];then

echo“yes”

else

echo“no”

fi

字符串比较相等串A=串B

不等串A!

=串B

-z判断字符串是否为零空为真非空为假

数值比较:

大于等于小于不等于

a>b$A–gt$B

a≥b$A–ge$B

a≤b$A–lt$B

a=b$A–le$B

a≠b$A–ne$B

逻辑比较:

条件A–a条件B(与)

条件A-o条件B(或)

条件(非)

例如:

#!

/bin/sh

readMARK

echo$MARK

if[$MARK=“0”];then

elseecho“host”

echo“GATEWAY”

fi

‘‘反单引号:

如果反单引号后面有语句则将里面的语句运行完后将结果替换此处

例如:

#!

/bin/sh

u=id–u

if[$u=‘0’];then

echo“hello”

else

echo“permissiondenied”

fi

再例如:

#!

/bin/sh

echo“username”

readuserNAME

MARK=‘cat/etc/passwd|grep‘$userNAME:

积极if[-z$MARE];then

echo“NO”

else

echo“YES”

fi

多分支结构

case字符串in

串1)块1

;;

串2)块2

;;

.

.

.

*)

esac

例如:

#!

/bin/sh

echo“command”

readCMD

case$CMDin

start)

/etc/rc.d/init.d/namedstart

;;

stop)

/etc/rc.d/init.d/namedstop

;;

estart)

/etc/rc.d/init.d/namedstop

/etc/rc.d/init.d/namedstart

;;

*)

echo“usage:

$0{start|stop|restart}

;;

esac

*知识点:

.脚本让shell不打开子进程,在当前shell进程中运行脚本

看脚本切忌一行一行的看,要一层一层的看,就像剥玉米.

Shell脚本

循环1)当形循环

2)条件循环

while判断;do

循环体

done

例如:

#!

/bin/sh

i=0

while[$i–lt$n];do

j=0

while[$j–lt$(($i+1))];do

echo“\*”

j=$(($j+1))

done

echo

i=$(($i+1))

done

定时循环00:

00:

00:

1970-01-01utc称之为unix元年

data+%s是取从unix元年至少过了多少秒

date+%H:

%M:

%S显示时分秒格式

 

例如:

#!

/bin/sh

intime=‘date+%S’–le$[(intime+5)];do

echo“.”##echo后面加-n输出就不回车了,横向输出

done

利用date命令可以方便的实现定时循环

 

shell风格的循环for循环(枚举循环)

格式for变量名in值列表;do

循环体

done

##值列表:

核心部分,一系列由空格分开的字符串

例如:

#!

/bin/sh

forninasd4r356her34657trger;do

echo$n

done

 要自动下载列表中的东西编shell的

#!

/bin/sh

cd/tmp/dl

forurlincat/etc/urls;do

wget$url

done

>/etc/urls

补充知识:

参数传递

命令参数1参数2…………

例如:

#!

/bin/sh

n=$1

i=0

while($i-lt$n);do

echo“xxxx”

ii=$(($$+1))

done

$0$0就是命令本身

编后:

此处讲的都是基本的shell应用,老师推荐看《bash编程》

Linux系统管理

1.用户管理

添加账户useradd用户名

passwd用户名

groupadd组名usedel-r用户名

/etc/group/etc/passwd/etc/shadow三个重要文件

group文件格式:

组名:

x:

组ID:

组成员

passwd文件格式:

用户名:

x:

用户ID:

组ID:

用户目录:

shell

用户在passwd文件中体现的组关系称为用户组属组,而在group组中体现的是额外组。

false:

运行起来就是个恒假。

正确利用false给用户,将false添加到/etc/false下用户名字后这样用户就被拒之门外。

如mail用户通过修改用户的shell来限制用户登陆提高网络安全性。

top命令:

察看机器负载情况

which命令:

查看外部命令的路径

top被弄成用户shell时切记在linux下可用,因在linux下top是安全模式的,而在其他unix中并不一定安全,通过敲击热键可能会打出一shell。

shadow文件shadow里面的口令是散列,散列是不可逆的

 

批量添加150个用户u001—u150

#!

/bin/sh

i=1

while[$i–le150];do

if[$i-lt10];then

uname=u00$i

else

uname=u$i

fi

useradd$uname

i=$(($i+1))

done

passwd命令规定只能在终端上手动输入,只有用stdin参数便可解决

作业:

从一表中将已知用户名导入useradd

 

网络配置

linux下有两套网络配置,第一套为BSD方式,另一套是linux方式。

linux中高级网络功能只能用linux方式。

BSD方式:

1.查看ifconfig网卡名BSD中必须指定网卡名

注释:

collisions冲突txqueuden发送包的长度

网卡工作模式mii-tool媒体无关接口

ethtool+网卡名查看命令更详细(需要网卡驱动支持)

netstat–r查看路由

查看网络连接状态

netstat-ant查看TCP的所有网络连接

-anu查看UDP的所有套接字

一条TCP连接会产生两个套接字,两台机器均开。

ARP-n-n意思是不要进行反解不转成名字

查看DNScat/etc/resolv.conf

2.配置IP

ifconfig网卡名ip地址

 

配置路由routeadd-net网络地址netmastx.x.x.xgw网关

routeadd-host网络地址netmastx.x.x.xdev网卡

routedel-net网络地址netmastx.x.x.xgw网关

routedel-net网络地址netmastx.x.x.xdev网卡

缺省写法:

routeadddefaultgw网关

routeadddefaultdev网卡

静态ARParp-sIP地址MAC地址

 

linux方式:

ip命令

ipaddrshow查看IP地址简写为ipadsh

iproutesh查看路由简写为iprosh

ipneighsh查看静态ARP简写为ipnesh

ipv6中取消了ARP改用ICMP

 

具体配置:

ipadadddevip地址/掩码长度

iprouteaddip地址/掩码长度dev网卡

iprouteaddip地址/掩码长度via网关地址

激活/禁止某网卡

ifconfigdevdown/up

linux下的:

iplinksetupdeveth0

iplinksetdowndeveth0

 

此设置都是临时的,固化网络配置,在linux下主机名/缺省网关:

修改路径

/etc/sysconfig/network

如果修改主机名顺便把hosts文件也得改/etc/hosts否则有时服务会启动时挂起死等~~~~~~~~~~~~~~~~

 

固化IP地址/etc/sysconfig/network-scripts下的ifcfg-网卡名

例如:

/etc/sysconfig/network-scripts/ifcfg-eth0

bootprotocol=static##如果用动态IP则改成DHCP

ONBOOT=yes##启动时激活,设置思想:

作为外网网卡应该为NO,因防火墙启动之前将网卡先期启动会有被攻击的危险

 

静态ARP固化

/etc/ethers

写法:

macip例如:

01:

02:

03:

04:

05:

0610.0.0.2

(小知识点:

万用脚本:

/etc/rc.local不管什么命令只要加在此,下次开机后便会自动运行,相当于autoexec.bat。

在用户登陆之前便已经运行,注:

在此文件中加命令时不可阻塞,如果命令执行时间过长则加“$”将其弄到后台执行。

三.计划任务在linux和unix下是cron服务来实现的,每隔一分钟检查一次任务列表。

/etc/crontab

crontab命令-l(list)

-e(edit)

写时间格式:

时分日月周命令

例如:

055**1,3,5##每周一三五运行

技巧:

计划任务可用”,”“_””/”给分开

如果计划任务不执行此时主要原因是路径不对,看crontab便可知,PATH写的便是,第二原因是终端:

不能读标准输入和写标准输出,但可用重定向往文件中写可以,不能使用终端如果要修改crontab文件则需要先停止cron服务。

/etc/rc.d/init.d/crondstop

修改~~~~~~~~~~~~~~~~~

/etc/rc.d/init.d/crondstart

linux配置:

四top命令详解&进程管理

top命令查看系统的资

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1