linux 小知识!!!

0 .linux启动的引导流程!

Firmvare(第一: 固件的加电自检,检测固件cpu\内存\显卡等设备是否正常.  CMOS/BIOS)

BootLoader(第二: 读取硬盘的主引导记录(MBR)里面的bootloader,bootloader最重要的作用是载入内核)

kernel (第三: 内核夹在后做两件事:1驱动硬件,2启动进程init)

/etc/inittab (第四: init进程启动以后读取inittab文件,读取inittab文件时会判断系统缺省的运行级别,执行文件/etc/rc.d/rc.sysinit[不论哪个运行级别都会运行这个脚本,目的:加载基本服务] 和 /etc/rc.d/rc[根据缺省的运行级别启动对应的级别目录里面的服务程序])

/etc/rc.d/rcN.d  (第五: 启动对应的运行级别目录里面的服务程序.N的范围0-6)

username password (第六: 最后就能看到用户名密码登陆界面了!!)

1:网卡的配置.

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


2. 防火墙的配置与修改

1) 重启后生效 
开启: chkconfig iptables on 
关闭: chkconfig iptables off 

2) 即时生效,重启后失效 
开启: service iptables start 
关闭: service iptables stop 

需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。 

在开启了防火墙时,做如下设置,开启相关端口, 
修改/etc/sysconfig/iptables 文件,添加以下内容: 
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

关闭相关端口 ()


3.linux设置开机自动启动/关闭各种服务!!

我觉得最简单的方法是修改rc.local文件!!  只要把开启/关闭服务的命令写进去就OK啦!(但是他的运行级别低)

vi /etc/rc.d/rc.laocl



4.chkconfig 命令的使用!  (用chkconfig 命令控制开启启动各种服务 运行级别高!!)

    语法解释 :
chkconfig --list [name]  
列表服务
chkconfig --add [name]   
添加服务
chkconfig --del [name]   
删除服务
chkconfig [--level levels] name <on|off|reset>  
改变启动信息以及检查特定服务的启动状态。

例: 添加mysql服务在系统运行3和5级别时开机启动

chkconfig --add  mysql            #

首先将MySQL添加为受chkconfig管理的服务:

chkconfig --level 35  mysql  on     # linux以第3级别启动的时候启动mysql (系统运行级别0-6)

chkconfig --level 01246  mysql  off     # linux以第3级别启动的时候启动mysql (系统运行级别0-6)

#chkconfig --list mysql        #查看

服务将会在哪个运行级别启动!

** 用chkconfig 命令控制开启起动服务的时候,服务的启动脚本必须放在了/etc/rc.d/init.d目录下**

**源代码安装服务器时,有的服务没有启动脚本需要自己写! 如apache安装后就没有启动脚本**


5.linux里面 PATH路径的添加!!

vi /etc/profile        



6.  linux 强制T掉某个连接的终端!!

        首先命令:who 可以查看现在登陆的用户有哪些! 

        然后想T掉某个用户使用命令:  pkill -kill -t pts/1   就能吧pts/1对应的用户T掉!

            skill -9 -t pts/1   这个命令也可以!

        


7.   netstat -ntlup 命令可以查看对应的 协议/端口 /服务  的信息!!

8.linux命令: scp 的使用!
    运行命令安装scp: yum install openssh-clients  (系统会安装三个包)

(1/3): openssh-5.3p1-81.el6_3.x86_64.rpm                 | 236 kB     00:00
(2/3): openssh-clients-5.3p1-81.el6_3.x86_64.rpm         | 358 kB     00:00
(3/3): openssh-server-5.3p1-81.el6_3.x86_64.rpm          | 300 kB     00:00



   scp 本地用户名@IP地址:文件名 1 远程用户名 @IP 地址 : 文件名 2
  [ 本地用户名 @IP 地址:] 可以不输入 , 需要输入远程用户名所对应的密码 .
  可能有用的几个参数 :
  -v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .
    -r 递归的复制整个文件夹
  -P 选择端口 . 注意 -p 已经被 rcp 使用 .
  -4 强行使用 IPV4 地址 .
  -6 强行使用 IPV6 地址

    例: 复制远程服务器的文件到本地
        scp -P 999 192.168.123.67:/home/test.zip /home/
        复制本地的目录到远程服务器
        scp -P 999 -r /home/andy/ 192.168.23.123:/home/

9.ntsysv 工具的使用! 可以在图形界面控制开机启动的服务。 功能也chkconfig一样.

        yum install ntsysv    (直接yum安装!)

        输入命令:ntsysv 就能出现管理界面!

        **可以控制的服务的启动脚本必须的在/etc/rc.d/init.d目录下,不然无法控制此服务.**

10.grep -V 参数的使用!!

-v 参数的意思是不显示匹配到的行 (默认是显示匹配到的行)

cat  abc.txt | grep -v  '^#'       不显示以#号开头的行1

cat abc.txt | grep -v '#'   不显示有#号的行!


11.awk命令的应用

作用:分段提取! (一行为单位来进行分段)

awk -F [分隔符] '条件 动作' /对象

例:  awk -F : '$3==0 {print $1}'  /etc/passwd   如果第三段=0 就打印出第一段!!

例:  awk -F : '{print $1,$3}'  /etc/passwd    打印出第一段和第三段

例:  awk -F : '$1 == "root" {print $1} ' /etc/passwd

# -F : 用:分割passwd每行的内容  ($0指整个行  $1指第一段内容  $2指第二段内容 $n指第n段内容  $NF指每行分段后最后一个区域!) 

# ' 匹配 动作' 单引号里面写的是 匹配命令和打印动作 匹配$3==0 第三段等于0  打印{print $1} 打印第一段内容 ($3 == 0 匹配出行  在打印出这些行的第一段内容 )

grep root /etc/passwd | awk -F : '{print $NF}' |uniq -c       //uniq -c 统计重复的次数!!

12.write 命令的使用!! 

说明 : 通过write指令可传递信息给另一位登入系统的用户,如果接收信息的用户不只登入本地主机一次,你可以指定   接收信息的终端机编号。

格式: write 用户名 ttyname

^C[root@deng shell]# who
root     tty1         2012-12-18 23:28
root     pts/0        2012-12-19 01:49 (192.168.1.138)
deng     pts/1        2012-12-19 01:32 (192.168.1.138)
deng     pts/2        2012-12-19 06:09 (192.168.1.138)
[root@deng shell]# write deng pts/1
fae
abc


每次回车就发送一次信息!!  


13. 查看文件大小的命令!!

    当我们需要查看一个目录里面多个文件大致的大小时,这个命令可以帮助我们!! 

    

****注意目录的大小都是4.0K 它不能统计目录的大小!!**********

du 命令可以查询一个文件的精确大小!!!, 后面如果不写文件将会列出目录里的所有文件的精确大小!!

14.  进程的管理!!

ps命令的 --sort 参数  可以安进程的 pid ppid uid 时间 等来排序!

例:  ps -aux --sort pid

**pid 是子进程号  ppid是父进程号**

ps -uU deng  查看系统用户deng启动的进程信息!!

pstree  查看系统中所有进程的父子关系!!

pgrep ssh  查看ssh的所有进程

pkill httpd  直接关闭httpd服务,不需查找进程号了!

killall -9 top   根据进程的名字杀掉进程

nice --5 /etc/rc.d/init.d/mysqld start  启动服务的时候把mysqld服务的优先级设置为-5.(优先级范围-20~19,-20为最高,默认为0) 

renice 5 /etc/rc.d/init.d/mysqld start   给已启动的mysqld服务添加优先级! 没有第一个'-'  只有级别的正负号.

nohup +执行命令  使进程在用户推出登陆后仍旧继续执行!

ctrl + c 终止进程    ctrl + z 挂起进程  

jobs 查看暂停的和在后台运行的进程, fg 1 把后台执行的进程调到前台   bg 在后台执行进程

15.top内置命令的使用!!

top 命令可以动态查看系统的详细信息

d    指定刷新的间隔

c    显示整个命令行而不仅仅显示命令名

u    查看指定用户的进程

k    终止一个进程

r    重新设置进程的优先级!

16.计划任务!!

at  一次性计划任务


crontab  重复性计划任务! 

crontab -e     添加任务

分钟    小时    天    月    星期    命令/脚本  

0          4      *      *      *    

*/2 (每隔2分钟)       12-14(12到14点)    *(每天)    3-6,9-12(3到6月和9到12月)    0-6(周日到周六)    

关于时间的填写(把知道的具体时间写上,不知道的具体时间写*. 3-5 连续的时间用'-' 不连续的时间用',' )


17.固件时钟和系统时钟!

date可以查看系统的时间!  hwclock 可以查看固件时钟!

一般情况下两个时钟的时间是一样的!!(上图固件时钟是对的)

date -s 2013/1/10  可以修改系统时间的日期!

date -s 12:30  修改系统的时间!

hwclock --hctosys  把系统时间改成和固件时间一样!!

hwclock -w  把固件时间改成和系统时间一样!!


18.curl 命令的学习!

-o/--output 把输出写到该文件中

-m/--max-time <seconds> 设置最大传输时间

-f/--fail        连接失败时不显示http错误

-S/--show-error   显示错误

-s/--silent静音模式。不输出任何东西

-w 参数让 curl 写出表

-G/--get 以get的方式来发送数据

-i  -I/--head 仅返回头部信息,使用HEAD请求

-d <key=value>  向服务器POST表单数据 如curl -d "order=111&count=2" http://www.apple.com/buy

curl -m 600 -d menu=http -d date=$date -d ip=$server_ip -d port=$server_port -d status=$status http://127.0.0.1:8888/interface.php

实例: curl -o /dev/null -s -w "time_connect: %{time_connect}\ntime_starttransfer: %{time_starttransfer}\ntime_total: %{time_total}\n" "http://www.kklinux.com"

实例:curl -o /dev/null -s -w %{http_code} "http://www.kklinux.com"

实例: curl -I http://www.baidu.com/


19. make 常用参数的使用!!

mkdir -p -m 754 /home/userdata/user2     递归创建userdata/user2目录,并设置权限为754.

20 .paste 命令的使用!


21 用php获取加密后的md5!   (好多密码都是用md5加密的,我们可以直接替换md5加密后的一对字符)

[root@cacti ~]# php -r "echo md5('12345');"
827ccb0eea8a706c4c34a16891f84e7b     #这就是md5加密12345后的密码!











转载于:https://my.oschina.net/denglz/blog/94942

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值