21sed的使用
sed‘s/XXX/YYY/’file将XXX替换为YYY
sed-e‘s/XXX/YYY/’-e‘s/XXX/YYY/’file多个替换
sed-f1.txtfile用1.txt里面的代码来执行替换
22关于进程PS
常用:
psaux(a:
所有终端进程u:
进程所有者x:
后台进程f:
打印父子进程)
-o选项:
Psaxo“pid,comm,%cpu,state,tty,user”可打印自己想看的信息
其他用法:
pgrep–Uroot-Gstudent找某个用户某个组的进程
pidofbash(进程名)通过进程名查找进程id
23kill的用法:
一般:
kill-9(-15等等)[信令]pid(通过pid)
通过名字:
killallcomm(进程名)(可用来杀死恶意进程)
通过表达式:
kill-9pattern(表达式)
24一些通用变量:
PS1:
显示bash提示符
PATH:
查找可执行程序的目录
EDITOR:
默认的文本编辑器
HISTFILESIZE:
bash历史记录中的命令数量
HOME:
用户主目录
EUID:
用户的有效用户ID
几个重要的目录夹:
用于设置环境变量,运行命令:
/etc/profile(全局)~/.bash_profile(用户)
用于设置本地变量,定义别名:
/etc/bashrc(全局)~/.bashrc(用户)
25find用法:
格式:
find[目录][条件]
示例:
find/-namezuozhang.sh
find/-userroot-groupstudent
find/-userroot–not-groupstudent
find/-uid500–o-userjoe
find/-nouser
find-perm755
find-perm+222(any,or满足一个即可)
find-perm-222(every,and需全部满足)
find/etc–size+200M(大于200M小于用减号“-”)
find/-atime5(访问时间)–ctime6(数据或属性被修改时间)
-mtime7(数据被修改时间)【默认均以天为单位】
还有–cmin-amin-mmin以分钟为单位
find-size+29M–execrm{}\;【说明:
{}代表查找到的内容】
26wget用法
wgetftp:
//172.24.200.254/pub/Server/zsh201.rpm–O/tmp/zuozhang/zsh201.rpm-O指定下载目录夹,且目录夹最后要写上下载的文件名
-r:
递归
-c:
续传
27远程ssh
生成公钥私钥:
ssh-keygen
发送公钥:
ssh-copy-id-i~/.ssh/id_rsa.pub172.24.200.200(对方IP)发送完之后无须再输入密码
A发送给B之后,A连B不需要密码。
ssh传输文件:
scp本地文件远程文件夹
scp远程文件本地路径
例:
scp/etc/passwd172.24.20.20:
~/Dsktop
ssh执行远程图形程序:
sshX72.24.200.251“gnome-terminal“
28~/.exrc
该目录中可以添加vim的设置
比如:
setnumber
第二部分(133)
*1Linux系统初始化全过程
BIOS硬件检测MBR引导装置grub文件引导kernel内核,initrdInittab(/etc/inittab)
/etc/rc.d/rc.sysinit(初始化不同运行级别相同的启动项)/etc/rc.d/rc3.d/服务(启动某运
行级别下某些服务和关掉某些服务)/etc/rc.d/rc.local(初始化本地服务等)
注:
当看到红色的RedHat时按下大写I可进入交互式的服务启动,可用来排错
grub启动菜单加密 ,当进入单用户模式时,需要使用此密码才能进入单用户模式,进行密码修改等操作。
读入read !
grub‐md5‐crypt (此时需要盲打密码,enter后再输入一遍,无任何显示,即能读进去)
===============================================
password ‐‐md5 $1$Ezq/A0$WLOb/F1DAcmxT9iUbMC4e.
title Red Hat Enterprise Linux Server (2.6.18‐164.el5)
root (hd0,0)
kernel /vmlinuz‐2.6.18‐164.el5 ro root
===============================================
2当根被卸载掉时:
当开机进不去系统时,先进入救援模式,进入伪系统,先找到真根。
。
。
。
。
然后将真根挂载到/mnt/sysimage下
然后按一下步骤:
mount/dev/hda1/mnt/sysimage/boot将引导分区挂到boot下
chroot/mnt/sysimage
rpm–ivh内核--force安装内核
grub-install--no-floppy/dev/had创建grub文件夹
vim/boot/grub/grub.conf手工编写grub文件
vim/etc/fstab修改fstab中内容
/boot/grub/grub.conf文件内容如下:
default=0
timeout=9
titlekernel-2.6.18-164.el5
kernel(hd0,0)/vmlinuz-kernel-2.6.18-164.el5ronoapic
initrd(hd0,0)/initrd-2.6.18-164.el5.img
3服务的控制:
chkconfig--level3bluetoothoff将运行级别3下的蓝牙功能关闭
chkconfigBluetoothon将蓝牙功能开启
4rpm的安装
参数说明:
-i:
安装(install)
-e:
移除(erase)
-v:
显示信息
-h:
显示进度条(########。
。
。
。
。
。
。
。
100%)
--force:
强制
例:
rpm-ivh--forceftp:
//172.24.200.254/pub/Server/*vim*
*注意:
配置文件在用rpm安装时不会被覆盖,除非该配置文件不存在
rpm的查询:
参数:
-qa:
列出所有已安装的包
-qf(后接文件名):
显示文件所属于的包名
-qi(接包名):
包的信息
-ql(包名):
列出包中的文件
例:
rpm–qa
rpm-qippackage_file.i386.rpm(未安装的包在开关后加个p即可)
rpm包的检验:
rpm-V包名(若无信息输出则包未改动,则说明该包是安全的)
rpm--import/etc/pki/rem-gpg/*导入公钥
rpm-K***.i386.rpm
5screen的使用
在联机操作时,你若担心网络会突然断开则可使用该软件
使用步骤:
(前提是安装了screen)
screen-Szuozhang(任意名字)连接断开再连接screen-x(回到上次操作界面)
6yum的操作(-y开关:
不交互,直接yes)
yuminstall名字
yumremove名字
yumerase名字
yumgrouplist列出仓库中已安装和可安装的清单
yumgroupinstall名字
仓库的配置:
/etc/yum.repos.d/zz.repo(必须以.repo结尾)
[Server]
name=zuozhangsuibianxie
baseurl=ftp:
//172.24.200.254/pub/Server(本地:
baseurl=file:
//路径)
enabled=1
gpgcheck=0
7内核模块的安装
先lsmod可查看已安装的模块
modprobe-l查看所有模块
modprobexor安装xor模块(本次有效)
modprobe–rxor卸载xor模块
若想安装完模块,以后开机有效,参照如下步骤(手工编辑):
cp/boot/initrd…/mnt/zuozhang
gunzip/mnt/zuozhang/initrd…-S.img解压缩
cpio–i
modprobe–l|grep模块名字
cp$(modprobel|grep模块名)/mnt/zuozhang/lib
chmod600/mnt/zuozhang/lib/该模块。
。
。
赋予写权限
vim/mnt/zuozhang/init编辑init文件,加载模块
cd/mnt/zuozhang
find./>../1.txt生成1.txt文件
cpio–Hnewc–o<../1.txt>initrd.PAE.zuozhang将1.txt打包成initrd.PAE.zuozhang
gzip-9-S.imginitrd.PAE.zuozhang最大化压缩成.img格式
vim/boot/grub/grub.conf将内核改为自己编写的内核
此外,您还可使用名令的方式来添加模块到内核
格式:
Mkinitrd--with=模块名/boot/initrd-$(uname–r).img$(uname-r)
例:
Mkinitrd--with=zhs【模块名】--with=zuozhang/boot/initrd-2.6.18.img2.6.18
8/proc中的内核配置
/proc/sys/net/ipv4/ip_forward(默认为0,改为1时不同网段才能互访)
/proc/sys/net/ipv4/icmp_echo_ignore_all(默认:
0若为1则ping不回复别人则ping不通)
/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts(默认:
0)
/proc/sys/net/ipv4/tcp_synack_retries(默认:
5次回复时无反应最多回复5次)
。
。
。
。
。
。
可在/etc/sysctl.conf中编辑,引导时自动被加载
sysctl-a列出当前所有的设置
sysctl“……..=1”即使生效
sysctl-p从sysctl.conf读取配置从新设置内核
动态设置:
sysctl-wnet.ipv4.ip_forward=1
9查看硬件设备
lspci列出PCI设备
lsusb列出usb总线的设备
10网络时间协议
编辑/etc/ntp.conf
service172.24.200.23(时间23同步)
restrict172.24.200.23(拒绝23来和你同步)
11系统日志
facility:
auth,authpriv,cron,daemon,kern,lpr,mail,mark,news,syslog,user,uucp,local0-local7
priority(级别):
debug,info,notice,waring(warn),error(err),critical,alert,emerg
kern.!
errerr及其以上的都不收
kern.!
=err除了err的不收
kern.*(kern.debug)所有的都收
错误模拟命令:
logger–pauthpriv.info@172.24.200.10
日志的监控:
(将A:
172.24.200.111的日志传到B:
172.24.200.222上)
A端:
vim/etc/syslog.conf(将内容发给对方IP:
。
。
。
。
。
。
@172.24.200.222)
B端:
vim/etc/syslog.conf(设置将信息发到哪个文件下)
vim/etc/sysconfig/syslog将其中设置成SYSLOGD_OPTIONS=“-mo–r“接收远程的信息
12VNC:
虚拟网络计算
服务器端:
(可在/etc/sysconfig/vncserver中设置角色)
vncserver开启一个vncserver
/etc/sysconfig/vncserver去掉-local
~/.vnc/xstartup加上gnome-session&注释掉tmp&
vncpasswd设置vnc密码
/etc/init.d/vncserverrestart服务重启
客户端:
vncviewer172.24.200.22:
1连接
13cron计划任务
crontab-e编辑任务
crontab-l列出任务
主计划任务在/etc/crontab下
/etc/cron.hourly
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly
额外的计划任务:
/etc/cron.d/目录
timerun-parts/etc/cron.hourly计算cron.hourly执行所需要的时间
anacron系统
运行因关机或死机等原因面没有运行计划任务的任务系统
配置文件:
/etc/anacrontab
字段1:
如果任务在....这些天没有运行
字段2:
在重启后等待....分钟再运行
字段3:
任务类别
字段4:
运行的任务
1 65 cron.daily run‐parts /etc/cron.daily
7 70 cron.weekly run‐parts /etc/cron.weekly
30 75 cron.monthly run‐parts /etc/cron.monthly
将用户名加入以下两个文件中,则该用户不能执行或能执行计划任务,当又冲突时,以cron.allow为准
/etc/cron.allow
/etc/cron.deny
14手工添加用户
步骤:
(如下)
vim/etc/passwd手工添加一个用户
vim/etc/group手工添加一个组
mkdir/home/user创建主目录
chownuser:
group/home/user改变主目录的属主
chmod700/home/user改变权限
cp/etc/skel/*/home/user
vim/etc/shadow修改密码文件
批量添加用户:
vim1.txt(1.txt中是passwd的格式)
newusers<1.txt
cp/etc/skel/*/home/username
15网络用户
authconfig-tui配置domain和servers
getentpasswd查看有哪些可登陆的用户
showmount–e172.24.20.20查看本PC能否访问
vim/etc/auto.master
vim/etc/auto.fushu主目录自动挂载设置
servicesautofsrestart重启自动挂载服务
登陆即可!
16sudo为用户设置权限
vim/etc/sudoers编辑该文件,即可设置权限
用户执行时,需sudo/sbin/ifconfig加sudo且要写路径
17文件共享
步骤如下:
mkdir/share创建文件夹
chownusergroup/share更改属主
chmodg+w/share组增加写权限,因为root创建的文件夹g没有w权限
chmodg+s/share增加特殊位,组成员创建的文件属于该文件夹属组
chmodo+t/share谁创建谁才能删除,防止他人删除
cd/share切换进来即可创建文件
小s表示既有执行权限又有特殊位,大S表示只有特殊位。
小t和大T同理。
18访问控制列表
用于同一个目录夹给不同用户的权限
getfaclfile|directory查看权限
setfacl–mu:
username:
rwxfile为某用户设置权限
setfacl–mg:
groupname:
rwxfile为某组用户设置权限
setfacl–md:
u:
username:
rwxfile加了个d权限可递归
setfacl–xu:
usernamefile删除某用户的权限
setfcal–bfile全部删除
19文件系统管理
磁盘查看:
fdisk–l
磁盘管理:
fdisk/dev/had
格式化文件系统