还剩25页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
入门入门很重要,刚开始自学时懵懵懂懂好不容易装好了大喜过linux linux linux linux,后一脸无奈,这是哪跟哪呀------------里面的所有东西都不知道做什么用,自信对window有研究的我顿时手足无措,在给相了一天面后还是格掉了:(此后开始看书,慢慢的找感觉linux------------------一直到长城开始系统的学才自认为找到了感觉(也就是入门了)自我评价:学习找感觉最重要,不管是看书还是自己安装后琢磨,坚持着看和做,肯定能成假如仅linux仅看了两天书就认为入门了那肯定是自欺欺人安装安装并不是很难,一般用光盘安装,安装时硬盘默认分为三个引导分区;Linux linux根分区;互换分区;分区弄明白了安装也就没什么障碍了尚有从硬盘安装,我当初从硬盘安装时颇费一番周折,幸亏有和老师的及时指点才得以顺利安上,再次linux platinumshadowmin感谢一下)附硬盘安装原文注装是要写规范主机名如linux作服务器时系统时间应设为格林威治时间,即国际标准时间CMOS基本命令linux挂接:单根文献系统使用多个设备的方法设备挂接点mount此命令可看光驱在哪dmesg|grep cd(当老师讲到这里的时候机器出了点故障,鼠标不动了,老师用了一个命令就使鼠标复活,第一次感慨linux的神奇啊---------本来鼠标还可以重起(windows下还真没想过)顺便把老师用的命令也抄了下来,呵呵多学了个窍门重启鼠标命令/etc/rc.d/init.d/gpm restart)解除挂接:挂接点umount软盘写法/dev/fdO可读-r可写-w可执行-X例如#!/bin/shecho“file”read FileNameif[-f$FileName];thenecho yes”elseecho nofi字符串比较相等串人二串8不等串二串A!B判断字符串是否为零空为真非空为假-Z数值比较大于等于小于不等于ab$A-gt$Ba2b$A-ge$B〈a b$A-It$Ba=b$A-le$BaWb$A-ne$B逻辑比较条件条件(与)A-a B条件条件(或)A-o B!条件(非)例如#!/bin/shread MARK/proc/sys/net/ipv4/ip_forwardecho$MARKif[$MARK=O];thenelse echohostecho“GATEWAY”fi反单引号假如反单引号后面有语句则将里面的语句运营完后将结果替换此处例如#!/bin/shu=id-uif[$u=O];thenecho hello”elseecho permissiondenied”fi再例如#!/bin/shecho“username”read userNAMEMARK=cat/etc/passwd|grep SuserNAME:积极if[-z$MARE];thenecho NO”elseecho“YES”fi多分支结构字符串case in串)块11••串)块22*esac例如#!/bin/shecho“command”read CMDcase$CMD instart/etc/rc.d/init.d/named start••stop/etc/rc.d/init.d/named stopestart/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/shi=0while[$i-It$n];doJ=while[$j-It$$i+l];doecho户$$j+Ddone echoi=$$i+ldone定期循环称之为元年00:00:00:1970-01-01utc unix是取从元年至少过了多少秒data+%s unix显示时分秒格式date+%H:%M:%S例如#!/bin/shintime=date+%S,-le$[intime+5];do后面加输出就不回车了,横向输出echo##echo-ndone运用命令可以方便的实现定期循环date风格的循环循环枚举循环shell for格式变量名值列表;for indo循环体done##值列表:核心部分,一系列由空格分开的字符串例如#!/bin/shfor nin asd4r356h er34657tr ger;doecho$ndone要自动下载列表中的东西编的shell#!/bin/shcd/tmp/dlfor urlin cat/etc/urls;dowget$urldone/etc/urls补充知识参数传递命令参数参数
1.添加账户用户名useradd用户名passwd组名用户名groupadd usedel-r三个重要文献/etc/group/etc/passwd/etc/shadow文献格式组名:组组成员group xID:文献格式用户名:用户组:用户目录:passwd x:1D:ID:shell用户在文献中体现的组关系称为用户组属组,而在组中体现的是额外passwd group组false运营起来就是个恒假对的运用false给用户,将false添加到/etc/false下用户名字后这样用户就被拒之门外如用户通过修改用户的来限制用户登mail shell陆提高网络安全性命令:察看机器负载情况top命令查看外部命令的途径which被弄成用户时牢记在下可用,因在下是安全模式的,而在其top shelllinux linux top他中并不一定安全,通过敲击热键也许会打出一unix shello文献里面的口令是散列,散列是不可逆的shadow shadow批量添加个用户150uOOl—U150#!/bin/shi=lwhile[$i-le150];doif[$i-It10];thenuname=u00$ielseuname=u$ifiuseradd$unamei=$$i+Ddone命令规定只能在终端上手动输入,只有用参数便可解决passwd stdin作业从一表中将已知用户名导入useradd网络配置下有两套网络配置,第一套为方式,另一套是方式中高级网络功linux BSDlinux linux能只能用方式linux方式.查看网卡名中必须指定网卡名BSD1ifconfig BSD注释冲突发送包的长度collisions txqueuden网卡工作模式媒体无关接口mii-tool网卡名查看命令更具体(需要网卡驱动支持)ethtool+查看路由netstat-r查看网络连接状态查看的所有网络连接netstat-ant TCP查看的所有套接字-anu UDP一条连接会产生两个套接字,两台机器均开TCP意思是不要进行反解不转成名字ARP-n-n查看DNS cat/etc/resolv.conf配置
2.IP配置路由route add-net网络地址netniasL x.x.x.x gw网关网卡名地址ifconfig ip网络地址网卡route add-host netmast x.x.x.x devroute del-net网络地址netmastx.x.x.x gw网关网名各地址网卡routedel-net netmastx.x.x.x dev缺省写法网关route adddefault gw网卡route adddefault dev静态地址地址ARP arp-s IPMAC方式:linuxip addrshow查看IP地址简写为ip adsh查看路由简写为ip routesh ipro ship neigh sh查看静态ARP简写为ipnesh中取消了改用ipv6ARP ICMP命令ip具体配置:地址/掩码长度ip adadd devipip routeadd ip地址/掩码长度dev网卡ip routeadd ip地址/掩码长度via网关地址ifconfig devdown/up激活/严禁某网卡ip link set updev ethOiplinksetdown devethO下的:linux此设立都是临时的,固化网络配置,在下主机名/缺省网关修改途径linux假如修改主机名顺便把hosts文献也得改/etc/hosts否则有时服务会启动时/etc/sysconfig/network挂起死等固化地址下的网卡名IP/etc/sysconfig/network-scripts ifcfg-例如:/etc/sysconf ig/network-scripts/ifcfg-ethO##假如用动态则改成bootprotocol=static IPDHCP二##启动时激活,设立思想作为外网网卡应当为0NB00T yes因防火墙启动之前将网卡先期启动会有被袭击的危险NO,静态固化ARP/etc/ethers写法例如mac ip01:02:03:04:05:06小知识点万用脚本不管什么命令只要加在此,下次开机后便会自动运营,/etc/rc.local相称于在用户登陆之前便已经运营,注在此文献中加命令时不可阻塞,autoexec,bate假如命令执行时间过长则加“$”将其弄到后台执行三.计划任务在和下是服务来实现的,每隔一分钟检查一次任务列表linux unixcron命令/etc/crontab crontab-1list-e edit写时间格式时分日月周命令硬盘写法:括号内可以依次排为SCSI/dev/sda bcd…….硬盘硬盘系统都做硬盘对待USB SATASCSI光驱写法:括号内为数字零依次后派SCSI/dev/scd0□的光驱也被认为光驱USB SCSI注只有先解除挂接可移动设备才可拿出来和文献系统shell命令中绝大多数都是外部命令内部命令常用的有很少shell unixcddos|shelldir|Istype|catcd|cdmd|mkdirrd|rmdirdel|rmcopy|cpds|dearattrib|chown charpchmod此上命令除了全是外部命令cd最重要的命令主题man主题可是命令也可是配置文献,还可是语言函数,但有时命令和配置文献相shell Cshell同时打入命令怎么办呢,此时用参数命令,系统函数.标准库函数.配置文献man
1.235例:查默认会查到passwd man passwd⑴命令manpasswd例如:##每周一三五运营055**1,3,5技巧计划任务可用“,“给分开假如计划任务不执行此时重要因素是途径不对,看便可知,写的便是,第二crontab PATH因素是终端不能读标准输入和写标准输出,但可用重定向往文献中写可以,不能使用终端假如要修改文献则需要先停止服务crontab cron/etc/rc.d/init.d/crond stop/./〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜修改/etc/rc.d/init.d/crond start配置四命令详解进程管理linuxtop命令查看系统的资源状况top表达在过去的一段时间内有多少个进程企图独占load averageCPU进程不是异常情况一个进程从创建到结束在最后那一段时间遍是僵尸留在内zombie存中档待父进程取的东西便是僵尸任何程序都有僵尸状态,它占用一点内存资源,仅仅是表象而已不必胆怯假如程序有问题有机会碰见,解决大批量僵尸简朴有效的办法是重起kill是无任何效果的模式与进程应区别,会积极放弃而是被动放弃例单步跟踪,stop sleep sleep cpu,stop cpu,暂停的进程是无法自己回到运营状态的stopcpu states:让出比例中断解决占用nice:irq:idle空间占用比例iowait输入输出等待假如它很大说明外存有瓶颈,需要升级硬盘SCSI内存情况Mem:设计思想把资源省下来不用便是浪费,如添加内存后值会不变,值会增free buff大判断物理内存够不够,看互换分区的使用状态命令列进程列出所有进程PS值为“?”是守护进程,叫无终端,ps ax:tty deamon大多系统服务是此进程,内核态进程是看不到的,例木马看进程树,以树形方式现实进程列表敲ps axf是号进程,系统所有进程都是它派生的,杀不掉init1:会把线程列出来ps axm在下进程和线程是统一的,是轻量级进程的两种方式linux:显示进程的具体状态ps axu说此进程一共占用了多大物理内存vsz:请求常驻内存多少rss:(并不是强制退出)终止进程本质是协商退出!kill pid全-信号kill pid是强制退出kill-KILL pid例如编写一杀不掉的程序kill#!/bin/shwhile truej doecho-n sleep1done#!/bin/sh期捕获号进程,就是号进程trap1515kill15while truej doecho-n”sleep1done修改善程优先级:命令每个进程都有优先权,权值越小优先级越高nice-调整值命令##范围nice“-20~19”图形界面的优先级并不是最高的,它仅是一进程linux命令在下可随意调整,在普通用户状态下只能调低不能提高,但是还是可以nice root恢复回去的局限性必须敲命令之前敲它无法更改已经运营的程序的优先级nice,假如要更改已经运营的用调整值renice pid即在线调整命令杀死一系列进程,即杀死一系列由一个相同命令产生的进程例如killall killallfam是根据命令名来杀的,以来区别killall killpid在里面可以直接杀死进程,按”输入可杀top“K PID按”可调整优先级“R定义了个信号定义了个信号BSDunix32linux64五启动管理启动顺序>启动扇区BIOSMBR-:扫描分区表看哪个是可启动分区,再将那个扇区放入内存MBR有两种装法..启动扇区GRUB LMB.2有两个基本技巧GRUB单用户启动模式见到启动菜单时按选”打头
1.GRUB“e“kernel的那一行,再按“e”,然后在/rhg后面加空格+“1”再按“b”便以单用户模式启动了,输入便进入正常启动模式init3在单用户模式下可以更改口令,有很大危险root防护方法给加口令grubvi/etc/grub,conf##在timeout后添加一行password=1234567##密码
2.使生效敲grub回车等待一会再敲quit内核一》进程.进程指令运营级
3.GRUB—linux init-
12./etc/rc.localinit配置文献/etc/inittab虚拟终端
3.里面有一说明0-halt1-single3-full mutiluser5-Xllid:5:initdefault##缺省进入5Xll模式si::sysinit:/etc/rc.d/rc.sysinit##系统启动以后调用的第一个脚本,即进程所调用的inittrap Ctrl-alt-deleteca:ctrialtdel:/bin/在文字界面下敲来使配置立即生效init-q注屏蔽三键热启动是非常重要的虚拟终端的添加/减少也在此修改(数量修改)假如想把弄成指纹辨认的替换掉linux getty和即可bgin六文献包管理此时要用可查配置文献man5passwd模糊查找(匹配)参数:例和大多数中同样为小写.-k man-k PPPunix k第二个重要命令:文献名(文本编辑器)vi它有三种工作模式,缺省为“命令模式”输入进入“插入模式”按回到命令模式I ESC常见命令:删一个字符x册除一行U dd恢复操作u复制(光标在哪一行将复制哪一行)yy粘贴(粘贴在光标下面)p在反复输入一些命令时,在前面加数字如插入个则在命令模式下先输入按vi100a100I输入一个回到命令模式则会有个被插入行东西反复次则输入存盘退出用a100a535yy3P大写ZZ“末行模式”常见是搜索字符用“/在命令模式下输入“/,,加字符串.在手册中也能用,丁会引发末行模式.可用”厂跳到某一行”;“加数字可直接到那还可用与文献操作“;q”可直接退出强制退出”;q!”存盘不退出“;w”“;wq”存盘退出可在出现以外后修复文献^recover”“;w文献名”另存为命令的敲法shell命令参数参数12参数定界:用到“一飞单引号)用单引号括起的如「是告诉消除语法歧义abc deshell如要建一文献叫却不能用单引号了,此时得用应写为:例如jacks dailyTtouce 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—数字644()字母法如2rw-r-r-u go修改文献的访问权限不必非得是文献属主也可以root,文献权限策略是侧重与灵活性;文献系统策略是权限位,侧重用效率;windows ACL,unix所有权限都放于一个位的短整数里linux16linux特有功能(ext2ext3所体现的)列出所有权限命令:Isattr设立特殊权限chattr连接硬连接硬连接本质使一个文献有两个文献名和不同中文献属性和文windows windows献名是放在一块的,而文献名仅是文献名linux命令:原文献名新文献名In
(2)硬连接有两限制
(1)不能给子目录建硬连接
(3)不能跨文献系统建硬连接(即不能跨分区)在下删除一文献的本质是断开一个硬连接,系统会将硬连接数减一,只要不为则保存文unix0献体符号连接(途径跳转)命令跳转去向连接名In-s注建符号连接得用绝对途径写绝对途径此时可建成的在下看到的连接是红色的tem后面指向的仅一个但在当前目录即下却没有这个文献此时便犯错了services tem注符号连接可跨分区建立shell()使用在下常用的是4shell unixbash功能
(1)自动完毕按tab键支持途径,在参数位置上按tab会补齐文献名,按两下tab键便可看所有系统命令命令历史按可查看所打过的历史命令注在用户文献夹下有个保存有上次t!bash-histroy使用的命令非功能,虚拟终端功能:按切换shell alt+fl〜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 exportshell的值,一旦注销便没有了,想固化得修改文献profile命令可查看所有环境变量里面有个非常重要,它定义了命令执行的途径env pathshell下命令执行仅搜索途径,不会搜索当前目录的外部命令,所以在当前目录下要Linux path执行当前目录中的命令需要加/命令.引用变量的值$变量名例3export PATH=$PATH:/etc/xxx例如回显命令可察看的值echo$LANG echoLANG例export CMD=ls等于$CMD-1Is-1管道与重定向shell一个进程的缺省标准输入输出分为标准输入;标准输出;标准错误输出三个管子控制终端:缺省情况下进程的三个管子通向控制端输入重定向命名文献名解释:本来要从终端读取的命令改成从文献读取例如则读取的文献不是从键盘而是从文献,不知道所要cat/etc/hosts cathosts cat读取的标准输入输出被换成和不同样,此时是直接读取/etc/hosts cat/etc/hosts cathosts输出重定向()命名文献名本来要输出到终端的命令改成输出到文献1(此时叫覆盖式重定向)()命名»文献名2(追加式重定向)例如命令标准的输入gcc0:标准输出1:标准错误输出2:解释最精简的一句话是:下一切都是文献linuxlinux管道匿名管道,传统进程间通信unix写法命令|命令12命令处经常出现的是或叩2more gr例如意思是包具有的输出cat/etc/services|grep httphttp磁盘的分区格式化分区列出分区表fdisk磁盘而不是某分区fdisk/dev/had看分区command:p新建分区n删除分区d不保存退出q保存退出w生成文献系统格式化mkfs makefile systemmkfs-t ext2/dev/hda5:格式化成格式mkfs-t ext2-j/dev/hda5ext3挂接mount/dev/hda5脚本自身就是程序,是用命令构成的,小规模、结构化、模块化、程序设计shell shell命令输出信息用echo输入信息变量名休眠秒数read read+sleepsleep+在终端上算数表达式写法这echo$1x2x3是整数运算不能带小数点/滁%余脚本格式:shell第一行必须是#!/bin/sh有三种结构顺序结构分支结构循环结构顺序结构命令保证进程同步等待一个子进程结束多个并发就用多个wait wait例如#!/bin/shecho Tsleep5echo“3”echo“4”waitecho5分支结构判断;if then块TElse块Ffi判断语句表达式=[表达式]test test表达式进行文献判断文献名检测该文献是否存在且为普通文献目录名-d。
个人认证
优秀文档
获得点赞 0