linux 学习(1)

初入 linux-centos 6.5(一)


image

如果你不会飞那就跑;如果你不能跑,那就走;如果你走不动就爬;无论你做什么你必须保持前行。————马丁路德金

0x00前言


Linux承载的东西太多,它鼓励大家通过代码分享智慧,它是一个开放的、自由的平台的核心力量,Linux让你参与进来。
承载了当初很多“黑客”的精神吧,我已经忘了我为了什么装linux了。

0x01 网络


网络,已然成为当代必不可少的了。一个操作系统没网,什么都干不了吧。

我安装的centos6.5.下面开始配置网络NAT模式。NAT转换可以有效的保护此主机,别人找不到此主机,因为NAT转换。

连接XSHELL ,假装没有配置ip。

首先,临时配置IP不做描述,因为大多是工作网络,不会一直变来变去的。
开始开机自启配置IP
编辑所在文件代码:

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

image

上图中根据自己虚拟机编辑选项中虚拟网络编辑器的信息配置 (详情如下图)

image
在配置DNS服务器

vim /etc/resolv.conf

image
或者输入

echo “nameserver 114.114.114.114” > /etc/insolv.conf

查看路由是否有默认路由

route

image
如果没有就输入命令添加默认路由

route add 0.0.0.0 gw 192.168.25.2

确认关闭防火墙或者防火墙放行,windows 在右下角网络中,点击打开网络和共享中心,左下方侧边就有防火墙设置。
在linux中,chkconfig (查看开机自启等项)

chkconfig |grep iptables

image

关闭某服务

service 服务 restart/start/stop

某服务关闭开机自启

chkconfig –level 345 iptable off

然后就重启网络服务

service network restart

网络就设置好了。一般就尝试ping外网成功。


0x02一些基础操作


基础操作就像在windows中的打开文件后编辑保存,然后复制一份移动到某个目录,删除原文件,改个文件名字,下载安装工具搭建环境等

查看当前目录

pwd

显示当前文件和文件夹

ls
ls -al 显示权限

进入某个目录,按Tab会弹出提示,在参照补全输入

cd 目录
cd / 进入系统目录
cd ~ 进入家目录
cd .. 或者../ 返回上级目录

image

创建文件

创建一个空目录文件夹test,进入test并创建一个空白txt文档

mkdir test
touch test.txt

image
删除一个test目录,rmdir 只能删除空的。

rm -rf test/

image

vim

编辑test.txt

vim test.txt

vim 常用的按键功能:

i 插入,开始编辑

vim  非编辑模式下(按esc):

o   向下另开一行编辑 ,O 向上另开一行编辑

x   删除光标处的字符

dd   连续按两下d 会删除一行

u   撤销上次操作

v+y+o+esc+p   复制粘贴到下一行,按v后方向键控制选择的内容,y确定,o下开一行编辑,esc返回非编辑模式,p粘贴

/sss  搜索sss

:+数字  到输入数字的那一行 , :$ 到最后一行 , :0 起始位置

w/b   移动到下/上个字符的开头, e 移动到下个字符的末尾, H 当前屏幕显示起始行头位置, L 当前屏幕显示末尾行头位置

字符替换:

:s/vivian/sky/   替换当前行第一个 vivian 为 sky
:s/vivian/sky/g   替换当前行所有 vivian 为 sky
:n,\$s/vivian/sky/   替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g   替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)
:%s/vivian/sky/  (等同于 >:g/vivian/s//sky/)替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g  (等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

查看文件

vim 也可查看文件

head [参数]… [文件]…
参数:

-q   隐藏文件名
-v   显示文件名
-c<字节>   显示字节数
-n<行数>   显示的行数
head -f   默认监控文件前十行

image

tail

[ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]

-f   该参数用于监视File文件增长。
-c    Number 从 Number 字节位置读取指定文件
-n   Number 从 Number 行位置读取指定文件。
-m   Number 从 Number 多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题。
-b   Number 从 Number 表示的512字节块位置读取指定文件。
-k   Number 从 Number 表示的1KB块位置读取指定文件。
File   指定操作的目标文件名称

上述命令中,都涉及到number,假设不指定,默认显示10行。Number前面可使用正负号,表示该偏移从顶部还是从尾部開始计算。
tail可运行文件一般在/usr/bin/以下。

sed

其他功能暂且不,在这只写查看功能。
显示某行

[root@localhost ruby] # sed -n ‘1p’ ab       #显示第一行
[root@localhost ruby] # sed -n ‘\$p’ ab      #显示最后一行
[root@localhost ruby] # sed -n ‘1,2p’ ab    #显示1-2行
[root@localhost ruby] # sed -n ‘2,\$p’ ab    #显示2-$行

cat

cat主要有三大功能:

1.一次显示整个文件。  \$ cat filename
2.从键盘创建一个文件。  \$ cat > filename 只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件。   \$cat file1 file2 > file

参数:

-n 或 –number   由 1 开始对所有输出的行数编号
-b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 –squeeze-blank   当遇到有连续两行以上的空白行,就代换为一行的空白行

more

more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。
命令参数:

+n   从笫n行开始显示
-n   定义屏幕大小为n行
+/pattern   在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
-c    从顶部清屏,然后显示
-d     提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
-l     忽略Ctrl+l(换页)字符
-p    通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
-s     把连续的多个空行显示为一行
-u     把文件内容中的下画线去掉

DNS

DNS的查询指令:host、nslookup、dig

host

host -a www.baidu.com

image

nslookup

nslookup www.baiud.com

image

dig

dig www.baidu.com

image

ping

ping 本地DNS,检查DNS是否能正常解析
ping 远程ip, 检查是否网络连接正常。

日志相关

管理员经常查看日志是很重要的。可结合grep/awk/sed查看

finger

为系统管理员提供知道某个时候到底有多少用户在使用这台Linux主机。
finger [选项] [使用者] [用户@主机]

命令中各选项的含义如下:

-s 显示用户的注册名、实际姓名、终端名称、写状态、停滞时间、登录时间等信息。
-l 除了用-s选项显示的信息外,还显示用户主目录、登录shell、邮件状态等信息,以及用户主目录下的.plan、.project和.forward文件的内容。
-p 除了不显示.plan文件和.project文件以外,与-l选项相同。

image

 last

该命令用来列出目前与过去登录系统的用户相关信息。指令英文原义:show listing of last logged in users
执行last指令时,它会读取位于/var/log目录下名称为wtmp的文件,并把该给文件的内容记录的登录系统的用户名单全部显示出来。
image
参数说明:
  -a  把从何处登入系统的主机名称或IP地址,显示在最后一行。
  -d  将IP地址转换成主机名称。
  -f <记录文件>  指定记录文件,默认是显示/var/log目录下的wtmp文件的记录,但/var/log目录下得btmp能显示的内容更丰富,可以显示远程登录,例如ssh登录 ,包括失败的登录请求。
  -n <显示列数>或-<显示列数>  设置列出名单的显示列数。
  -R  不显示登入系统的主机名称或IP地址。
  -x  显示系统关机,重新开机,以及执行等级的改变等信息。
-i 显示特定ip登录的情况

软件安装

安装其他软件非常重要。
几种软件安装方法:

yum

yum search xxx 搜索xxx资源包信息
yum install xxx 安装xxx
yum update xxx 更新xxx
yum list installed yum已安装列表
yum remove xxx 卸载xxx

rpm

1.安装软件:执行rpm -ivh rpm包名, #rpm -ivh apache-1.3.6.i386.rpm
2.升级软件:执行rpm -Uvh rpm包名。
3.反安装:执行rpm -e rpm包名。
4.查询软件包的详细信息:执行rpm -qpi rpm包名
5.查询某个文件是属于那个rpm包的:执行rpm -qf rpm包名
6.查该软件包会向系统里面写入哪些文件:执行 rpm -qpl rpm包名

查看rpm安装的所有软件

rpm -qa

卸载

rpm -e

rpm升级某个安装包

rpm -Uvh

源码编译下载

一般是下载包之后tar解压
tar 可解压 zip gzip bzip
tar -zxvf ssss.gz

进入解压后的文件查看readme。根据是否需要./configure
再make make install ,过程中报错缺少什么模块就安装什么模块,要先清楚缓存,再安装顺序安装。

结束语

linux 需要学习的地方还有很多,慢慢把以前写的整理之后发出来。

题外话:如果你对本站文章字体有任何不适,请告知我,我会回复你,字体请让浏览器调到对眼睛舒适的大小;默认不允许转载,除非转载注明出处。