linux笔记——lamp李明
- 格式:docx
- 大小:49.06 KB
- 文档页数:31
【学习笔记】兄弟连LINUX视屏教程(沈超李明)发现⾃⼰的linux⽔平楞个⽠⽪,找个视屏教程学习⼀哈1 linux系统简介1.1 UNIX和Linux发展史unix发展历史:1969年,美国贝尔实验室的肯.汤普森开发出unix系统,1971年丹尼斯·⾥奇发明C语⾔,1973年,unix⽤c重写硬件平台的概念也就是cpu架构PowerPC IBM AIXPA-RISC HP HP-UXSPARC Sun SolarisIA(Intel、AMD、Cyrix、RISE…) Red Hat Linux、Ubuntu… linuxAIX和HP-UX是不能安装在pc中,必须在特定的服务器上,Solaris可以freebsd 加州⼤学伯克利分校mac也是由unix演变来的linux发展历史:1991年,Linus Torvalds和其他众多爱好者开发完成Linux是开源软件,源码开放的UNIX内核官⽹:版本号如 2.6.18⽬前最新 4.18.4次版本是偶数是稳定版奇数是开发版,这种说法在主版本更新到3就没了发⾏版:redhat系列(yum)和debian系列(apt-get)fedora是rhel的实验版本,要收费centos完全免费社区维护gentoo linux不适合初学者SUSE在欧洲⽤的多,界⾯都快赶上unbuntuKNOPPIX不⽤安装,类似livecdubuntu界⾯漂亮,桌⾯⽤户多点,server端并不多1.2 开源软件简介商业软件是收费的开源软件免费但是可以收服务费image使⽤、研究、散布及改良的⾃有基于Linux的企业服务器 扫描和踩点⽹站嵌⼊式应⽤安卓、⼿机、平板、智能家电、航空、银⾏、卡拉OK点歌系统、树莓派1.4善⽤⼯具英⽂忘掉windows思维⽅式2 Linux系统安装磁盘分区分区类型主分区:最多4个扩展分区:最多1个,不能写⼊数据,只能挂载逻辑分区主分区+扩展分区最多4个逻辑分区格式化(⾼级格式化)⼜称为逻辑格式化,是要在硬盘中写⼊⽂件系统ext4 4k 数据块 blocki节点 inode列表低级格式化是硬盘操作不是操作系统操作硬件设备⽂件名:IDE硬盘 hd[a-d]SCSI/SATA/USB硬盘 sd[a-p]光驱 cdrom或sr0⿏标 mouse打印机(25针) lp[0-2]打印机(USB) /dev/usb/lp[0-15]ide 133MB 最古⽼, scsi都淘汰了 200MB贵服务器SATA3 串⼝硬盘 500MB/s 现在⼀般都是这个逻辑分区不能占⽤1 2 3 4编号 5⼀定是第⼀个逻辑分区挂载:/ 根分区swap分区交换分区内存1.5-2倍不超过2G推荐分区/boot 启动分区 200m即可太⼤⽆⽤,系统启动都要有空闲空间,防⽌系统写满导致⽆法启动,写完之后永远不会往这个分区再写⼊数据,他永远有空闲空间 boot分区⼀定是sda1第⼀个分区挂载点必须是空⽬录安装⽇志:/root/install.log:存储了安装在系统中的软件包及其版本信息/root/install.log.syslog 存储安装过程中留下的事件记录/root/anaconda-ks.cfg 已Kickstart配置⽂件的格式记录安装过程的选项设置作为⽆⼈值守安装的模板linux 严格区分⼤⼩写命令全是⼩写⽂件名区分⼤⼩写tab键⾃动补全linux中⼀切皆⽂件设备⽂件是特殊的⽂件永久⽣效都要写⼊⽂件写⼊内存的都是临时⽣效linux不通过扩展名区分⽂件类型linux存储设备都必须挂载后才能使⽤⽬录作⽤/bin 存放系统命令,普通⽤户和root都可以执⾏/sbin 保存和系统环境设置相关的命令,只有root能执⾏/usr/bin/usr/sbin/boot 系统启动⽬录/dev 设备⽂件/etc 配置⽂件/home 宿主⽬录/lib 系统函数库/lost+found/ 当系统崩溃或意外关机⽽产⽣的⽂件碎⽚。
RedHat Enterprise Linux 5 下搭建LAMP(python) 全过程分享(for Django)#----ing--------在安装的过程中遇到不少困难,所以记下来,好让后面的人能少浪费些时间在上面1】先列出我的系统的版本---我使用的是redhat-enterprise-5.5 自己在网上下载的2】首先安装apache服务器,在安装过程中遇到的问题基本上都可以自己解决或者在网上找到很多经验。
我安装的是apache2,从官网上下载的3】接下来要安装MySQL了,我选择的是MySQL5.6 也是在官网上下载的a)在安装MySQL的时候要注意了,这个时候要把几个组件同时安装了,不然后面在安装的时候可能会出现各种错误(关于错误我在这也不想描述,因为我也不知道怎么描述,我也不会再现错误),搞得自己都莫名奇妙的,我就是被这搞得头大了b)要安装MySQL-server-5.6.10-1.linux_glibc2.5.x86_32.rpmMySQL-client-5.6.10-1.linux_glibc2.5.x86_32.rpmMySQL-devel-5.6.10-1.linux_glibc2.5.x86_64.rpm(这个比较重要,在安装的时候可能提示缺少zlib 模块这时候一定要安装对应自己系统的zlib模块,自己去网上搜索)mysql-connector-python-1.0.9-1.el6.noarch.rpmc)在这遇到的其它问题基本网上都可以搜到4】安装python。
自己系统自带的python版本太低啊,不太好,所以要换个新版的我选择的python2.7 也是官网上下载的在编译python的时候一定要注意啊,./configure --with-zlib 后面加上这个库不然你后面会死的很惨,,但是不知道为啥这种问题给我遇上了,可能是因为系统版本的原因吧其它的不多说,自己都可以搞定,不行的google去5】这下该安装什么了?直接安装django吗?不是啊! 需要安装MySQL-python 自己去下个去,在网上不好找啊亲安装MySQL-python可不是那么容易的,虽然这个东西很小但是确是最非功夫的如果你因为安装这个遇到问题而正在看这篇记录那么恭喜你,你可能马上就会解决问题,如果不能解决。
软件包校验rpm Vrpm -V 软件名称rpm -Vf 文件名称md5sum 生成文件校验值数据备份建立备份日志表格确认系统级备份和数据级备份 备份数据压缩与加密备份数据文件的校验数据加密GnuPG生成公钥和私钥gpg --gen-key查询密钥gpg --list-keysgpg-armor--export导出公钥gpg -armor --export/email> 如:gpg -armor --export如tsamlee@ > samlee.pubkey数据加密导入公钥i t bk导入公钥:gpg --import pubkey加gpg p yp yp加密:gpg --output crypt.file --encrypt --recipient /email file如:gpg --output README.gpg --encrypt --如gpg output README gpg encrypt recipient samlee@ README数据加密解密t t d t fil d t 解密:gpg --output decrypt.file--decrypt crypt.file如:gpg --output README --decrypt README.gpgREADME gpg对称密钥加密非对称密钥加密Xinetd服务限定l f限定访问主机only_from no_access限定访问_限定访问时间access times设定端口port例:only_from = 128.138.193.0 128.138.204.0 only_from = 128.138.252.1access_times = 2:00-9:00 12:00-24:00port = 10023p_pptcp wrappers 限定文件/etc/hosts.allow /etc/hosts.deny /etc/hosts allow/etc/hosts deny 格式service:hosts:action例:/etc/hosts.denysshd:192.168.1.2/etc/hosts.allowsshd:ALL:spawn /bin/echo `date` %h >>/var/log/sshd.logpNetfilter/IptablesLinux包过滤防火墙一、Netfilter:内核功能模块,由信息包过滤表组成,表包含内核用来控制信息包过滤处理的规则集。
查看当前登录用户所在的组groups ; 查看所有组cat /etc/group 查看当前登录用户w 或者who 查看自己的用户名whoami查看所有用户cut -d : -f 1 /etc/passwd切换用户su - 用户名命名. 隐藏文件大小写敏感目录. 当前目录..当前目录的父目录ls (list) -a 显示所有文件(包括隐藏文件)-l 详细信息显示-d 查看目录属性(ubuntu -D)-i (inode)显示文件标识符(内核识别用)drwxr-xr-x 2 root root 4096文件类型d 目录directory 所有者所属组其他人- 二进制文件owner group otherl 链接文件linkread write execute执行cd cd .. pwdtouch 文件名创建空文件mkdir 目录名创建目录cp 可以把多个文件复制到一个地方cp -R dir1 dir2 复制目录-p 保持备份目录及文件属性(文件修改的时间等)-u 增量备份cp -Rpu远程备份可用scpmv dir1源dir2目的1、剪切mv a b 2、改名rm 【-r】删除文件【目录】rm -f 强制删除cat 文件名显示文件内容more 文件名显示文件内容空格/f 显示下一页enter 显示下一行q 退出head -num 文件名查看文件前num行tail -num 文件名查看文件后num行-f 文件名动态显示文件内容ln -s 源文件目标文件软链接ln 源文件目标文件硬链接1、软链接lrwxrwxrwx --> 10 时间值(创建的时间)类似快捷方式;源文件删除,则无意义;可以在不同的分区2、硬链接源文件不在他还可以在;相当于cp,但同步更新,因为其和源文件有相同的文件标识符(inode,i节点);ls -i不能跨分区,只能和源文件在一个分区下chmod u + r 文件名u-所有者chmod u+wxg - w g-所属组chomd g=rwxo = x o-其他人chmod o-rxchmod 641 文件名rwx可读可写可执行r-4 w-2 x-1文件目录rwx属性意义文件目录r 可以查看文件的内容cat,more,head,tail ls 可列出目录内容w 可以修改文件的内容echo,vi touch,mkdir,rm可在目录中创建、删除文件x 可以执行文件,命令、脚本cd可以进入目录chown 用户名文件/目录名改变文件/目录名的所有者(chown wangt test;将test文件是所有者改为wangt)chgrp 用户名文件/目录名改变文件/目录名的所属组umask -S 显示、设置文件/目录的缺省(默认)权限umask (可能得到0022 0-特殊权限位;022-用户权限位权限掩码值)linux中缺省创建的文件不能授予可执行的x权限(目录可以),所以777-022-111即为默认创建文件的权限umask 027 (即777-027=750默认目录为rwxr-x--- 而文件-111=640)文件搜索命令which 命令;显示系统命令所在的目录,还有命令的别名信息whereis 命令;显示系统命令所在的目录,还有帮助信息,及帮助信息所在的路径find 【搜索路径】【搜索关键字】:查找文件或目录。
查看当前登录用户所在的组groups ; 查看所有组cat /etc/group查看当前登录用户w 或者who 查看自己的用户名whoami 查看所有用户cut -d : -f 1 /etc/passwd切换用户su - 用户名命名. 隐藏文件大小写敏感目录. 当前目录..当前目录的父目录ls (list) -a 显示所有文件(包括隐藏文件)-l 详细信息显示-d 查看目录属性-i (inode)显示文件标识符(内核识别用)drwxr-xr-x 2 root root 4096文件类型 d 目录directory 所有者所属组其他人- 二进制文件owner group otherl 链接文件linkread write execute执行cd cd .. pwdtouch 文件名创建空文件mkdir 目录名创建目录cp 可以把多个文件复制到一个地方cp -R dir1 dir2 复制目录-p 保持备份目录及文件属性(文件修改的时间等)-u 增量备份cp -Rpu远程备份可用scpmv dir1源dir2目的1、剪切mv a b 2、改名rm 【-r】删除文件【目录】rm -f 强制删除cat 文件名显示文件内容more 文件名显示文件内容空格/f 显示下一页enter 显示下一行q 退出head -num 文件名查看文件前num行tail -num 文件名查看文件后num行-f 文件名动态显示文件内容ln -s 源文件目标文件软链接ln 源文件目标文件硬链接1、软链接lrwxrwxrwx --> 10 时间值(创建的时间)类似快捷方式;源文件删除,则无意义;可以在不同的分区2、硬链接源文件不在他还可以在;相当于cp,但同步更新,因为其和源文件有相同的文件标识符(inode,i节点);不能跨分区,只能和源文件在一个分区下chmod u + r 文件名u-所有者chmod u+wxg - w g-所属组chomd g=rwxo = x o-其他人chmod o-rxchmod 641 文件名rwx可读可写可执行r-4 w-2 x-1文件目录rwx属性意义文件目录r 可以查看文件的内容cat,more,head,tail ls 可列出目录内容w 可以修改文件的内容echo,vi touch,mkdir,rm可在目录中创建、删除文件x 可以执行文件,命令、脚本cd可以进入目录chown 用户名文件/目录名改变文件/目录名的所有者(chown wangt test;将test文件是所有者改为wangt)chgrp 用户名文件/目录名改变文件/目录名的所属组umask -S 显示、设置文件/目录的缺省(默认)权限umask (可能得到0022 0-特殊权限位;022-用户权限位权限掩码值)linux中缺省创建的文件不能授予可执行的x权限(目录可以),所以777-022-111即为默认创建文件的权限umask 027 (即777-027=750默认目录为rwxr-x--- 而文件-111=640)文件搜索命令which 命令;显示系统命令所在的目录,还有命令的别名信息whereis 命令;显示系统命令所在的目录,还有帮助信息,及帮助信息所在的路径find 【搜索路径】【搜索关键字】:查找文件或目录-name 文件名;eg:find /etc -name init(* 匹配任意字符init* ;?匹配单个字符init???-size 文件大小;block数据块512字节=0.5KB,100MB= 204800block大于+ find / -size +204800小于-等于= find / -size 204800-user 查找属于某一用户的文件find /home -user wangt-时间1、天ctime atime mtime2、分钟cmin amin mminc-change改变,文件的属性被修改过,所有者、所有组、权限a-access 访问,文件被浏览过m-modify 修改,表示文件内容被修改过3、+超过多少时间-之内find /etc -mmin -120 ;etc下120分钟之内被修改过的文件-type 文件类型; f 二进制文件l软链接d目录-连接符1、-a and 逻辑与;-o or逻辑或;find /etc -name init* -a -type l2、find_ _ _ _ -exec 命令{ } \ ;有分号-ok 会询问确认{ }find查询的结果;\转义符符号命令使用本身的含义find /etc -name init* -a -type f -exec ls -l {} \ ;-inum i节点find . -inum 16 -exec rm {} \;locate 关键字查找文件或目录,只有linux系统有,在下面的数据库中查找,有时不更新数据库找不到,但速度比find快updatedb 建立整个系统目录文件的数据库grep 指定字串源文件在文件中搜索字串匹配的行并输出grep ftp /etc/servicesgrep -v "^#" /etc/inittab | more 排除行首有#行man manual命令或配置文件帮助man 1 ls 命令(1可省略)man 5 passwd 配置文件info 获得帮助whatis -命令基本用法,简短信息命令--help 命令的主要选项aproposmakewhatis更新数据库help 查看shell内置命令的帮助,cd,echo等,用man不行,安装shell时自带的命令压缩解压命令(linux的压缩格式window都支持,但window的linux的不一定支持) gzip file .gz 文件1、只能压缩文件,不能压缩目录2、不保留原文件gunzip 或gip -d 解压缩tar 选项目录打包目录在压缩后格式.tar.gz-c 产生打包文件-v 显示详细信息-f 指定压缩后的文件名-z 打包同时压缩tar -zcf newdir.tar.gz newdir 把newdir打包-x 解包.tar文件-v 显示详细信息-f 指定解压文件-z 解压缩tar -zxvf dirl.tar.gzfile 文件查看文件的类型zip 可压缩文件和目录.zip 默认window和linux通用格式,会保留原文件-r 压缩目录zip -r new.zip /etc/newunzip 解压缩bzip2 选项文件.bz2 eg: bzip2 -k new-k 保留原文件bunzip2 【-k保留压缩包】解压网络通信指令:write 用户名向另外一个用户发信息,以ctrl+D作为结束eg:write wangtwall [message] [文件名] 向所有用户广播信息(write all)ping 选项IP地址测试网络连通性,网络时延time,丢包率packet lossping 127.0.0.1回环地址-c num 定义发送请求包的数量-s 数据包大小定义发送请求包的大小ifconfig 显示网卡信息etho实际的物理网卡,lo回环地址的网卡ifconfig etho ip 改ipshutdown 关机-h now 立即关机reboot 重启shell应用技巧bash1、用Tab键进行命令补全2、clear/ctrl +l3、ctrl +u 删除一行4、history 写过的命令列表5、命令别名alias 查询别名alias copy=cp alias xrm="rm -i" 命令的组合要用引号unalias 删除别名输出重定向0 对于每一个进程预先定义三个文件描述字0、1、2ls -l /tmp > /temp.msg 把命令执行的信息重定向到文件中date /tmp >> /temp.msg 把命令执行的信息追加到一个文件中输入重定向1wall< /etc/issue错误输出重定向2cp -R /usr /backup/usr.bak 2> /bak.errorls /tmp 2> ls.err管道:将一个命令的输出传送给另一个命令,作为另一个命令的输入管道可以连接无数个命令命令1|命令2|命令3...|命令nls -l /etc | morels -l /etc | grep init | wc -l 有几行命令连接符1、;间隔的命令顺序依次执行2、&&只有&&前面的命令执行成功后,他后面的命令才执行command1 &&command2成功执行失败不执行ls&& pwd3、|| command1 ||command2成功不执行失败执行命令替换符:将一个命令的输出作为另一个命令的参数ls -l `which touch`相当于ls -l /bin/touchVim/Vi 文本编辑器:建立、编辑、显示文本文件1、命令模式定位:h j k l 上下左右$ 移到行尾0 移到行首H M L 移到屏幕的上、中、下gg 到第一行G 到最后一行nG 或:n 到第n行:set nu 设置行号:set nonu 取消行号删除命令x 删除光标所在处字符nx 删除光标所在处后n个字符ndd 删除n行dG 删除光标所在行到文件末尾的内容D 删除从光标所在处到行尾:m,nd 删除指定范围的行复制和剪切:yy、Y 复制当前行nyy 、nY 复制当前行以下n行dd 剪切当前行ndd 剪切当前行以下n行p、P 粘贴在当前光标所在行下或行上替换和取消r 取代光标所在处字符R 从光标所在处开始替换字符,按Esc结束u 取消上一步操作搜索和替换命令:/string 向前搜索指定字符串,区分大小写。
(搜索时忽略大小写:set ic 区分set noic) n ,N 搜索指定字符串的下/上一个出现位置:%s/old/new/g 全文替换old成指定字符串new:n1,n2s/old/new/g 在一定范围内替换指定字符串g替换时不询问,c询问2、插入模式a 在光标后插入i 在光标前插入o 在光标下一行插入A 在本行行末附加文本I 在本行开始插入文本O 在光标上插入新行3、编辑模式保存和退出命令:w 保存修改:w new_filename 另存为指定文件:wq 保存修改并退出ZZ 快捷键,保存修改并退出:q! 不保存修改退出:wq! 保存修改并退出(文件所有者可忽略文件的只读属性)4、应用实例:r 文件名#导入文件eg: :r /etc/test:! #在Vi中执行命令:! date :r ! date:map 快捷键促发命令:map ^P I#<ESC> ctrl+v ctrl+p:map ^B 0x 按ctrl+b删除光标所在行首的一个字母连续行注释:n1,n2s/^/#/g (^表示行首,行首加#):4,8/^#//g去掉4到8行行首#:1,5s/^/\/\//g 在行首插入//,\为转义字符:ab 替换eg: :ab mymail zzwangtao911@:unab mymail5、每一个用户都有一个宿主目录~ 缺省时管理员root /root普通用户wangt /home/wangt~/.vimrc 是vi的配置文件vi /root/.vimrc 或直接vi ~ /.vimrc作用:在其中存放一堆命令,用Vi编辑文件时,命令直接生效,如快捷键等系统引导流程1、固件firmware(CMOS/BIOS) POST加电自检硬件时钟hwclock 软件时钟(系统的时间,如date)hwclock --help 学习改变软/硬时间同步2、自举程序BootLoader (GRUB) 载入内核读取硬盘MBR,即主引导记录,其中保存了BootLoader、Partition table磁盘分区表、Magic Number结束标志字。