Linux琐碎

本周接触Linux的内容:

1.netstat -tanlp 显示监听的所有端口并且不解析端口为属于哪个进程

 history | grep cmd 从命令历史中找到需要的命令

2. scp命令的使用:

从远程服务器拷贝到本地

scp adminuser@192.168.20.127:/Users/adminuser/Downloads/cdn.sql   ./

 从本地拷贝到远程服务器

scp  cdn.sql   adminuser@192.168.20.127:/Users/adminuser/Downloads/ 

3.安装NFS服务和rpcbind服务,将linux的文件挂载到其他系统:

vi /etc/exports  增加:/home/hzhida/ *(rw,sync,no_root_squash)

service rpcbind restart

mount命令使用:sudo mount -o resvport 192.168.46.136:/home/hzhida/cdn  cdn   

rabbitmq-server监听端口:5672

redis-server监听端口:6379   redis内存数据库用来转发nginx log到其他地方。

nodejs,nginx,ssh

curl - o baidu.html www.baidu.com  下载www.baidu.com的网页保存为baidu.html

curl -i  www.baidu.com 连请求头header都下载下来

4. gdb 调试

结构化的输出变量:set print pretty on

跟踪调试子进程:set follow-fork-mode child | parent

某文件某函数断点:b filename.c:function_name|line_num

下一步调试:n  进入函数:s

5. C语言

字符串的操作:strstr, strchr, sprintf, sscanf

6. nginx 高并发的web服务器和代理服务器

nginx 时daemon off | on 是否拥有console

nginx的配置,正则表达式获取url的参数,rewrite重定向到其它地方

nginx的如何开发模块来满足自己的需求

 7.git 版本控制

git clone name.git      下载到本地

git branch branch_name

git commit -a  提交本地

git push          提交到远程

git merge branch    master与分支合并

8. mysql数据库的命令操作:

show databases;

use database;

desc table;

update  table set  column _name = 'new_value' where id=value;

9. redis key-value内存数据库

netstat -tanlp | grep 6379 检查服务是否已经开启

redis-ctl 命令查看key-value数据库的值

如命令:keys *

 LRANGE access_log.cdn.reacheyes.net.list 0 10

急需补充:vim的命令快捷编辑文本,console命令性快捷操作的方式,熟悉使用Sublime Text,熟悉使用mac系统

      总结一下近期看过的书籍,如《cdn技术详解》等

本周三大遗憾:

1. Ubuntu 系统 apt-get update GPG ERROR的一直未解决,试过几乎网上所有的解决方案,但依然没效果,是否忽略了一些细节

2. linux配置静态的IP地址也出现问题,启动不成功或DNS解析不了

问题出在:vmware虚拟机上的默认的网关是192.168.248.2 而不是192.168.248.1 因此连ping外网也不通

在文件/etc/network/interfaces 配置static IP:

auto eth0

iface eth0 inet static

address 192.168.248.137

netmask 255.255.255.0

network 192.168.248.0

gateway 192.168.248.2

broadcast 192.168.248.255

dns-nameservers 192.168.248.2

修改/etc/resolvconf/resolv.conf.d/head 增加域名解析,resolvconf -u 生效 

使网络配置生效/etc/init.d/networking restart | service networking restart | ifdown eth0 | ifup eth0

3.在调试nginx的时候,居然没有分清是进程在后台还是前台运行,观念中认为在前台运行,没有注意到在后台运行,一直都调试不了进程,也不会跟踪子进程

4.开机运行的脚本在/etc/init.d/rc.local 增加相应的文件或shell

5.ssh的私钥和公钥

6.tcpdump查看HTTP包的命令:tcpdump -A -s 0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

7.strace -p pid 跟踪进程的系统调用  pmap查看进程的内存分布,特别是动态链接库

posted @ 2015-05-06 10:50  苍术厚朴  阅读(349)  评论(0编辑  收藏  举报