当前位置:文档之家› linux 学习笔记(系统管理篇)

linux 学习笔记(系统管理篇)

linux 学习笔记(系统管理篇)
linux 学习笔记(系统管理篇)

很久前就打算把这些笔记写下来,由于种种原因一直没动,打算从今天起慢慢的把自己学习linux的过程写下来,对与错请CU的各位前辈指点,非常感谢牛海峰(JohnBull)老师,您是我的linux启蒙老师,俗话说“师傅领进门修行靠个人”,非常汗颜,我自打离开长城后就很少拿出精力来研究linux了,磕磕绊绊走过了一年,现在工作有了着落,静下心来把一年的心情整理一番,也把学习笔记拿出来,请CU前辈指正。

jinscan

linux入门很重要,刚开始自学linux时懵懵懂懂好不容易装好了linux,大喜过后一脸无奈,这是哪跟哪呀~~~~~~里面的所有东西都不知道怎么用,自信对window有研究的我在linux 前手足无措,在给linux相了一天面后还是格掉了此后开始看书,慢慢的找感觉~~~~~~~~~~~一直到长城开始系统的学才自以为找到了感觉(也就是入门了)。自我评价:学习linux找感觉最重要,不管是看书还是自己安装后琢磨,坚持着看和做,肯定能成。如果仅仅看了两天书就认为入门了那肯定是自欺欺人。

Linux安装:安装linux并不是很难,一般用光盘安装,安装时硬盘默认分为三个:引导分区;根分区;交换分区;分区弄明白了安装也就没什么障碍了。还有从硬盘安装,我当初从硬盘安装linux时颇费一番周折,幸亏有platinum和shadowmin老师的及时指点才得以顺利安上,再次感谢一下:)附硬盘安装原文:

https://www.doczj.com/doc/a116865049.html,/viewthr ... p;extra=&page=1

注:装linux是要写规范主机名。如https://www.doczj.com/doc/a116865049.html,

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

linux基本命令:

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

mount 设备挂接点

dmesg | grep cd 此命令可看光驱在哪

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

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

重启鼠标命令:/etc/rc.d/init.d/gpm restart

解除挂接:umount 挂接点

软盘写法:/dev/fd0

SCSI硬盘写法:/dev/sd(a)括号内可以依次排为b cd…….

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 | chown charp chmod

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

最重要的命令:man 主题

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

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

例:查passwd 默认man passwd 会查到

man passwd(1)命令

此时要用man 5 passwd 可查配置文件

模糊查找(匹配)参数: -k 例man –k PPP 和大多数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

参数定界:用到”‘‘”(单引号) 用单引号括起的如’abc def ‘是告诉shell消除语法歧义

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

touce jack\’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—

数字 6 4 4

110100100

(2)字母法:如rw-r--r--

u g o

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

windows文件权限策略是ACL,侧重与灵活性;unix文件系统策略是权限位,侧重用效率;linux所有权限都放于一个16位的短整数里

linux特有功能(ext2 ext3所体现的):列出所有权限命令: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.引用变量的值:$变量名例:export PATH= $PATH:/etc/xxx

例如:echo $LANG echo 回显命令可察看LANG的值

例export CMD =ls

$CMD –l 等于ls –l

shell管道与重定向

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

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

输入重定向:命名< 文件名解释:原来要从终端读取的命令改成从文件读取。

例如:cat < /etc/hosts 则cat读取的文件不是从键盘而是从hosts文件,cat不知道所要读取的标准输入输出被换成/etc/hosts和cat /etc/hosts不一样,此时是cat直接读取hosts

输出重定向:(1)命名> 文件名原来要输出到终端的命令改成输出到文件(此时叫覆盖式重定向)

(2)命名>> 文件名

(追加式重定向)

例如:gcc 命令0:标准的输入

1:标准输出

2:标准错误输出

解释linux最精简的一句话是:linux下一切都是文件。

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

写法:命令1 | 命令2

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

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

Jinscan

老师在讲shell中穿插讲了硬盘分区和格式化

磁盘的分区格式化

分区:fdisk -l 列出分区表

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

command :p 看分区

n 新建分区

d 删除分区

q 不保存退出

w 保存退出

生成文件系统(格式化)

mkfs (make file system)

mkfs -t ext2 /dev/hda5

mkfs -t ext2 –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”

sleep 5&

echo “3”

echo “4”

wait

echo”5”

分支结构

if 判断; then

T块

Else

F块

fi

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

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

-d 目录名

-r 可读

-w 可写

-x 可执行

这些例子由于年久失修(笔记上标注不完备,过后有忘了的地方)错误之处请多多包涵

例如:

#!/bin/sh

echo “file”

read FileName

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

read MARK < /proc/sys/net/ipv4/ip_forward

echo $MARK

if [ $MARK = “0” ]; then

else echo “host”

echo “GATEWAY”

fi

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

#!/bin/sh

u=id –u

if [$u = ‘0’] ; then

echo “hello”

else

echo “permission denied”

fi

再例如:

#!/bin/sh

echo “username”

read userNAME

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”

read CMD

case $CMD in

start)

/etc/rc.d/init.d/named start

;;

stop)

/etc/rc.d/init.d/named stop

;;

estart)

/etc/rc.d/init.d/named stop

/etc/rc.d/init.d/named start

;;

*)

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-01 utc 称之为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

for n in asd 4r3 56h er34 657 tr ger ; do

echo $n

done

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

#!/bin/sh

cd /tmp/dl

for url in cat /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–le 150] ; do

if [ $i -lt 10] ; then

uname =u00$i

else

uname=u$i

fi

useradd $uname

i = $(($i+1))

done

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

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

2.网络配置

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意思是不要进行反解不转成名字

查看DNS cat /etc/resolv.conf

2.配置IP

ifconfig 网卡名ip地址

配置路由route add -net 网络地址netmast x.x.x.x gw 网关

route add -host 网络地址netmast x.x.x.x dev 网卡

route del -net 网络地址netmast x.x.x.x gw 网关

route del -net 网络地址netmast x.x.x.x dev 网卡

缺省写法:route add default gw 网关

route add default dev网卡

静态ARP arp -s IP地址MAC地址

linux 方式:

ip 命令

ip addr show 查看IP地址简写为ip ad sh

ip route sh 查看路由简写为ip ro sh

ip neigh sh 查看静态ARP 简写为ip ne sh

ipv6中取消了ARP 改用ICMP

具体配置:

ip ad add dev ip地址/掩码长度

ip route add ip地址/掩码长度dev 网卡

ip route add ip地址/掩码长度via 网关地址

激活/禁止某网卡

ifconfig dev down/up

linux下的:

ip link set up dev eth0

ip link set down dev eth0

此设置都是临时的,固化网络配置,在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

写法:mac ip 例如:01:02:03:04:05:06 10.0.0.2

(小知识点:

万用脚本:/etc/rc.local 不管什么命令只要加在此,下次开机后便会自动运行,相当于autoexec.bat。在用户登陆之前便已经运行,注:在此文件中加命令时不可阻塞,如果命令执行时间过长则加“$”将其弄到后台执行。

2.网络配置

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意思是不要进行反解不转成名字

查看DNS cat /etc/resolv.conf

2.配置IP

ifconfig 网卡名ip地址

配置路由route add -net 网络地址netmast x.x.x.x gw 网关

route add -host 网络地址netmast x.x.x.x dev 网卡

route del -net 网络地址netmast x.x.x.x gw 网关

route del -net 网络地址netmast x.x.x.x dev 网卡

缺省写法:route add default gw 网关

route add default dev网卡

静态ARP arp -s IP地址MAC地址

linux 方式:

ip 命令

ip addr show 查看IP地址简写为ip ad sh

ip route sh 查看路由简写为ip ro sh

ip neigh sh 查看静态ARP 简写为ip ne sh

ipv6中取消了ARP 改用ICMP

具体配置:

ip ad add dev ip地址/掩码长度

ip route add ip地址/掩码长度dev 网卡

ip route add ip地址/掩码长度via 网关地址

激活/禁止某网卡

ifconfig dev down/up

linux下的:

ip link set up dev eth0

ip link set down dev eth0

此设置都是临时的,固化网络配置,在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

写法:mac ip 例如:01:02:03:04:05:06 10.0.0.2

(小知识点:

万用脚本:/etc/rc.local 不管什么命令只要加在此,下次开机后便会自动运行,相当于autoexec.bat。在用户登陆之前便已经运行,注:在此文件中加命令时不可阻塞,如果命令执行时间过长则加“$”将其弄到后台执行。

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

/etc/crontab

crontab 命令-l (list)

-e (edit)

写时间格式:时分日月周命令

例如:

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

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

如果计划任务不执行此时主要原因是路径不对,看crontab便可知,PATH写的便是,第二原因是终端:不能读标准输入和写标准输出,但可用重定向往文件中写可以,不能使用终端如果要修改crontab文件则需要先停止cron服务。

/etc/rc.d/init.d/crond stop

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

/etc/rc.d/init.d/crond start

2.网络配置

linux配置:4.top 命令详解&进程管理

top 命令查看系统的资源状况

load average 表示在过去的一段时间内有多少个进程企图独占CPU

zombie 进程:不是异常情况。一个进程从创建到结束在最后那一段时间遍是僵尸。留在内存中等待父进程取的东西便是僵尸。任何程序都有僵尸状态,它占用一点内存资源,仅仅是表象而已不必害怕。如果程序有问题有机会遇见,解决大批量僵尸简单有效的办法是重起。kill是无任何效果的

stop模式:与sleep进程应区别,sleep会主动放弃cpu,而stop是被动放弃cpu ,例单步跟踪,stop(暂停)的进程是无法自己回到运行状态的。

cpu states :

nice:让出百分比irq :中断处理占用

idle:空间占用百分比iowait:输入输出等待(如果它很大说明外存有瓶颈,需要升级硬盘(SCSI))

Mem:内存情况

设计思想:把资源省下来不用便是浪费,如添加内存后free值会不变,buff值会增大。判断物理内存够不够,看交换分区的使用状态。

ps命令列进程。列出所有进程

ps ax :tty值为“?”是守护进程,叫deamon 无终端,大多系统服务是此进程,内核态进程是看不到的,例木马

看进程树,以树形方式现实进程列表敲ps axf

init是1号进程,系统所有进程都是它派生的,杀不掉

ps axm :会把线程列出来

在linux下进程和线程是统一的,是轻量级进程的两种方式。

ps axu :显示进程的详细状态。

vsz:说此进程一共占用了多大物理内存。

rss:请求常驻内存多少

终止进程:kill pid 本质是协商退出!(并不是强制退出)

全:kill -信号pid

kill –KILL pid 是强制退出。

例如编写一kill杀不掉的程序

#!/bin/sh

while true j do

echo –n “.”

sleep 1

done

#!/bin/sh

trap “”15 ##捕获15号进程,kill就是15号进程

while true j do

echo -n “.”

sleep 1

done

修改进程优先级:

nice 命令每个进程都有优先权,权值越小优先级越高。

nice –调整值命令##范围“-20~19”

linux图形界面的优先级并不是最高的,它仅是一进程

nice命令在root下可随意调整,在普通用户状态下只能调低不能提高,不过还是可以恢复回去的。

局限性:必须敲命令之前敲nice ,它无法更改已经运行的程序的优先级。

如果要更改已经运行的用renice 调整值pid

即在线调整。

killall 命令:杀死一系列进程,即杀死一系列由一个相同命令产生的进程例如killall fam killall是根据命令名来杀的,kill以pid 来区别。

在top 里面可以直接杀死进程,按“K“输入PID可杀

按“R“可调整优先级

BSDunix 定义了32个信号linux定义了64个信号。

5. 启动管理

启动顺序:BIOS -> MBR -> 启动扇区

MBR : 扫描分区表看哪个是可启动分区,再将那个扇区放入内存。

GRUB有两种装法:1. MBR 2.启动扇区

GRUB有两个基本技巧:

(1).单用户启动模式:见到GRUB启动菜单时按“e“选”“kernel“打头的那一行,再按“e”,然后在/ rhg后面加空格+“1”再按“b”便以单用户模式启动了,输入init 3便进入正常启动模式。

在单用户模式下可以更改root口令,有很大危险。

防护方法:给grub加口令

vi /etc/grub.conf ##在timeout后添加一行

password=1234567 ##密码

使生效:敲grub回车等待一会再敲quit

(2).GRUB—> linux内核-> init进程->

1.进程指令运行级

2./etc/rc.local

3.虚拟终端

init配置文件/etc/inittab

里面有一说明0 –halt

1- single

3- full mutiluser

5- X11

id:5:initdefault ##缺省进入5 X11模式

si::sysinit:/etc/rc.d/rc.sysinit ##系统启动以后调用的第一个脚本,即init进程所调用的

trap ctrl – alt –delete

ca:ctrlaltdel:/bin/

在文字界面下敲init –q 来使配置立即生效

注:屏蔽三键热启动是非常重要的

虚拟终端的添加/减少也在此修改(数量修改)

如果想把linux弄成指纹识别的替换掉getty和bgin即可。

6.文件包管理

文件包有RPM包源码包二进制包

rpm包格式:软件名-版本.平台.rpm

在https://www.doczj.com/doc/a116865049.html,几乎可以搜索到所有的rpm包

rpm包的安装:rpm - i 软件名.rpm

rpm -i –nodeps 软件名.rpm ##不考虑依赖关系的安装

检查某个rpm包是否安装用此命令:rpm –qa | grep 包名

删除已安装rpm rpm -e

强制删除:rpm –e –nodeps 软件名

源码包:

格式:软件名-版本.tar.gz/软件名-版本.tar.bz2

在进行源码处理的时候都要将源码拷在此处:/usr/load/src

解包:

tar –zxf 名称##gz解压

tar –jxf 名称##bz2的解压

运用:

进源码包à第一步./configure ##配置

第二步make ##编译

第三步makeinstall ##安装

大多书软件都安装到了/usr/local下

二进制包:

大多数都给制成一可执行文件,直接运行即可,而大多数都要求在X11下安装

例:java虚拟机的安装(不是开放源码的包)

7.GUI

linux下的图形界面和windows图形界面的区别有哪些

linux X是一协议,规定了unix下图形终端,至今为X11R6 用XFree86软件包来实现的,分为图形终端和图形主机,图形终端为X服务器

大写X回车便启动一个图形终端,监听6000端口

X协议是可以基于TCP工作的,也可不基于TCP工作

XFree86提供了一个完整的服务器和几个常用的基本程序

主机配置à在系统设置->登陆屏幕->把XDMCP启用,注销一次

主机netstat –anu 查看177/udp

终端上敲:X –query 10.0.0.1回车

如广播域中有好几台X主机则用X –broadcast

在文字界面想进如图形界面敲init5

快捷键

ctrl + alt + “ +”

“-”可动态调整分辨率

ctrl + alt + “←”可强制退出图形界面,在linux下X也仅仅是一个进程。

ctrl + alt + “F1~~~F6”回到文字界面

8硬件管理

查看CPU类型:/proc/cpuinfo

查看pci设备:lspci 表中能看到但linux不一定能驱动

查看usb设备:lsusb -v 显示详细列表,甚至电压都有

设备驱动情况:dmesg

在proc目录下有很多常用命令,在此还有以进程号为名的目录,可在目录中查看进程路径,在纯unix中仅有以进程名的子目录,在linux中多些系统配置

9.磁盘配额

基本要点:1.针对某个分区(ext2、ext3、reiser、…fat不支持)2.对于块的使用/文件个数限额

步骤:1.不考虑限额情况下把分区挂好

2.进入挂接点做:目的:对u1限10M 1000个文件。

对两个文件touch https://www.doczj.com/doc/a116865049.html,er aquota.group 加个“a”即高级

将两个文件属性改成600 chmod 600 https://www.doczj.com/doc/a116865049.html,er aquota.group

3.修改etc下的fstab vi /etc/fstab

在hda5这一行的defaults后面加一逗号写上usrquota,grpquota ##基于用户和组的限额。

4.重新挂接该点mount - o remount /home ##不关机的前提下重新挂接一次

5.启用限额quotacheck –u –g /home ##意思是启用之前检查此点的使用情况(经验:做限额要拿新分区来做)

quotaon -u –g /home(前五步是一次性的做完即好)

6.设置限额edquota –u u1 回车后出现一表

解释表:

block –以块为单位,已用了多少

soft/hard 软/硬限额

inodes 文件实体

修改后存盘退出即可。

edquota命令还有一种非交互性的

edquota –p 原型用户-u 用户名##即将原型拥护的限额复制给新用户。

10.日志管理

1./var/bg/messages 此为主日志文件。注:出现服务器异常时要去看日志文件,调试服务器失败第一反应应去查看日志,而不是重装系统

2.syslog服务命令:logger 例如:logger hello 便向日志文件添加一行“hello”

日志配置文件:/etc/syslog.conf

格式:消息分类消息去向

来源.级别/var/log/

常用技巧:就地打印日志将日志写到/dev/lp0 行式打印机打印出去

*远程日志:syslog服务器

配置syslog服务器

例如:10.0.0.1为syslog服务器10.0.0.111 为客户机

步骤:1.服务端配置

vi /etc/sysconfig/syslog

sysLOGD_OPTIONS = “-r –m 0”## -r 意思是接受远程的日志

重起/etc/rc.d/init.d/syslog restart

2.客户端配置

vi /etc/syslog.conf

在消息去向处添加@10.0.0.1

存盘退出重起服务

/etc/rc.d/init.d/syslog restart

(知识点:直接查看日志尾部:tail /var/log/messages)

日志服务使用的端口是:514/udp

syslog日志服务器端不能根据源地址过滤,为了防止外网向日志服务器写垃圾信息要在网络拓扑中解决,网关上做限制外网访问514端口。

linux学习笔记

Linux 一、Linux文件及文件夹命名规则 1)除了/之外,所有的字符都合法。因为/是系统的根目录名 2)有些字符最好不要用,如空格、制表符、退格符和@#$&-等字符。因为Linux命令以空格、-进行分开的;而#表示管理员命令行,$表示用户命令行等 3)避免使用.作为普通文件名的第一个字符。因为Linux系统以.开头的文件是隐藏文件4)Linux系统对英文字符大小写敏感 建议:不要把windows使用习惯带到Linux系统使用上 二、Linux操作命令 2.1、命令格式 命令格式:命令-选项参数 示例:ls –la /etc,参数是命令操作的对象 说明:1)当有多个选项时,可以写在一起。 2)两个特殊的目录.和..,分别代表当前目录和当前目录的父目录 2.2、命令种类及用法 Linux系统里命令按权限分为:1、只有管理员即root才能使用的命令,这些命令位置在/sbin 和/usr/sbin目录;2、管理员和所有用户都能使用的命令,这些命令的位置在/bin和/usr/bin 目录。bin是二进制文件夹binary缩写,usr是user的缩写,sbin是super binary缩写;3、Linux系统里内核处理任务文件都需要一个数字标识(inode-i节点),因为Linux只认i节点不认字符的,一个i节点可以对应多个文件 2.2.1、文件处理命令 2.2.1.1、ls命令-查看 1)命令名称:ls 2)命令英文原意:list 3)命令所在路径:/bin/ls 4)执行权限:所有用户

5)命令作用:查看目录下的文件和文件夹 6)命令语法:ls 选项[-ald] [文件或目录] 7)用法示例:#ls –ald /etc 选项说明:-a all缩写,显示所有文件,包括隐藏文件 -l long缩写,显示文件和文件夹详细信息显示 -d 查看目录属性 -i 查看文件的inode(i节点:一个数字标识) 文件和文件夹详细信息说明: 1、第一部分如:drwxr-xr-x、-rwxr-xr-x、lrwxr-xr-x这部分分成4个部分, 其各个字符说明: d 第一个字符d表示目录directory - 如果是第一个字符表示二进制文件,其它表示无权限 l 第一个字符l表示软链接文件link r 读权限read w 写权限write x 执行权限execute 第一部分:即第一个字符,表示文件类型 第二部分:第2-10个字符,表示三种用户对该文件的权限 第2-4个字符,表示所有者u-user对该文件的权限 第5-7个字符,表示所属组g-group对该文件的权限 第8-10个字符,表示其它人o-others对该文件的权限 2、第二部分如:2,表示该文件硬链接数 3、第三部分如:root,表示该文件所有者权限 4、第四部分如:root,表示该文件所属组权限 5、第五部分如:4096,表示该文件大小;以数据块block表示最小存储数 据单位,每个数据块为512字节 6、第六部分如:12-01 20:52,表示该文件创建时间或最后修改时间 7、第七部分如:bin,表示该文件的名 2.2.1.2、cd命令-切换 1)命令名称:cd 2)命令英文原意:change directory 3)命令所在路径:shell内置命令 4)执行权限:所有用户 5)命令作用:切换目录 6)命令语法:cd [目录] 7)用法示例:#cd / 切换到根目录 注:这个命令一般配合pwd命令使用

Linux操作系统学习心得

Linux操作系统学习心得 这学期有幸学习了《嵌入式系统设计》这门课,在胡佳文老师的教导下深入了解了有关于嵌入式系统,ARM9,Linux系统等很多方面的知识,获益良多,在学习过程中自己也遇到了很多问题,同时受到了很大的启发,现在就本学期的学习谈谈自己的学习心得体会。 Linux操作系统这个名词记得在很早以前就听过,知道这是一个开放性很大的系统,源代码是直接公布在互联网上,很多计算机高手可以根据自己的需求来修改这个程序,同时它比较不易死机,在自己的印象中一直是一种高大上的系统,但是更深入的了解确是零,对于这个学期选这门公共选修课,很大一部分原因是怀着一颗要了解一种早就想知道的东西的心选的.当然我平时也喜欢玩点电脑什么的,只是停留在用别人设计好的现成的东西。 经过一个学期linux操作系统的学习,在老师在课堂对linux系统的介绍及通过网络的了解下,知道了linux原来是一种和windows差不多的电脑操作系统,windows是图形界面的,linux类似以前的DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,linux也能显示图形界面,也有开始菜单、桌面、图标等。Windows有MS-DOS方式,在该方式下通过输入DOS命令来操作电脑;而linux与windows类似,也有命令方式,linux 启动后如果不执行X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。另外linux上也有很多的应用软件,安装运行了这些软件后,你就可以在linux上编辑文档、图片,玩游戏、上网、播放多媒体文件等。 当然我们对linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。它的产生和需要花钱买得windows系统形成了对比,因为 linux 的核心是免费的,自由使用的,核心源代码是开放的.任何人都可以根据自己的喜好来编辑创作适合自己的操作系统,linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以linux操作系统有着广泛的应用空间。 而且在课上随着老师的讲解和自己动手查资料,慢慢的学习到了更深入的知识,知道了linux的安装:硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题。学习了linux系统的进入,关闭和重启。掌握了linux系统的硬件配置,如显卡,声卡,网卡等,并且通过对linux系统基本命令的学习,尤其是shell命令语言(亦称命令解释器),熟悉了系统的基本操作。当然在学习中发现英文学得好也是学好linux的关键。同时还了解了linux对应下的一些常用软件及这些软件的安装。因为linux在服务器中广泛的应用,于是我们进一步学习了linux下接入internet的WEB服务器的安装与配置方法。之后还了解了linux的网络安全,系统的安全,用户的安全等。 眼看这个学期Linux的课程已经告一段落了,在这段时间的学习如果要问我在这门课中学到了什么,我觉得是一种为学的方法,使我受益非浅。 首先每学一部分内容前必定有很多疑问,想要独立解开疑问,从网络上找资

一篇非常好的linux学习笔记分享(Linux入门绝佳)

作者:佚名字体:[增加减小] 来源:互联网时间:03-06 21:54:44我要评论 一篇非常好的linux学习笔记分享,对于常用命令整理的比较详细,推荐使用。 linux目录架构 / 根目录 /bin 常用的命令binary file 的目錄 /boot 存放系统启动时必须读取的档案,包括核心(kernel) 在内 /boot/grub/menu.lst GRUB设置 /boot/vmlinuz 内核 /boot/initrd 核心解壓縮所需RAM Disk /dev 系统周边设备 /etc 系统相关设定文件 /etc/DIR_COLORS 设定颜色 /etc/HOSTNAME 设定用户的节点名 /etc/NETWORKING 只有YES标明网络存在 /etc/host.conf 文件说明用户的系统如何查询节点名 /etc/hosts 设定用户自已的IP与名字的对应表 /etc/hosts.allow 设置允许使用inetd的机器使用 /etc/hosts.deny 设置不允许使用inetd的机器使用 /etc/hosts.equiv 设置远端机不用密码 /etc/inetd.conf 设定系统网络守护进程inetd的配置 /etc/gateways 设定路由器 /etc/protocols 设定系统支持的协议 /etc/named.boot 设定本机为名字服务器的配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 设置IP /etc/resolv.conf 设置DNS /etc/X11 X Window的配置文件,xorg.conf 或XF86Config 這兩個X Server 的設定檔/etc/fstab 记录开机要mount的文件系统 /etc/inittab 设定系统启动时init进程将把系统设置成什么样的runlevel /etc/issue 记录用户登录前显示的信息 /etc/group 设定用户的组名与相关信息 /etc/passwd 帐号信息 /etc/shadow 密码信息 /etc/sudoers 可以sudo命令的配置文件 /etc/securetty 设定哪些终端可以让root登录 /etc/login.defs 所有用户登录时的缺省配置

linux基本命令学习笔记

一、常用系统工作命令 1.echo 用于在终端输出字符串或者变量提取后的值 2.date 用于显示系统的时间或者日期 date "+%Y-%m-%d %H:%M:%S" 指定格式查看当前系统时间 date -s "20180901 8:53:00" 设置系统当前时间 date "+%j" 3.reboot 4.poweroff 5.wget(暂时了解即可) 6.ps 查看系统中的进程状态ps aux -a 显示所有进程 -u 用户以及其他详细信息 -x 显示没有控制终端的进程 //linux系统中有长短格式之分长长不能合并,长短不能合并,短短可以合并; 合并后保留一个- 号、ps命令允许参数不加减号(-),因此直接写成ps aux ·五种常见进程状态: R (运行)S(中断)D(不可中断)Z(僵死)T(停止) 7.top 动态的监视进程活动与系统负载等信息“Linux中的强化班的Windows任务管理器” 8.pidof 用于查询某个指定服务进程的PID值,格式为“pidof[参数][服务名称]” 9.kill 终止某个指定的PID的服务进程。 10.killall 用于终止某个指定名称的服务所对应的全部进程、killall[参数][进程名称] 如果我们在系统终端中执行一个命令后想立即停止它,可同时按下Ctrl+C组合键,这样将立即终止该命令的进程。或者有些命令在执行时不断的在屏幕上输出信息,影响后续命令的输入,则可以在执行命令时在末尾加上一个&符号,这样命令将进入系统后台来执行。 二、系统状态检测命令 1.ifconfig 查看本机当前网卡配置与网络状态的信息 主要查看网卡名称inet参数后面的ip地址ether参数后面的网卡物理地址(MAC 地址)以及RX TX的接受数据包和发送数据包的个数及累计流量 2.uname 用于查看系统内核与系统版本等信息 uname -a 若要查看当前系统版本的详细信息,则需要查看redhat-release文件 cat /etc/redhat-release 3.uptime 用于查系统的负载信息 显示当前系统时间系统已运行时间启用终端数量以及平均负载值 平均负载值:系统在最近一分钟五分钟十五分钟内的压力情况 4.free用于显示当前系统的内存使用量信息free -h 5.who 用于查看当前登入主机的用户终端信息 https://www.doczj.com/doc/a116865049.html,st 用于查看所有系统的登录记录。(日志文件形式保存在系统中,因此黑客很容易对其进行篡改,不要用该命令的输出信息判断系统有无被恶意入侵) 7.history 显示历史执行过的命令(1000条)如果不够,可自定义/etc/profile文件中的HISTSIZE变量值。使用-c参数会清除所有命令历史记录。还可以使用“!编码数字”的方式重复执行某一次命令。

Linux 操作系统shell学习笔记 (linux系统)

Linux 操作系统shell学习笔记(linux系统) linux软件开发 No.001 文件安全与权限 1. umask 决定了新建文件的权限 2. 软链接(符号链接) ln -s source_path target_path No.002 find和xargs 1. find pathname -options [-print -exec -ok] 其中exec参数的命令格式:'command-' {} \; 注意必须包含【{} \;】 -perm 按权限来查找ex. find . -perm 755 -print -mtime 按修改时间来查找ex. find / -mtime -5 -print 更改时间5天以内 find / -mtime +5 -print 更改时间5天以前 2. xargs与-exec和-ok类似,但是限制更少,也更快 3种参数的命令:find . -name "*.c" -exec wc -l {} \; find . -name "*.c" -ok wc -l {} \; 每次执行命令前有提示 find . -name "*.c" | xargs wc -l No.003 后台执行命令 1. [crontab] [at] [&] [nohup]四种

No.004 文件名置换 1. 列出隐藏文件ex. ls .* No.005 shell输入与输出 1. echo输出时加上-n 参数不换行,ex. echo -n "aaaa" 2. tee 命令可以同时输出到屏幕和文件中ex. ls | tee file.out 3. 标准输入0 标准输出1 标准错误2 4. 将标准输出和标准错误输入到一个文件ex. command >file.out 2>&1 No.006 命令执行顺序 1. 命令1 && 命令2 命令1执行成功后才会执行命令2 2. 命令1 || 命令2 命令1执行失败后才会执行命令2 No.007 正则表达式 1. 正则表达式元字符及含义 ^ 只匹配行首 $ 只匹配行尾

Kali linux学习笔记

H\gd gdips 。 m _?p.. +f\gd .+ ” ” /+ dn j dnj j apuudib jk iq\n 0+ 1+ 2+ + %bjjg c\ f m& .+ n \m c_in+i o m\ao+ jh AKP ncj_\idib+ jh cook7,,rrr+ skgjdo*_]+ jh,bjjbg *_jmfn, . oc E\mq mno m oc c\mq no m *_ hd mjnjao+ jh *g 2-- *] bjjbg

oc c\mq no m *_ hd mjnjao+ jh *] kbk oc c\mq no m *_ hd mjnjao *g /-- *] gdif _di oc c\mq no m *_ hd mjnjao+ jh *g 2-- *] \gg / h o\bjjg adg Rn\b 7 h o\bjjadg jkodjin *_7 _jh\di oj n \m c *o7 adg otk oj _jrigj\_ %k_a)_j )sgn)kko)j_k)j_n)_j s)sgns)kkos& *g7 gdhdo ja m npgon oj n \m c %_ a\pgo /--& *c7 rjmf rdoc _j ph ion di _dm ojmt %pn t n ajm gj \g \i\gtndn& *i7 gdhdo ja adg n oj _jrigj\_ *j7 rjmfdib _dm ojmt %gj \odji oj n\q _jrigj\_ _ adg n& *a7 jpokpo adg Bs\hkg n7 h o\bjjadg+kt *_ \kkg + jh *o _j )k_a *g /-- *i 2- *j \kkg adg n *a m npgon+cohg h o\bjjadg+kt *c t n *j \kkg adg n *a m npgon+cohg %gj \g _dm \i\gtndn& ” ” FM ” ” é ~ _inh\k _in iph ad m _in_d o3

Linux学习笔记之第二章文本编辑器

修改主机名: 修改静态ip: vi /etc/hostname 1vi /etc/sysconfig/network-scripts/ifcfg-ens32 BOOTPROTO=static 静态IPADDR=地址NETMASK=子网掩码:255.255.255.0GATEWAY= 网关DNS1=域名服务器1 2 3 4 5 6 7

–color=auto:将找到的关键字部分加上颜色显示学习目标 1、vi/vim文本编辑器 2、用户管理 3、文件基本属性 4、常用命令 学习内容 1、vi/vim文本编辑器 常用操作: dd:删除光标所在的整行 ndd:删除光标之后的的n行 yy:复制整行 nyy:复制n行 p: 光标位置向下粘贴 P:光标占位置向上粘贴 u:撤销 ctrl+r:重做上一个动作(还原撤销的操作) :set nu 显示行号 :set nonu 取消行号 查找替换: /word :查找,n:向下查找,N:向上查找

重要文件: 保存用户信息的文件:/etc/passwd 保存密码的文件:/etc/shadow 保存用户组的文件:/etc/group 保存用户组密码的文件:/etc/gshadow 用户配置文件:/etc/default/useradd 配置文件分析: /etc/passwd 用户名:密码:用户ID:用户组ID:用户描述:用户的主目录:shell 命令root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync 1 2 3 4 5 6 7 登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标 志 1

linux系统学习笔记

==============================智能娱乐系统=================== 硬件:中控:UI,音视频数据处理能力 操作:显卡,声卡、LED、游戏机、触控屏 ARM :cortex - A 软件:开发环境:vmware + linux(ubuntu) 程序开发:linux C 程序移植:交叉开发 效果:自动处理程序 一、Linux 命令 linux : 图形简陋---> 追求效率高 移植性强,开源性 linux :命令行形式进行交互 ls: 查看全部文件名/ --->根目录 pwd: 打印当前的路径/home/gec 等于~ ---> 家目录 cd : 直接回到/home/gec cd / : 回到根目录/ cd ..: 回到上一级的目录 ls -l 类型权限链接数创建者工作组大小日期目录名d rwxrwxr-x 2 gec gec 4096 Jul 2 2013 Desktop d:目录(第一个字母:-:普通文件d:目录) rwxrwxr-x:文件的权限r:读权限w:写权限x:执行权限 用户权限:rwx(创建者的权限)rwx(同组人)r-x(其他人) clear: 清除屏幕信息 touch 创建文件 touch xxxx ----> 因为身份是gec,所以必须在/home/gec中创建 rm 删除文件/目录 rm xxxx(文件名) ----> 因为身份是gec,所以必须在/home/gec中删除rm xxxx(目录名) -rf

gedit 编辑文件 gedit xxxx cat 查看文件内容 cat xxxx mkdir 创建目录 mkdir xxxx ----> 因为身份是gec,所以必须在/home/gec中创建 cp 拷贝命令 cp 文件名目录名---> cp abc.c 123/ chmod 修改文件的权限 -rw-rw-r-- 1 gec gec 20 Apr 14 19:43 abc.c 421421421 6 6 4 希望三个人都是可读可写可执行7 7 7 chmod 777 xxxx chmod 777 abc.c -rwxrwxrwx 1 gec gec 20 Apr 14 19:43 abc.c 二、linux与windows间的共享目录 1,在windows系统中的D:\创建一个名字为share的目录 2, "虚拟机" --- "设置" ---- "选项" --- "共享文件夹" --- "总是启用" ---"确定" 3,在linux系统输入以下命令来进入共享目录 cd /mnt/hgfs/share/ 4,在linux与windows分别创建目录和文件,观察两个系统的变化 =====================开发板的使用========================= 一、核心板

Linux操作系统学习心得

Linux操作系统学习心得 Linux操作系统这个名词记得在很早以前就听过,但具体是什么样的系统却真的不知道,甚至都不知道它是手机系统还是电脑系统,知道的只是它好像比较不易死机,。对于这个学期选这门公共选修课,很大一部分原因是怀着一颗要了解一种早就想知道的东西的心选的.当然我平时也喜欢玩点电脑什么的,只是停留在用别人设计好的现成的东西。 经过一个学期linux操作系统的学习,在老师在课堂对linux系统的介绍及通过网络的了解下,知道了linux原来是一种和windows差不多的电脑操作系统,windows是图形界面的,linux类似以前的DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,linux 也能显示图形界面,也有开始菜单、桌面、图标等。Windows有MS-DOS 方式,在该方式下通过输入DOS命令来操作电脑;而linux与windows 类似,也有命令方式,linux 启动后如果不执行X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。另外linux上也有很多的应用软件,安装运行了这些软件后,你就可以在linux上编辑文档、图片,玩游戏、上网、播放多媒体文件等。 当然我们对linux的学习首先是通过对它的产生,发展,到今天仍然在不断完善开始的。它的产生和需要花钱买得windows系统形成了对比,因为linux的核心是免费的,自由使用的,核心源代码是开放的.任何人都可以根据自己的喜好来编辑创作适合自己的操作系统,linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具,所以linux 操作系统有着广泛的应用空间。 而且在课上随着老师的讲解和自己动手查资料,慢慢的学习到了更深入的知识,知道了linux的安装:硬盘安装及光盘安装,清楚了解安装Linux应注意的有关问题。学习了linux系统的进入,关闭和重启。掌握了linux系统的硬件配置,如显卡,声卡,网卡等,并且通过对linux 系统基本命令的学习,尤其是shell命令语言(亦称命令解释器),熟悉了系统的基本操作。当然在学习中发现英文学得好也是学好linux 的关键。同时还了解了linux对应下的一些常用软件及这些软件的安装。因为linux在服务器中广泛的应用,于是我们进一步学习了linux 下接入internet的WEB服务器的安装与配置方法。之后还了解了linux 的网络安全,系统的安全,用户的安全等。 眼看这个学期Linux的课程已经告一段落了,在这段时间的学习如

Linux学习笔记一

Linux学习笔记一 默认情况下,所有系统帐号与一般身份用户,以及root的相关信息,都记录在/etc/passwd 文件内;密码记录在/etc/shadow 文件中;Linux所有的用户组名称都记录在/etc/group内。不可随意删除这3个文件。 了解Linux文件属性,以root身份登录后输入|s -al查看具体属性设置。 文件前面第一个字符为.表示隐藏文件。 各字段依次的含义:文件属性,连接数,文件拥有者,文件所属用户组,文件大小,文件最 先修改时间,文件名 文件属性10字段: Linux文件类型: -普通文件。根据文件内容分:纯文本文件(ASCLL ),二进制文件(binary ),数据格式文件(data) ----last 命令 d目录, l连接文件link file ,b设备文件中可供存储的接口设备, c设备文件中串行端口设备如键盘鼠标 拥有者权限,同用户组权限,其他非本用户组权限

r read 读,w write 写,x excute 可执行 9个属性,3个一组,其中可用数字来表示各个属性:r--4 , w--2 , x--1,将同一组的3个属性相加:owner=rwx=4+2+1 Windows中,一个文件是否具有执行能力是通过扩展名"来决定,但在Linux中是通过是否具有x属性来决定的。 Linux文件扩展名: .sh :批处理文件(script,脚本),shell写成 .pl :程序语言Perl的文件 更改文件权限 charp改变文件所属用户组 chown改变文件拥有者 chmod改变文件的属性,suid等特性 chown还可以直接修改用户组的名称。什么时候用到chown和chgrp,比如将一个文件copy 给其他人时,复制后的文件拥有者仍然是原来的拥有者,所以得到文件复制分的用户仍然没有修改的权限,此时就需要修改文件的拥有者与用户组。 当我们以vi编辑shell的文字文件后,其属性通常都是-rw-rw-rw- , 666属性,如果要将它变成可执行文件,并且不能让其他人修改此文件,那么就需要修改文件的属性成 -rwxr-xr-x,755 属性

linux 学习心得

linux 学习心得.txt喜欢我这是革命需要,知道不?!你不会叠衣服一边呆着去!以后我来叠!我一定要给你幸福,谁也别想拦着。linux,sh脚本编程 在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具。Shell不仅仅是命令的收集,而且是一门非常棒的编程语言。您可以通过使用shell使大量的任务自动化,shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务。 下面,让我们一起来看看shell是如何工作的: 建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用。所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在bash的大姐,bourne shell 中运行)。 如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit、kedit、emacs、vi等来编写我们的shell程序。程序必须以下面的行开始(必须方在文件的第一行):#!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。 当编辑好脚本时,如果要执行该脚本,还必须使其可执行。 要使脚本可执行: chmod +x filename 然后,您可以通过输入: ./filename 来执行您的脚本。 注释 在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。 变量 在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写: 变量名=值 取出变量值可以加一个美元符号($)在变量前面: #!/bin/sh #对变量赋值: a="hello world" # 现在打印变量a的内容: echo "A is:" echo $a 在您的编辑器中输入以上内容,然后将其保存为一个文件first。之后执行chmod +x first 使其可执行,最后输入./first执行该脚本。 这个脚本将会输出: A is: hello world 有时候变量名很容易与其他文字混淆,比如: num=2 echo "this is the $numnd" 这并不会打印出"this is the 2nd",而仅仅打印"this is the ",因为shell会去搜索

linux读书笔记

第一次学shell编程,看的文章中说shell程序必须以"#!/bin/sh"开始,也就认为是这样了。 虽然知道在shell中以"#"开始的语句都是注释,但也从没认为"#!/bin/sh"也是注释,就像对C语言程序必须有main函数一样毫无怀疑。 但前些时候又听说"#!/bin/sh"也是注释,可有可无,当时觉得真是一个失败,连基本的语法都分不清。 前几天借了一本书,才真正认识了"#!/bin/sh"。 shell编程是以"#"为注释,但对"#!/bin/sh"却不是。 "#!/bin/sh"是对shell的声明,说明你所用的是那种类型的shell及其路径所在。 如果没有声明,则脚本将在默认的shell中执行,默认shell是由用户所在的系统定义为执行shell脚本的shell。 比如:如果脚本被编写为在Korn Linux中运行,而默认运行shell脚本的为C shell csh,则上述脚本在执行过程中很可能失败。 所以建议大家就把"#!/bin/sh"当成C 语言的main函数一样,写shell必须有,以使shell程序更严密。 即: #!/bin/sh 是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面根的是此解释此脚本的shell的路径。 其实第一句的#!是对脚本的解释器程序路径,脚本的内容是由解释器解释的,我们可以用各种各样的解释器来写对应的脚本。 比如说/bin/csh脚本,/bin/perl脚本,/bin/awk脚本,/bin/sed脚本,甚至/bin/echo等等。 那我们真的能写一个/bin/echo的脚本文件吗?我们来试试,下面是一个例子:代码: #!/bin/echo –e 这只有一行的程序(实际上它也只能是一行,echo程序并不是被设计成像awk那样的编程语言,能写成源程序文件)命名为myecho,加上权限后执行它: 代码: $ ./myecho "hi\a" ./myecho hi 如果你的echo支持-e选项并且你工作的环境还算安静,你在得到上面的结果的时候也应该听到清脆的终端响铃。但这种程序是毫无作用的。 1、linux分区 --在linux里面所有的设备、任何东西,在linux看来都是文件。 --文件在它看来,有两种形式: 第一种是字符型(键盘输入、打印机); 第二种是二进制型(硬盘、光驱、U盘) --linux中所有硬件

兄弟连linux学习笔记

4.1.1 文件处理命令 命令格式 命令+选项+参数 ls -la /etc 命令ls 显示目录文件 语法:-a 显示所有文件-l详细信息显示-d查看目录属性 -rw-r--r-- - 文件类型(-文件d目录l软链接文件) rw -r-- r-- u g o u所有者g所属组o其他人 r读w写x执行 4.1.2 目录处理命令 mkdir创建新目录 语法:mkdir -p(目录名)递归创建

cd 切换目录 语法:cd (目录) pwd 显示当前目录 语法pwd 4.1.2.4 rmdir 删除空目录 语法:rmdir (目录) cp 复制文件或者目录 语法:cp -rp (源文件或目录)(目标目录)-r 复制目录 -p保留文件属性 mv 剪切文件、改名

语法:mv (原文件或目录)(目标目录) rm 删除文件 语法:rm -rf (文件或目录) -r 删除目录 -f 强制执行 4.1.3 文件处理命令 touch 创建空文件 语法:touch (文件名) cat 显示文件内容 语法:cat(文件名) -n 显示行号 tac 显示文件内容(反向)

语法:tac(文件名) more 分页显示文件内容 语法:more(文件名) (空格)翻页 (Enter)换行 q 退出 less 分页显示文件内容(可向上翻页)语法:less (文件名) head 显示文件前面几行 语法head (文件名) -n 指定行数 tail 显示文件后几行 语法tail (文件名) -n 指定行数 -f 动态显示文件末尾内容

4.1.4链接命令 ln 生成链接文件 语法:ln -s (源文件)(目标文件) -s创建软连接 软链接特征:类似Windows快捷方式 lrwxrwxrwx l 软链接 软链接文件权限都为rwxrwxrwx 文件大小- 只是符号链接 /tmp/issue.soft -> /etc/issue 箭头指向原文件 4.2.1权限管理命令 chmod 改变文件或目录权限 语法:chmod [{ugoa}{+-=}{rwx}] (文件或目录)[mode=421 ](文件或目录) -R 递归修改 权限的数字表示 r ---- 4 w ---- 2

Linux心得体会

《Linux操作系统》学习心得体会# @ 姓名:杜昕 学号:89 班级:计科普1004班

一、摘要 Linux操作系统这个名词记得在很早以前就听过,但当时并不知道具体是什么样的操作系统,只知道是一个与嵌入式密切相关的操作系统。因为我是学习嵌入式方向的,这学期就选修了这门专业任选课。为了更好的学习这门课程,我不仅课上认真听讲,课下也努力学习,为此还在自己的电脑上安装了Ubuntu系统。眼看这个学期的Linux课程已经告一段落了,我觉得有必要写一遍心得体会来总结一下这学期对着门课程的学习。 关键词:Linux、嵌入式、心得 【 《 ( 《

》 二、Linux简介 Linux是一种广泛使用的类UNIX操作系统,它不仅可以在Intel,AMD等系列个人计算机上运行,也可以运行在许多工作站上。它是真正多用户、多任务操作系统,他继承了UNIX系统的主要特征,具有强大的信息处理功能,特别在Internet和Intranet应用中占有明显优势。 1991年,芬兰赫尔辛基大学的学生Linux Torvalds在Inter386个人计算机上开发了Linux核心,并利用互联网发布了源代码,从而创建了Linux操作系统。之后,许多系统软件设计专家共同对它进行改进和提高。到现在为止,Linux 已成为具有全部UNIX特征、与POSIX兼容的操作系统。 ! Linux的功能强大而全面,与其他操作系统相比,具有一系列显著特点:(1)与UNIX系统兼容。 (2)自由软件和源码公开。 (3)性能高和安全性强。 (4)便于定制和再开发。 (5)互操作性高。 (6)全面的多任务和真正的32位操作系统。 ) 当今的Linux有两种版本:核心版本和发行版本。其中核心版本主要是Linux 的内核。其官方版本由Linux Torvalds本人维护着。发行版本是各个公司推出的版本,他们与核心版本是各自独立发展的。常见的发行版本有以下7种:(1)Red Hat Linux/ Fedora Core (2)Debian (3)Ubuntu

linux 红帽7学习笔记rh134

Redhat Enterprise Linux 7 RH134 Document 齐凯斌编著 北京没有出版社出版

目录 RH134-UNIT1 kickstart批量部署系统-------------------------------------------3 RH134-UNIT2 grep配合正则表达式----------------------------5 RH134-UNIT3计划任务---------------------------------------------------------------6 RH134-UNIT4进程优先级管理-----------------------------------------------------6 RH134-UNIT5 ugo权限补充----------------------------------------------------------8 RH134-UNIT6 SElinux ------------------------------------------------------------------9 RH134-UNIT7 ldap、自动挂载------------------------------------------------------10 RH134-UNIT8磁盘分区--------------------------------------------------------------12 RH134-UNIT9 LVM管理、RAID管理----------------------------------------------13

Linux学习笔记(CentOS)

Linux学习笔记 1 Linux 入门教程 Linux,在今天的广大电脑爱好者心中已经不再是那个遥不可及的新东西了,如果说几年前的 Linux 是星星之火的话,如今 Linux 不仅在服务器领域的应用取得较大进展,而且在桌面应用领域也有越来越多的人选择使用。Linux 的开放性和灵活性使它得以在实验室和其它研究机构中被用于创新性技术变革的前沿,现在 Linux 已经真正地向广大的电脑爱好者们敞开了大门。 只要你对 Linux 感兴趣,想要学习 Linux,那么本教程将带你走进 Linux 的世界。第一章初识 Linux 在学习使用之前我们还是先来了解一下 Linux 吧。 Linux 是什么?按照 Linux 开发者的说法,Linux 是一个遵循 POSIX(标准操作系统界面)标准的免费操作系统,具有BSD 和SYSV 的扩展特性(表明其在外表和性能上同常见的UNIX 非常相象,但是所有系统核心代码已经全部被重新编写了)。它的版权所有者是芬兰籍的 Linus B. Torvalds 先生。 1.熟练掌握基本命令。每个系统都有自己特定的语言环境,Linux 也不例外,只有熟悉并熟练掌握 Linux 的常用基础命令才可以深入学习。 2.系统管理及运用。系统的管理包括启动、用户、进程以及安全管理等等。大体上都是通过命令来进行配置文件及脚本文件的。 3.源码的学习和研究。由于内核的相似,Linux 同 UNIX 一样都是由 C 语言开发而成的,所以了解 UNIX 的朋友学习起来相对容易。 4.内核开发。现在的很多服务器系统,网络设备,安全防护软件以及手机系统和掌上PDA 的操作管理系统都是由Linux 编程开发而成的,所以内核的开发学习当然必不可少。 5.数据库及服务器领域。如今Linux 做的服务器在市场中占有率第一的位置无可动摇,其中包括:WWW 服务器,FTP 服务器,mail 服务器,数据库服务器等等多种服务器。 了解了学习的目的和方向后,下面以CentOS为例来介绍Linux使用,可以使用安装好的Linux虚拟机。 2 Linux 常用基本命令及常用技巧 新手刚刚接触Linux 的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过 Linux 一段时间后,你就会逐渐了解 Linux 其实和 Windows 一样容易掌握。 由于操作和使用环境的陌生,如果要完全熟悉Linux 的应用我们首先要解决的问题就

linux学习笔记分享

1 linux学习笔记分享 (Linux入门绝佳) 点击: 3,280回复: 9 linux目录架构 / 根目录 /bin 常用的命令 binary file 的目錄 /boot 存放系统启动时必须读取的档案,包括核心 (kernel) 在内 /boot/grub/menu.lst GRUB设置 /boot/vmlinuz 内核 /boot/initrd 核心解壓縮所需 RAM Disk /dev 系统周边设备 /etc 系统相关设定文件 /etc/DIR_COLORS 设定颜色 /etc/HOSTNAME 设定用户的节点名 /etc/NETWORKING 只有YES标明网络存在 /etc/host.conf 文件说明用户的系统如何查询节点名 /etc/hosts 设定用户自已的IP与名字的对应表 /etc/hosts.allow 设置允许使用inetd的机器使用 /etc/hosts.deny 设置不允许使用inetd的机器使用 /etc/hosts.equiv 设置远端机不用密码 /etc/inetd.conf 设定系统网络守护进程inetd的配置 /etc/gateways 设定路由器 /etc/protocols 设定系统支持的协议 /etc/named.boot 设定本机为名字服务器的配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 设置IP /etc/resolv.conf 设置DNS /etc/X11 X Window的配置文件,xorg.conf 或 XF86Config 這兩個 X Server 的設定檔 /etc/fstab 记录开机要mount的文件系统 /etc/inittab 设定系统启动时init进程将把系统设置成什么样的runlevel /etc/issue 记录用户登录前显示的信息 /etc/group 设定用户的组名与相关信息 /etc/passwd 帐号信息 /etc/shadow 密码信息 /etc/sudoers 可以sudo命令的配置文件 /etc/securetty 设定哪些终端可以让root登录 /etc/login.defs 所有用户登录时的缺省配置 /etc/exports 设定NFS系统用的 /etc/init.d/ 所有服務的預設啟動 script 都是放在這裡的,例如要啟動或者關閉 /etc/xinetd.d/ 這就是所謂的 super daemon 管理的各項服務的設定檔目錄

《鸟哥的linux私房菜(基础篇)》学习笔记

《鸟哥的linux私房菜(基础篇)》学习笔记----------李晶 目录 第一部分:linux的规划与安装 (2) 1.linux历史与简介: (2) 2.分区: (2) 3.多重引导: (2) 第二部分:linux文件,目录与文件系统格式 (3) 1.管理文件权限: (3) 2.管理文件以及目录: (4) 3.管理磁盘与文件系统: (4) 4.文件的打包压缩: (5) 第三部分:shell (5) 1.vim: (5) 2.shell: (5) 3.正则表达式: (6) 4.shell编程: (7) 第四部分:用户管理 (9) 1.用户账号及权限: (9) 2.磁盘管理: (9) 3.crontab: (9) 4.作业管理: (10) 第五部分:系统管理员 (11) 1.系统服务: (11) 2.软件安装: (12) 3.x-window: (12) 4.内核编译: (12)

第一部分:linux的规划与安装 这里个人相对来说比较熟悉,对于如何安装linux书上有详细介绍。不过我一般用的都是ubuntu,这个发行版的安装并不是很复杂。 1.linux历史与简介: 计算机是由一堆硬件所组成的,操作系统是为了更加有效地控制和使用这些硬件资源。我们最熟悉的windows就是一种操作系统。但是linux是完全不同于windows的一种操作系统。众所皀知癿,Linux癿核心是由Linus Torvalds在1991年癿时候给他开发出来的。linux沿袭了unix 的许多良好的特性,最重要的也是现今非常受欢迎的原因之一就是linux是开源的,并且在其之上的软件也是免费开源的,以此为基本最后发展出来了开源社区,对整个计算机科学的发展都有很重要的作用。 linux目前有着众多的发行版,Red Hat, SuSE,Ubuntu, Fedora, Debian。我个人使用的是ubuntu-10.10。 linux的发展路径: Unix癿前身是由贝尔实验室(Bell lab.)癿Ken Thompson利用汇编语言写成的,后来在1971-1973年间由Dennis Ritchie以C语言重新改写,才称为Unix。 1977年由Bill Joy开发出BSD (Berkeley Software Distribution),这些称为Unix-like的操作系统。 1984年由Andrew Tannenbaum制作出Minix操作系统,该系统可以提供原始码以及软件; 1984年由Richard Stallman提倡GNU计划,倡导自由软件(Free software),强调其软件可以自由获得,修改,再发行。 1991年由芬兰大学生Linus Torvalds开发出Linux操作系统。Linux成功主要在于:Minix(Unix), GNU, Internet, POSIX 及虚拟团队的产生。 Linux本身就是个操作系统,其开发网站在https://www.doczj.com/doc/a116865049.html,,我们亦称Linux操作系统最核心的数据为内核Kernel。 目前Linux核心的发展分为两种版本,分别是稳定版本偶数版,如2.6.X,适合商业和家用环境使用;一种是发展中版本如2.5.X 版,适合开发特殊功能的环境。 Linux distributions的组成有:『Linux Kernel + Free Software + Documentations(Tools) + 可完全安装的程序』所制成癿一套完整的系统。 2.分区: 目前各种机器安装linux都比较方便了,特别是像我使用ubuntu10.10,基本上全是自动安装的,不过经常困惑我们的一般都是分区。如何分区才合理呢,对于初学者,分区可以直接只分一个根分区和交换(SWAP)分区。这里值得说一下的是磁盘只能分四个主分区。不过可以通过扩展分区来扩充,这样的话就是三个主分区和多个逻辑分区。SWAP分区的大小一般建议2倍于你的物理内存。将/home等数据量会较大的目录单独分区是一个非常不错的做法,具体分配多少容量,看你最终的数据量,估算后尽量多分。 3.多重引导: 目前我们使用学习linux的最大的苦恼就是关于如何与windows共存的问题了。书中详细介绍了如何安装centOS,附带很多截图,并且也描述了在已经装了windows的情况下如何设置多重引导。这个我也有过很多关于引导的经历。现在绝大多数的引导程序都会选择使用GRUB,这是一个交互式的引导程序。当我们的引导程序如果出现故障,或者是重装了windows的时候,我们将无法正常进入linux,如果使用的系统是ubuntu这个时候可以使用如下方法:

相关主题
文本预览
相关文档 最新文档