find delete centos centos查找文件夹命令
centos java进程 怎么被启动的
1.查进程
ps命令查找与进程相关的PID号:
ps a显示现行终端机下的所有程序,包括其他用户的程序。
ps-A显示所有程序。
ps c列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps-e此参数的效果和指定"A"参数相同。
ps e列出程序时,显示每个程序所使用的环境变量。
ps f用ASCII字符显示树状结构,表达程序间的相互关系。
ps-H显示树状结构,表示程序间的相互关系。
ps-N显示所有的程序,除了执行ps指令终端机下的程序之外。
ps s采用程序信号的格式显示程序状况。
ps S列出程序时,包括已中断的子程序资料。
ps-t<终端机编号>指定终端机编号,并列出属于该终端机的程序的状况。
ps u以用户为主的格式来显示程序状况。
ps x显示所有程序,不以终端机来区分。
最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。
ps aux| grep program_filter_word,ps-ef|grep tomcat
ps-ef|grep java|grep-v grep显示出所有的java进程,去处掉当前的grep进程。
2.杀进程
使用kill命令结束进程:kill xxx
常用:kill-9 324
Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall-9 NAME
3.进入到进程的执行文件所在的路径下,执行文件./文件名
附:
这是本人花了两天时间整理得来的,一些最常用的地球人都知道的命令就省去啦!最后提供pdf手册下载
1.更改档案拥有者
命令: chown [-cfhvR] [--help] [--version] user[:group] file...
功能:更改文件或者文件夹的拥有者
参数格式:
user:新的档案拥有者的使用者 IDgroup:新的档案拥有者的使用者群体(group)
-c:若该档案拥有者确实已经更改,才显示其更改动作
-f:若该档案拥有者无法被更改也不要显示错误讯息
-h:只对于连结(link)进行变更,而非该 link真正指向的档案
-v:显示拥有者变更的详细资料
-R:对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)
例如:chown-R oracle:oinstall/oracle/u01/app/oracle
更改目录拥有者为oracle
2.修改权限
命令:chmod(change mode)
功能:改变文件的读写和执行权限。有符号法和八进制数字法。
选项:(1)符号法:
命令格式:chmod{u|g|o|a}{+|-|=}{r|w|x} filename
u(user)表示用户本人。
g(group)表示同组用户。
o(oher)表示其他用户。
a(all)表示所有用户。
+用于给予指定用户的许可权限。
-用于取消指定用户的许可权限。
=将所许可的权限赋给文件。
r(read)读许可,表示可以拷贝该文件或目录的内容。
w(write)写许可,表示可以修改该文件或目录的内容。
x(execute)执行许可,表示可以执行该文件或进入目录。
(2)八进制数字法:
命令格式:chmod abc file
其中a,b,c各为一个八进制数字,分别表示User、Group、及Other的权限。
4(100)表示可读。
2(010)表示可写。
1(001)表示可执行。
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。
例如:# chmod a+rx filename
让所有用户可以读和执行文件filename。
# chmod go-rx filename
取消同组和其他用户的读和执行文件filename的权限。
# chmod 741 filename
让本人可读写执行、同组用户可读、其他用户可执行文件filename。
# chmod-R 755/home/oracle
递归更改目录权限,本人可读写执行、同组用户可读可执行、其他用户可读可执行
3.修改文件日期
命令:touch
格式:touch filenae
功能:改变文件的日期,不对文件的内容做改动,若文件不存在则建立新文件。
例如:% touch file
4.链接文件
命令:ln(link)
格式:ln [option] filename linkname
ln [option] directory pathname
功能:为文件或目录建立一个链。其中,filename和directory是源文件名和
源目录名;linkname和pathname分别表示与源文件或源目录名相链接的
文件或目录。
选项:-s为文件或目录建立符号链接。不加-s表示为文件或目录建立硬链接
注释:链接的目地在于,对一个文件或目录赋予两个以上的名字,使其可以出
现在不同的目录中,既可以使文件或目录共享,又可以节省磁盘空间。
例如:% ln-s filename linkname
5.显示日期
命令:date
例如:% date
6.显示日历
命令:cal(calendar)
格式:cal [month] year
功能:显示某年内指定的日历
例如:% cal 1998
7.显示文件头部
命令:head
格式:head [option] filename
功能:显示文件的头部
选项:缺省显示文件的头10行。
-i显示文件的开始 i行。
例如:% head filename
8.显示文件尾部
命令:tail
格式:tail [option] filename
功能:显示文件的尾部
选项:缺省显示文件的末10行。
-i显示文件最后 i行。
+i从文件的第i行开始显示。
例如:% tail filename
9.显示用户标识
命令:id
格式:id [option] [user]
功能:显示用户标识及用户所属的所有组。
选项:-a显示用户名、用户标识及用户所属的所有组
注释:
例如:% id username
10.查看当前登录的用户
命令:users
11.显示都谁登录到机器上
命令:who
格式:who
功能:显示当前正在系统中的所有用户名字,使用终端设备号,注册时间。
例如:% who
12.显示当前终端上的用户名
命令:whoami
格式:whoami
功能:显示出当前终端上使用的用户。
例如:% whoami
13.寻找文件
命令:find
格式:find pathname [option] expression
功能:在所给的路经名下寻找符合表达式相匹配的文件。
选项:-name表示文件名
-user用户名,选取该用户所属的文件
-size按大小查找,以block为单位,一个block是512B
-mtime n按最后一次修改时间查找,选取n天内被修改的文件
-perm按权限查找
-type按文件类型查找
-atime按最后一次访问时间查找
例如:% find./-name'*abc*'-print
14.搜索文件中匹配符
命令:grep
格式:grep [option] pattern filenames
功能:逐行搜索所指定的文件或标准输入,并显示匹配模式的每一行。
选项:-i匹配时忽略大小写
-v找出模式失配的行
例如:% grep-i'java*'./test/run.sh
15.统计文件字数
命令:wc [option] filename
功能:统计文件中的文件行数、字数和字符数。
选项:-l统计文件的行数
-w统计文件的单词数
-c统计文件的字符数
注释:若缺省文件名则指标准输入
例如:% wc-c./test/run.sh
16.显示磁盘空间
命令:df(disk free)
格式:df [option]
功能:显示磁盘空间的使用情况,包括文件系统安装的目录名、块设备名、总
字节数、已用字节数、剩余字节数占用百分比。
选项:
-a:显示全部的档案系统和各分割区的磁盘使用情形
-i:显示i-nodes的使用量
-k:大小用k来表示(默认值)
-t:显示某一个档案系统的所有分割区磁盘使用量
-x:显示不是某一个档案系统的所有分割区磁盘使用量
-T:显示每个分割区所属的档案系统名称
-h:表示使用「Human-readable」的输出,也就是在档案系统大小使用 GB、MB等易读的格式。
注释:
例如:% df-hi
17.查询档案或目录的磁盘使用空间
命令:du(disk usage)
格式:du [option] [filename]
功能:以指定的目录下的子目录为单位,显示每个目录内所有档案所占用的磁盘空间大小
选项:
-a:显示全部目录和其次目录下的每个档案所占的磁盘空间
-b:大小用bytes来表示(默认值为k bytes)
-c:最后再加上总计(默认值)
-s:只显示各档案大小的总合
-x:只计算同属同一个档案系统的档案
-L:计算所有的档案大小
-h:表示档案系统大小使用 GB、MB等易读的格式。
例如:% du-a
% du-sh/etc只显示该目录的总合
% du/etc| sort-nr| more统计结果用sort指令进行排序,
sort的参数-nr表示要以数字排序法进行反向排序。
18.显示进程
命令:ps
格式:ps [option]
功能:显示系统中进程的信息。包括进程ID、控制进程终端、执行时间和命令。
选项:
-a显示所有进程信息
-U uidlist列出这个用户的所有进程
-e显示当前运行的每一个进程信息
-f显示一个完整的列表
-x显示包括没有终端控制的进程状况。
注释:
例如:% ps-ef
% ps-aux然后再利用一个管道符号导向到grep去查找特定的进程,然后再对特定的进程进行操作。
19.终止进程
命令:kill
格式:kill [option] pid
功能:向指定的进程送信号或终止进程。kill指令的用途是送一个signal给某一个process,
因为大部份送的都是用来杀掉 process的 SIGKILL或 SIGHUP,因此称为 kill
选项:-9强行终止进程
注释:pid标示进程号,可由ps命令得到。
例如:% kill-9 pid
你也可以用 kill-l来察看可代替 signal号码的数目字。kill的详细情形请参阅 man kill。
20.查看自己的IP地址
命令:ifconfig
格式:ifconfig-a
21.查看路由表
命令:netstat
格式:netstat-rn
22.远程登录
命令:telnet
格式:telnet hostname
23.文件传输
命令:ftp(file transfer program)
格式:ftp hostname
功能:网络文件传输及远程操作。
选项:ftp命令:
cd [dirname]进入远程机的目录
lcd [dirname]设置本地机的目录
dir/ls显示远程的目录文件
bin以二进制方式进行传输
asc以文本文件方式进行传输
get/mget从远程机取一个或多个文件
put/mput向远程机送一个或多个文件
prompt打开或关闭多个文件传送时的交互提示
close关闭与远程机的连接
quit退出ftp
!/exit ftp登陆状态下,!表示暂时退出ftp状态回到本地目录,exit表示返回ftp状态
注释:
例如:% ftp hostname
24.查看自己的电子邮件
命令:mailx
格式:mailx
选项:
delete删除
next下一个
quit退出
reply回复
25.回忆命令
命令:history
格式:history
功能:帮助用户回忆执行过的命令。
选项:
注释:
例如:% history
26.网上对话
命令:talk
格式:talk username
功能:在网上与另一用户进行对话。
选项:
注释:对话时系统把终端分为上下两部分,上半部显示自己键入信息,下半部
显示对方用户键入的信息。键入delete或Ctrl+C则结束对话。
例如:% talk username
27.允许或拒绝接受信息
命令:mesg(message)
格式:mesg [n/y]
功能:允许或拒绝其它用户向自己所用的终端发送信息。
选项:n拒绝其它用户向自己所用的终端写信息
y允许其它用户向自己所用的终端写信息(缺省值)
注释:
例如:% mesg n
28.给其他用户写信息
命令:write
格式:write username [ttyname]
功能:给其他用户的终端写信息。
选项:
注释:若对方没有拒绝,两用户可进行交谈,键入EOF或Ctrl+C则结束对话。
例如:write username
29.创建、修改、删除用户和群组
a.创建群组:
例如: groupadd oinstall创建群组名为oinstall的组
groupadd-g 344 dba
创建组号是344的组,此时在/etc/passwd文件中产生一个组ID(GID)是344的项目。
b.修改群组:
groupmod:该命令用于改变用户组帐号的属性
groupmod–g新的GID用户组帐号名
groupmod–n新组名原组名:此命令由于改变用户组的名称
c.删除群组:
groupdel组名:该命令用于删除指定的组帐号
d.新建用户:
命令: useradd [-d home] [-s shell] [-c comment] [-m [-k template]]
[-f inactive] [-e expire ] [-p passwd] [-r] name
主要参数
-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的启始目录。
-D:变更预设值。
-e:指定账号的有效期限,缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。
-g:指定用户所属的群组。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-s:指定用户登入后所使用的shell。
-u:指定用户ID号。
举例:# useradd-g oinstall-G dba oracle创建Oracle用户
e.删除用户
命令: userdel用户名
删除指定的用户帐号
userdel–r用户名(userdel用户名;rm用户名):删除指定的用户帐号及宿主目录
例:#useradd-g root kkk//把kkk用户加入root组里
f.修改用户
命令: usermod
修改已有用户的信息
usermod–l旧用户名新用户名:修改用户名
usermod–L用户名:用于锁定指定用户账号,使其不能登陆系统
usermod–U用户名:对锁定的用户帐号进行解锁
passwd–d用户名:使帐号无口令,即用户不需要口令就能登录系统
例:#usermod-l user2 user1//把用户user2改名为user1
30.启动、关闭防火墙
永久打开或则关闭
chkconfig iptables on
chkconfig iptables off
即时生效:重启后还原
service iptables start
service iptables stop
或者:
/etc/init.d/iptables start
/etc/init.d/iptables stop
31.启动VSFTP服务
即时启动:/etc/init.d/vsftpd start
即时停止:/etc/init.d/vsftpd stop
开机默认VSFTP服务自动启动:
方法一:(常用\方便)
[root@localhost etc]# chkconfig--list|grep vsftpd(查看情况)
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
[root@localhost etc]# chkconfig vsftpd on(执行ON设置)
或者:方法二:
修改文件/etc/rc.local,把行/usr/local/sbin/vsftpd&插入文件中,以实现开机自动启动。
Linux下垃圾文件的详解
Linux计算机安装后,在我们不断的使用过程中,因为添加、删除软件和上网冲浪、调试程序等行为,硬盘中会产生各种各样的垃圾文件,而随着这些垃圾文件的不断膨胀,它们不仅会平白吞噬掉我们宝贵的硬盘空间,更会拖累机器的运行速度,影响我们的工作效率。本文介绍一下给 Linux系统减肥的方法和工具的使用技巧,本文使用的 Linux发行版本是Ubuntu12.04。本文介绍的工具包括:Activity Log Manager、BleachBit、find、fdupes、Geeqie、GConf Cleaner,这些工具都是开源工具,Linux用户可以通过下载编译源代码在其他流行的 Linux版本(如 Redhat、SUSE等)上使用。
Linux下哪些文件属于垃圾文件
软件安装过程中产生的临时文件
许多 bin格式的软件在安装时,首先要把自身的安装文件解压缩到一个临时目录(一般为/tmp目录)然后再进行安装。如果软件设计有疏忽或者系统有问题,当安装结束后,这些临时文件就会变得并不临时,成为硬盘里的一堆垃圾,很多时候它们以*.tmp的面孔出现。
软件运行过程中产生的临时文件
和安装过程一样,在软件的运行过程中通常也会产生一些临时交换文件,有些软件运行过后遗留下来的垃圾甚至多达数百兆,比如ssh服务器和客户端连接过程中时产生的文件。还有虚拟机运行时产生的文件。另外我们删除一个账户之后,还会存在一些无用垃圾文件及目录。
上网冲浪产生的临时文件
我们在上网的时候,浏览器总是将网页文件下载到本地机器上,这些缓存文件不但占用了宝贵的磁盘空间,还常常会把我们的个人隐私公之于众。
一些不常用的鸡肋文件
比如一些应用软件自带的帮助和系统手册页等。既然食之无味索性也将它们视作垃圾文件的一种表现。占用空间甚大,更会严重拖累系统和一些图形处理软件的运行速度。另外还有一些损坏的桌面文件,它包括损坏的应用程序菜单按钮和文件关联。
各种缓存文件
如果 Linux用户安装使用 GIMP或者 Geeqie等图形编辑工具,在这些软件都有图片预览功能,在保存了图片的文件夹下会产生一个名为Thumbs.db的文件,这个文件会随着图片文件的增加而膨胀。还有就是.DS_Store文件,DS_Store文件是用来存储这个文件夹的显示属性的:比如文件图标的摆放位置。删除以后的副作用就是这些信息的失去。另外还有使用 apt或者yum软件包安装过程中生成的缓存文件。
使用 Linux命令删除垃圾文件删除用户后遗留下的垃圾文件
这里我们使用到的主要命令是 find。举个例子:我们删除一个账户之后,还会存在一些无用垃圾文件及目录,我们要找出属于这个用户的垃圾东西,使用 find/-user用户名:就可以找到根目录下属于这个用户的相关文件,使用命令:
#find./-nouser|xargs rm rf
core文件
当我们在系统下运行某个程序出错的时候,系统会自动将残留在内存中的数据存成 core文件,久而久之,系统中遗留下来的 core会越来越多,就像灰尘一样散落在系统的每一个角落里很是烦人。这个时候,我们就可以应用 find命令加上exec参数来清理它们。使用命令:
# find/-name core-print-exec rm-rf{};
多余的手册页
另外 Linux提供了众多语言的手册页(man)比如 Ubuntu的手册页位于/usr/share/man目录下,可以使用命令删除多余语言的手册页保留中英文即可。
# cd/usr/share/man# find./-maxdepth 1-type d| tail-n+2| grep-E-v'(en|zh|man).*'| while read d; do rm-rf$d; done
说明:关键字是(en|zh|man),您可以根据自己的情况修改。
使用 fdupes工具删除指定目录下重复文件
fdupes是一个命令行工具,它会查找和删除指定目录的重复文件,它通过文件的大小和 MD5值进行比较。一个字节一个字节进行对比。首先安装这个工具
# apt-get install fdupes
在/etc目录查找重复文件,使用如下命令:
#fdupes/etc
可以与 Linux命令组合使用,删除文件:
#fdupes-r-f.| grep-v ^$| tee duplicate.txt cat duplicate.txt| while read file; do rm-v$file; done
另外也可以与sed命令组合使用,删除文件:
# fdupes-r-n-S/tmp| sed-r s/^/#rm/| sed-r s/$// duplicate-files.sh
删除缓存文件
清理旧版本的软件缓存
# apt-get autoclean
清理所有软件缓存:
#apt-get clean
使用 Geeqie工具找出相似图像文件
现在的硬盘容量是越来越大,出于备份的考虑,很多朋友会采取宁滥勿缺的原则保存图片,这就可能出现文件重复的情况,造成文件搜索的效率低下。要在海量的存储空间中找出重复的文档,并不是一件容易的工作。其实借助著名的图像浏览工具 Geeqie可以很轻松地找出系统中的重复和相似图像文件。这些文件相比文本文件更大,时间长了会占用很多硬盘空间。使用上面介绍的 fdupes工具就不行,因为 fdupes工具只能删除完全相同(md5sum相同)的重复文件,但若要剔除相似的图片文件,则可使用 geeqie工具。首先安装这个工具:
# apt-get install gqview
下面运行这个工具,在要搜索的目录上按鼠标右键,选择 Find duplicates recursive...见图 1。
选择左下角的 Compare by:下拉菜单可选择比对方式 Similarity(custom)找出相似度 99%以上的图片,另外可以勾选 Thumbnails可显示缩略图见图 2
下面在被选取的项目上按鼠标右键,点选 Delete即可删除所有被选取的图片,删除前会有一个的确认界面以免误删。说明 99%是图片相似度的缺省值,用户可以通过如下方式修改参数:在 Edit Preferences Preferences... Behavior Miscellaneous: Custom similarity threshold见图 3。
使用 BleachBit清理文件简介
BleachBit是一款开源免费的系统清理工具,功能类似 Windows平台的 CCleaner。BleachBit能够删除隐藏的垃圾文件,以及简单的保护你的隐私。擦除缓存,删除 cookies文件,清除互联网浏览历史,删除未使用的本地化碎片日志,删除临时文件,是一款非常实用的跨平台的系统清理工具。BleachBit提供有rpm和 deb二进制包,适用于Fedora/CentOS/RHEL、Debian/Ubuntu等 Linux发行版。其它 Linux用户可以选择 BleachBit的源码包(下载地址:)。使用 BleachBit,你可以清理系统中的缓存、历史、临时文件、cookies等不需要的东西,这样可以释放你的磁盘空间。当前,BleachBit能够清理 Beagle、Firefox、Epiphany、Flash、OpenOffice.org、KDE、 GIMP、JAVA编程工具、vim、Gedit编辑器等 70多种软件所产生的垃圾文件。还有系统运行时生成的Thumbs.db的文件和使用 apt或者 YUM软件包安装过程中生成的缓存文件以及剪切板里面的历史文件信息等。
首先安装软件:
#apt-get install bleachbit
安装之后系统工具菜单里就会多出两个工具:bleachbit和 bleachbitasroot。对于 root用户使用第 2个,软件第一次运行,弹出首选项窗口,见图 4。
简单说明一下设置界面:包括定制文件和文件夹,驱动器列表,语言,白名单(免于清理的)设置,以及是否开机启动 BleachBit等一些选项。
下面看看工作界面见图 5。
BleachBit软件功能单一因此使用起来也方便。从图 5里我能看到。软件的左边罗列出了能够清理的各种垃圾,点击预览按钮,就会分析出垃圾文件的明细和大小。勾选好软件按 clean(清除)按钮即可。
以 Chrome浏览器为例介绍操作实例
Chrome浏览器可以清理的文件主要包括:
缓存:删除那些网页缓冲文件(这些缓冲文件可以减少下次访问该网页的时间) Cookies:删除 cookies文件,它们保存网站首选项、认证和身份等信息当前会话:删除当前会话 DOM(文档对象模型)存储:删除HTML5cookies表单历史:网站表单输入历史历史:删除已浏览网站、下载及缩略图的历史记录搜索引擎:重置搜索引擎使用历史并删除非内置搜索引擎,其中一些引擎为自动添加整理数据库:清理数据库碎片以减少空间并提高速度(无需删除任何数据)
首先查看可清理的 Chrome浏览器文件见图 6。
选中欲清理的项目后,点击预览按钮即可执行对该类项目内所含垃圾文件的扫描操作,扫描过程非常快速,扫描过程完毕,用户将看到检测到的垃圾文件列表及其统计信息,下面用户只需鼠标点击清理按钮即可轻松清除这些已经被检测到的垃圾文件。
上面笔者选择执行的是对 Chrome浏览器的扫描清理任务,当然可以选择全部垃圾列表中的所有项目,用户只需逐一勾选扫描项目选择激活项即可。
使用 Activity Log Manager清理残留在系统中的使用痕迹
上网冲浪,用账号登录系统,包括使用一些编辑软件都会在系统里留下蛛丝马迹,这些残留信息中包含个人信息,如果被不法分子利用,就会造成隐私泄露,下面介绍的工具是 Activity Log Manager,它是配置在 Zeitgeist活动日志中记录的内容的,使用它可以有效保护隐私。首先安装这个工具:
#apt-get install activity-log-manager
Activity Log Manager的中文名称是活动日志管理器,安装完成后出现在附件菜单中。它的使用方法也比较简单。最直接的就是设置停止记录的功能,然后删除所有历史文件见图 7。
当然用户也可以进行有区别的设置,可以根据具体情况设置哪些应用程序和文件可以保留历史文件那些不保留。下面通过文件界面进行设置见图 8
这里笔者选择电子表格、文本、即时消息三个事关隐私的选项。另外对于一些特殊的应用程序用户还可以自己添加到活动日志管理器中,见图 9
使用 GConf Cleaner清理 GConf
GConf是一个用于存储 GNOME应用程序选项设置的系统。如果该系统充斥着大量无用键值,那么将使 GConf臃肿不堪。这对应用程序的启动速度和性能都是有影响的。为了解决这个问题,你可以使用 GConf Cleaner来对其进行清理。Gconf-Cleaner是一款类似于 Windows注册表清理器的工具。它会检查 Gconf数据库(即 GNOME配置数据库)并移除无用及过时的项目。
首先安装这个工具:
#apt-get install gconf-cleaner
然后从终端执行 gconf-cleaner启动 GConf Cleaner程序。这个程序具有执行向导,只需按步骤操作即可。向导初始画面,点击 Forward会进入分析过程。图 10是分析结果,它提供具体数据,并可保存。再次点击 Forward则开始清理过程。
linux误删/bin目录怎么办
解决思路:
1、找一台操作系统环境相同的机器,拷贝目录到该机器。
2、估计的重新安装内核,因为找不到内核映射了。
详细解决步骤如下:
1、重新启动机器,插入光盘,进入带网络环境的救援模式。
2、把另外一个系统的bin目录的压缩包拷贝过来,然后解压。
3、因为系统内核丢失了,所以我们需要先安装内核,在安装内核时会自动生成initrd
a、cd/mnt/
b、mkdir cd
c、mount-t iso9660-o ro/dev/hda/mnt/cd/(注意,使用dmesg命令详细查看光驱挂载的设备,我的是/dev/hda)
d、rpm-Uvh--force kernel-2.6.18-164.el5.i686.rpm
4、安装grub
a、grup-install/dev/sda
5、编辑grub.conf
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a/boot partition. This means that
# all kernel and initrd paths are relative to/boot/, eg.
# root(hd0,0)
# kernel/vmlinuz-version ro root=/dev/sda7
# initrd/initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS(2.6.18-164.el5)
root(hd0,0)
kernel/vmlinuz-2.6.18-164.el5 ro root=LABEL=/dev/VolGroup00/LogVol00 rhgb quiet
initrd/initrd-2.6.18-164.el5.img
注意,如果你是逻辑卷需要修改根目录的标签,我的是逻辑卷。
6,重新启动系统
重新启动系统未成功,出现以下错误:
mount: could not find filesystem'/dev/root'
setuproot: moving/dev failed: No such file or directory
setuproot: error mounting/proc: No such file or directory
setuproot: error mounting/sys: No such file or directory
switchroot: mount failed: No such file or directory
Kernel panic- not syncing: Attempted to kill init!
经过搜索后,发现此类问题多集中在逻辑卷管理的情况,具体原因是我们在重新安装内核的时候,没有加载一些逻辑卷,解决方法如下:
1) Boot with the rescue CD
2) Type'chroot/mnt/sysimage'
3)'cd/boot'
4)'mkdir newinit'
5)'cd newinit'
6)'gunzip-c../initrd-2.6.18-164.el5.img| cpio-idmv'
7)'vi init'
8) Find'mount/sysroot'
9) Delete or comment this out
10) Replace with'mount-o defaults--ro-t ext3/dev/VolGroup00/LogVol00/sysroot' where/dev/VolGroup00/LogVol00 is the mount point for/
11)':wq' out of vi
12)'find.| cpio--quiet-c-o>../newinitrd'
13)'cd..'- you are now in/boot
14)'mv initrd-2.6.18-164.el5.img initrd-2.6.18-164.el5.img.bak'- backup current initrd img file
15)'gzip-9< newinitrd> initrd-2.6.18-164.el5.img'
16) Reboot the computer without the CD
再次重新启动系统,OK,问题解决。
7、尝试进行远程连接,因为远程服务器不允许root直接连接,可以用普通用户进行登录,登录后执行 su- root命令,输入密码总是提示密码错误,但是在终端直接用root是可以登录的,奇怪,后来发现问题出在 su命令上,是文件权限粘贴位的问题,因为拷贝过来的su命令权限如下:
[root@localhost~]# ll/bin/su
-rwxr-xr-x 1 root root 23960 Oct 18 21:46/bin/su
正确如下:
[root@localhost~]# ll/bin/su
-rwsr-xr-x 1 root root 23960 Oct 18 21:46/bin/su
这样就简单了,设置粘贴位如下:
[root@localhost~]# chmod u+s mount
除了su命令外,还有另外几个需要设置粘贴位,mount,ping,ping6,traceroute,traceroute6,umount。
另外还要注意一些软连接。