linux笔记

Cent OS
区分字母大小写,所有可识别的东西均已文件形式表示
命令行修改基本是临时生效,要永久修改需要修改配置文件
不以后缀名识别文件类型,文件类型是为了便于程序员识别
所有存储设备需要挂载才能使用
带空格的文件和目录在操作时用引号包含起来
129.28.78.146
基础知识

1.配置域名服务器(不一定能成功,可能需要自己配置ip)
(1)修改/etc/resolv.conf,在里面添加:nameserver DNS服务器IP
(2)进入/etc/sysconfig/network-scripts
修改其下的文件ifcfg-ens33中的ONBOOT=yes
(3)重启服务:service network restart

2.连接远程服务器:ssh (username)@(IP)

3.命令都放在*/*bin目录下(目录信息见鸟哥P153)

4.usr = Unix Software Resource

5.清屏:clear 或者 ctrl + l

  1. . 表示当前目录

7.command–help

8.uptime

		连续运行时间          ,          当前登录用户数   负载均衡:过去1,5,15分钟,系统负载值
9.logout(exit)退出登录

文件信息

第一个位置:-表示文件
			l表示链接(软链接文件)
			d表示目录
接下来三个位置:所有者权限(u)
再接下来三个位置:用户组权限(g)
再再接下来三个位置:其他人权限(o)
	权限(r = 4, w = 2, x = 1)
1表示链接数目
第一个root:文件所有者
第二个root:文件所属组
接下来依次是:大小  最后修改时间  文件名

权限后若有‘+’表示有acl权限

常用命令
目录处理命令:
命令格式:命令 [-选项] [参数]
个别命令不遵循此格式
-a(简化) = --all(完整)

df
查看以挂载分区

ls = list
所有用户
-a = --all:显示所有文件(如隐藏文件)
-l = --long:显示完整信息
-h = --human:人性化显示
-d = --directory:显示当前目录信息
-i = i结点(详情见操作系统):显示i结点号(唯一标识一个文件)

mkdir = makedirectories
所有用户
没有选项只能创建一层目录(/a)
-p:递归创建多级目录(/a/b/c)
这里a,b,c目录都不存在
建立多个目录之间用空格隔开

cd = change directory
所有用户
cd … 回到上一级目录

pwd = print working directory
所有用户
显示当前目录绝对路径

rmdir = romve empty directories
所有用户
删除空目录
rmdir (待删除目录)

cp = copy
所有用户
复制文件或者目录,默认复制文件
cp (待复制路径,可多个,用空格隔开) (复制目的地[/修改后的名字])
-r:复制目录
-p:保存被复制目标的信息

mv = move
所有用户
剪切文件、目录,改名
移动操作:mv (待剪切路径,可多个,用空格隔开) (复制目的地[/修改后的名字])
改名操作:mv (待改名对象) (新名字)

rm = remove
所有用户
删除文件或目录,默认删除文件
-r:删除目录
-f:强制删除,不做提示

文件处理命令:
touch
所有用户
创建空文件
touch (path/fileName1 path/fileName2 …)
touch (“path/fileName1”)创建带空格的文件

cat
所有用户
显示文件内容
-n:显示文件行号

tac
所有用户
反向显示文件内容(从尾向头,以行为单位)

more
所有用户
分页显示文件内容
空格、f :翻页
enter:换行
Q、q:退出

less
所有用户
分页显示文件内容(可向上翻页)
less (fileName)
其余操作与more一样
page up/page down 上下翻页
上下箭头上下换行
/ 进行搜索(enter确认),按n接着往下查找

head
所有用户
显示文件前几行
-n:指定行数(默认显示前十行)
head [-n rowCount] (fileName)

tail
所有用户
显示文件后几行
-n:指定行数(默认最后十行)
-f:动态显示文件 末尾内容(文件改变时会实时刷新)

链接命令
ln = link
所有用户
生成链接文件
-s:创建软连接(默认硬链接)
软连接类似于快捷方式,只是用来指向源文件
硬链接会持有原文件的一个副本,但是它们在任一文件在修改时会保持文件之间的 一致性,且不能靠分区,不能用在目录上,硬链接的i结点的值会保持一致,软链 接则不会

ln  [-opt] (源文件地址) (目标地址)

权限管理命令
chmod = change the permissions mode of a file
文件所有者和管理员
改变文件和目录的权限
-R:递归赋予权限
chmod (ugoa) (±=) (rwx) (文件或目录)
chmod mode = 421)(文件或目录)
r = 4, w = 2, x = 1;无权 = 0
u:文件所有者;g:所属组;o:其他人;a:所有人。
eg:chmod g+r,o+w file 多个权限之间用逗号隔开
chmod 777 file

要删除一个文件,必须要有此文件所在的目录的写权限

chown = change file ownership
管理员
改变文件或目录的所有者
chown (用户) (文件或目录)

chgrp = change file group ownergroup
所有用户
改变文件或目录的所属组
chgrp (用户组) (文件或目录)

umask = the user file-creation mask
所有用户
显示、修改文件的缺省权限(默认不能具有执行权限)
-S:以rwx形式显示新建文件缺省权限

文件搜索命令
find
所有用户
文件搜素
find (范围) [option](条件)
-name:按照名字搜索,完全匹配,而非模糊匹配
可对条件使用通配符*?(?匹配单个字符),则为模糊匹配
区分大小写
-iname:不区分大小写
-size:按大小查找文件,单位是物理块(盘块,扇区)
find (范围) -size (opreator大小)
opreator: +(大于), -(小于), =(等于)
-user:按所属用户查找
find (范围) -user(用户名)
-inum:按i结点查找
-amin:访问时间 access
-cmin:文件属性 change
-mmin:文件内容 modify
find (范围) -*min(opreator时间) 单位为分钟
opreator: +(大于), -(小于), =(等于)

	oprion2:-a (and); -o (or); 与其他选项组合使用
	条件2:	-type (f, l, d),或者其他条件
	find (范围) [option](条件1) [oprion2]  (条件2)

find (范围) [option](条件)-execu/-ok 命令 {}  \;
	对查找结果进行操作,-ok执行每次操作前会询问

locate
所有用户
在文件资料库里查找(文件资料库由系统定期维护,不包括/tmp下的文件)
locate (文件名) 模糊匹配
-i:不区分大小写
updatedb:更新文件资料库

which
所有用户
搜索命令所在的目录和别名信息
which (命令)

whereis
所有用户
查找命令所在的目录和帮助文档所在的目录
whereis (命令)

grep
所有用户
在文件中搜索,输出匹配的行
grep [option] (字串) (文件)
-i:不区分大小写
-v:排除字串所在行,表示在行头(字串)
grep -v (字串) (文件)

帮助命令
man = manual(info)
所有用户
获取帮助信息
man [1表示命令,5表示配置文件] (命令或配置文件,不需要加绝对路径)

whatis (命令)
apropos (配置文件)

help
所有用户
获取shell内置命令的帮助信息

用户管理
useradd (username)
root
添加一个用户

passwd (password)
root,用户本身
改变用户密码
passwd (username)

groupadd (groupname)
添加一个组

who
所有用户
查看登录用户信息

登录用户名 登录终端(tty:本地;pts:远程) 登录时间 时间 远程终端ip地址

w
所有用户
查看登录用户详细信息

USER:显示登陆用户帐号名。用户重复登陆,该帐号也会重复出现。
TTY:用户登陆所用的终端。
FROM:显示用户在何处登陆系统。
LOGIN@:是LOGIN AT的意思,表示登陆进入系统的时间。
IDLE:用户空闲时间,从用户上一次任务结束后,开始记时。
JCPU:以终端代号来区分,表示在这段时间内,所有与该终端相关的进程任务所耗费的CPU时间。
PCPU:指WHAT域的任务执行后耗费的CPU时间。
WHAT:表示当前执行的任务。

解压缩命令

gzip = GNU zip
所有用户
压缩文件(不包括目录,不保留原文件)
格式:.gz

gunzip = GNU unzip
所有用户
解压.gz文件(不包括目录,不保留原文件)

tar
所有用户
打包选项(.tar.gz)
-c:打包
-v:显示详细
-f:指定文件名
-z:打包同时压缩

tar [option] [压缩后文件名] (待打包地址)  

解包选项
-x:解包
-v:显示详细
-f:指定解压文件
-z:解压缩

zip
所有用户
压缩文件和目录(保留原文件,格式.zip,Linux与Windows通用)
-r:压缩目录
zip [option] (压缩后的文件名) (文件或目录)

unzip
所有用户
解压.zip

bzip2(gzip加强版)
所有用户
压缩文件(.bz2)
-k:压缩后保留原文件

bunzip2(gunzip加强版)
所有用户
解压文件(.bz2)
-k:解压后保留原文件

(bzip2和bunzip可以与tar同时用,详细见百度)

网络命令
write
所有用户
给其他用户发消息,ctrl+d结束
write (用户名)

wall = write all
所有用户
广播信息(当前在线用户)
wall (信息)

ping
-c:指定次数
ping -c num addr

ifconfig = interface config
root
查看和修改网卡信息(本次开机生效,永久生效需要更改配置文件)
ifconfig (网卡名) (IP)

mail
接收和发送邮件

last
所有用户
查看目前和过去登入系统的用户信息,包括系统重启等信息

lastlog
显示所有用户最后一次登录时间
-u:只查看某一用户
lastlog [-u uid]

traceroute
所有用户
显示到某处经过的路由器地址

netstat = network status
所有用户
查询网络状态信息
-t:TCP协议
-u:UDP协议
-l:监听
-r:路由
-n:显示IP和port

setup(red hat专有)
root
配置网络(永久生效)

mount
所有用户
挂载

umount

关机重启命令

shutdown
-c:取消上一个关机命令
-h:关机
-r:重启
shutdown [option] [时间]

其他关机命令

halt
poweroff
init 0

其他重启命令

reboot
init 6

系统运行级别
(这些信息保存在/etc/inittab里,但是我打开看却没有)
0:关机
1:单用户
2:不完全多用户,不和nfs服务
3:完全多用户
4:未分配
5:图形界面
6:重启
run (num):改变系统运行级别
runlevel:查看系统运行级别

    上一次  现在

VI = VIM
已打开文件的界面:
a 在光标所在字符后插入
A 在光标所在的行后插入
i 在光标所在字符前插入
I 在光标所在行首插入
o 在光标下插入新行
O 在光标上插入新行

定位命令

:set nu 设置行号
:set nonu 取消行号
gg 到第一行
G 到最一行
nG 到第n行
:n 到第n行
$ 移至行尾
0 移至行首

删除命令

x 删除光标所在字符
nx 删除光标所在字符后n个字符
dd 删除光标所在行,ndd删除n行(包括光标所在行)
dG 删除光标所在行到文件末尾的所有内容
D 删除光标所在字符到本行尾的内容
:n,md 删除指定范围的行

复制和粘贴

yy 复制当前行
nyy 复制当前行及以下n行
dd 剪切当前行
ndd 复制当前行及以下n行
p 粘贴在当前光标所行行下
P 粘贴在当前光标所行行上

替换和取消命令

r 取代光标所在处的字符
R 从光标所在处开始替换字符,按ESC结束
u 取消上一步操作

搜索和替换命令

/字符串 搜索指定字符串(n查找下一个),忽略大小写: :set ic
n
用到时在找资料

保存和退出命令

:w(write) 保存修改
:wq 保存修改并退出
:w newfile 另存为
ZZ 保存修该并退出
:q! 不修改并退出
:wq! 保存修改并退出(!表示强制修改,root及owner可用)

其他技巧

:r file 将文件中的内容导入到光标所在位置
:!(命令) 执行一条命令
:r !( 命令) 将命令执行结果导入到光标所在位置
:map 自定义快捷键
:n,ms/^/字符[/g] 在n到m行首添加字符,^表示行首,[/g]不提示确认
ab s1 s2 在编辑时输入的s1将用s2替换
可以把一些设置写到.vimrc文件中并放到用户的目录中,将永久生效

软件安装与卸载
rpm
包全名:httpd-2.2.3-29.el5.i386.rpm
httpd 软件报名
2.2.3 软件版本
29 发布次数
el5 适合的linux平台
i386 适合的硬件平台
rpm rpm包扩展名(方便程序员)
RPM包依耐性
树形依赖:a->b->c(先安装a,然后b,以此类推;先卸载a,然后b,以此类推)
环形依赖:a->b->c->a(a,b,c同时安装
模块依赖:查询网站:www.rpmfind.net( 依赖模块.so.(数字) )

RPM命令规则
包全名:操作的包是没有安装的软件包时,使用包全名,而且要注意路径
包名:操作已安装的软件包,使用包名,时搜索/var/lib/rpm/中的数据库

RPM安装
rpm [option(hiv)] (包全名)
-i = --install:安装
-v = --verbose:显示详细信息
-h = --hash:显示进度
–nodeps:不检测依赖

-U = --upgrade:升级(替换掉i)

RPM卸载
rpm -e 包名
-e = --erase :卸载
–nodeps:不检测依赖

RPM查询
rpm [option] (包名|系统文件名)
-q = --query:查询包是否安装
-a = --all:查询所有已安装的rpm包
-i = --information:查询详细信息
-p = packge:查询未安装的包的信息
-l = --list:查询文件安装的位置
-f = --file:查询文件属于哪个软件包
-R = --requires:查询软件包的依耐性

其中大部分选项要和q连用

RPM包校验
rpm -V 已安装的包名
-V:校验指定RPM包中的文件

RPM包默认安装位置(大部分情况)

/etc/ 配置文件安装目录
/usr/bin/ 可执行的命令安装目录
/usr/lib/ 程序所使用的函数库保存位置
/usr/share/doc/ 基本的软件使用手册保存位置
/usr/share/man 帮助文件保存位置

源码包建议安装在/usr/local/下:
编译前准备
./configure
定义需要的功能选项
检测系统环境是否符合安装要求
把定义号的功能选项和检测系统环境的信息写入Makefile文件,用于后续的 准备
./configure [option(–prefix=path)]
如果此步报错,使用make clean清除产生的临时文件
make
make install
源码包的删除是直接删除安装目录,且无法用RPM查询到源码包安装的软件

安装位置不同带来的影响(redhat系列的linux)
RPM包安装(yum同)的服务可以使用系统服务管理命令(service)来管理,RPM 包启动的命令文件一般在/etc/rc.d/init.d/下:
service (服务名) (start,restart,stop);
源码包用绝对路径启动

脚本安装包
并非独立的安装包类型,把安装的过程写成了自动安装的脚本,一般以.sh标识

webmin(解压后执行set.sh,是一个基于web的远程管理)

用户与用户组
用户信息文件
用户信息文件:/etc/passwd
在linux中主要是通过用户配置文件来查看和修改用户信息

account : password : UID : GID : GECOS : directory : shell
用户名称(详细见鸟哥)

daemon 用户名称
password 密码标志 x标识有密码
UID 用户ID 0:超级用户;1-499:系统用户(伪用户);500-65535:普通用户。用户身份权限的识别由此标志位确定!
GID 用户初始组

用户切换
su (= select user?)
su (user)
-:切换用户的环境变量,最好加这个选项(env查看环境变量)
-c:不切换用户,而只是用该用户的身份执行一条命令
su - (sb) -c “command”

ACL权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值