Linux 一句话精彩问答(1-50)
时间:2007-01-04 来源:守住每一天
1001 修改主机名(陈绪)
vi /etc/sysconfig/network,修改HOSTNAME 一行为"HOSTNAME=主机名"(没有这行?那就
添加这一行吧),然后运行命令"hostname 主机名"。一般还要修改/etc/hosts 文件中的主机名。
这样,无论你是否重启,主机名都修改成功
1002 修改linux 启动方式(文本方式或xwindow 方式)(陈绪)
vi /etc/inittab,找到id:x:initdefault:一行,x=3 为文本方式 x=5 为xwindow 方式,重启机器
即可生效
1003 linux 的自动升级更新问题(hutuworm,NetDC,陈绪)
Fedora Core 下,可以使用yum 来安装和升级软件
Debian 下,用apt-get update 和apt-get upgrade 来安装和升级软件,前提是配置好网络和
/etc/apt/sources.list,也可以用apt-setup 设置
1004 windows 下查看linux 分区的软件(陈绪)
Paragon.Ext2FS.Anywhere.2.5.rar 和explore2fs-1.00-pre4.zip
1005 mount 用法(sakulagi,sxsfxx,aptkevin)
fat32 分区 mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom
ntfs 分区 mount -t ntfs -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom
iso 文件 mount -o loop /abc.iso /mnt/cdrom
软盘 mount /dev/fd0 /mnt/floppy
usb mount /dev/sda1 /mnt/cdrom
cd 光驱 mount -t iso9660 -o iocharset=cp936,ro /dev/cdrom /mnt/cdrom
dvd 光驱 mount -t iso9660 -o iocharset=cp936,ro /dev/dvd /mnt/cdrom 或mount -t udf /dev/dvd
/mnt/cdrom
注意:dvd 的格式一般为iso9660 或udf 之一
在有scsi 硬盘的计算机上,应该先用fdisk -l /dev/sd? 来看看到底usb 闪存盘是在哪个设备
下(通常会是sdb1 或者sdc1)。
所有/etc/fstab 内容 mount –a,此命令还可以指定文件格式"-t 格式", 格式可以为vfat, ext2,
ext3 等
例如,要自动将windows 的d 盘挂到/mnt/d 上,用vi 打开/etc/fstab,加入以下一行
/dev/hda5 /mnt/d vfat defaults,codepage=936,iocharset=cp936 0 0
Linux 一句话精彩问答/陈绪 http://www.linuxmine.com
11/62
注意,先得手工建立一个/mnt/d 目录
1006 访问远程共享的目录(陈绪)
将如下的行放到/etc/fstab 中:
//ip/share1 /mnt/d smbfs defaults,auto,username=name,password= pass 0 0
其中ip 是远程机器的ip 地址,是share1 该机器共享目录的共享名,/mnt/d 是要将该分区
mount 到本地linux 的目录,name 和pass 是可以访问该共享目录的用户名和密码。
1007.a 删除名为-a 的文件(陈绪)
1 rm ./-a
2 rm -- -a,--告诉rm 这是一个选项,具体参见getopt
3 ls -i 列出inum,然后用find . -inum inum_of_thisfile -exec rm '{}' \;
1007.b 删除名为\a 的文件(陈绪)
rm \\a
1007.c 删除名字带的/和‘\0'文件(陈绪)
这些字符是正常文件系统所不允许的字符,但可能在文件名中产生,如unix 下的nfs 文件系
统在Mac 系统上使用
1 把nfs 文件系统在挂到不过滤'/'字符的系统下,删除含特殊文件名的文件;
2 将错误文件名的目录其它文件移走,ls -id 显示含该文件目录的inum,umount 文件系统,
clri 清除该目录的inum,fsck,mount,检查lost+found 目录,将其中的文件更名。
另外,可以通过windows ftp 过去删除任何文件名的文件
1007.d 删除名字带不可见字符的文件(陈绪)
列出文件名并转储到文件:ls -l > del.sh
然后编辑文件的内容加入rm 命令使其内容成为删除上述文件的格式:
vi del.sh
rm -rf *******
执行sh del.sh
1007.e 删除文件大小为零的文件(陈绪)
1 rm -i `find ./ -size 0`
2 find ./ -size 0 -exec rm {} \;
3 find ./ -size 0 | xargs rm -f &
4 for file in * #自己定义需要删除的文件类型
do
if [ ! -s ${file} ]
then
rm ${file}
echo "rm $file Success!"
Linux 一句话精彩问答/陈绪 http://www.linuxmine.com
12/62
fi
done
1008 redhat 设置滚轮鼠标(mc1011)
1 进入x 后,选择鼠标的配置,选择wheel mouse (ps/2)就可以了,如果鼠标表现异常,重
启计算机即可;
2 直接su, vi /etc/X11/XF86Config, 把PS/2 改成ImPS/2
1009 加装xwindow(陈绪)
用linux 光盘启动,选择升级,然后单独选择包,安装即可
1010 删除linux 分区(陈绪)
1 做一张partition magic 的启动软盘,启动后删除;
2 用win2000 的启动光盘启动,然后删除
1011 如何退出man(陈绪)
q
1012 不编译内核,mount ntfs 分区(陈绪,hutuworm)
找到对应内核版本(uname -a)的ntfsrpm,安装即可。
以原装rh8 为例,未升级或编译内核
1. 上google.com 搜索并下载 kernel-ntfs-2.4.18-14.i686.rpm
2. rpm -ivh kernel-ntfs-2.4.18-14.i686.rpm
3. mkdir /mnt/c
4. mount -t ntfs /dev/hda1 /mnt/c
或
Read only: http://linux-ntfs.sourceforge.net/
Read/Write: http://www.jankratochvil.net/project/captive/
1013 tar 分卷压缩和合并(WongMokin,Waker)
以每卷500M 为例
tar 分卷压缩:tar cvzpf - somedir | split -d -b 500m (-d 不是split 的选项,是shell 的选项,表
示将tar 命令的输出作为split 的输入)
tar 多卷合并:cat x* > mytarfile.tar.gz
1014 使用lilo/grub 时找回忘记了的root 口令(陈绪)
1.在系统进入单用户状态,直接用passwd root 去更改;
2.用安装光盘引导系统,进入linux rescue 状态,将原来/分区挂接上来,命令如下:
cd /mnt
mkdir hd
Linux 一句话精彩问答/陈绪 http://www.linuxmine.com
13/62
mount -t auto /dev/hdaX(原来分区所在的分区号) hd
cd hd
chroot ./
passwd root
这样可以搞定;
3.将本机的硬盘拿下来,挂到其他的linux 系统上,采用的办法与第二种相同
以rh8 为例,演示第1 种方法如下:
一. lilo
1 在出现 lilo: 提示时键入 linux single
画面显示 lilo: linux single
2 回车可直接进入linux 命令行
3 vi /etc/shadow
将第一行,即以root 开头的一行中root:后和下一个:前的内容删除,
第一行将类似于
root::......
保存
4 reboot 重启,root 密码为空
二. grub
1 在出现grub 画面时,用上下键选中你平时启动linux 的那一项(别选dos),然后按e 键;
2 再次用上下键选中你平时启动linux 的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro
root=LABEL=/),然后按e 键;
3 修改你现在见到的命令行,加入single,结果如下:
kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/
4 回车返回,然后按b 键启动,即可直接进入linux 命令行
5 vi /etc/shadow
将第一行,即以root 开头的一行中root:后和下一个:前的内容删除,
第一行将类似于
root::......
保存
6 reboot 重启,root 密码为空
1015 使ctrl+alt+del 失效(陈绪)
vi /etc/inittab
将ca::ctrlaltdel:/sbin/shutdown -t3 -r now 这行注释掉
1016 查看redhat 的版本号(hutuworm)
cat /proc/version 或cat /etc/redhat-release 或cat /etc/issue
1017 查文件属于哪个rpm(无双)
上www.rpmfind.net 上搜,或者rpm -qf 文件名得到
Linux 一句话精彩问答/陈绪 http://www.linuxmine.com
14/62
1018 将man 或info 的信息存为文本文件(陈绪)
以rpm 命令为例:
man rpm | col -b > rpm.txt
info rpm -o rpm.txt –s
1019 利用两个现存文件,生成一个新的文件(陈绪)
1. 取出两个文件的并集(重复的行只保留一份)
cat file1 file2 | sort | uniq
2. 取出两个文件的交集(只留下同时存在于两个文件中的文件)
cat file1 file2 | sort | uniq -d
3. 删除交集,留下其他的行
cat file1 file2 | sort | uniq –u
1020 设置com1 口,让超级终端通过com1 口进行登录(陈绪)
第一步:确认有/sbin/agetty,编辑/etc/inittab,添加
7:2345:respawn:/sbin/agetty /dev/ttyS0 9600
9600bps 是因为连路由器时缺省一般都是这种速率,也可以设成
19200、38400、57600、115200
第二步:修改/etc/securetty,添加一行:ttyS0,确保root 用户能登录
第三步:重启机器,就可以拔掉鼠标键盘显示器(启动时最好还是要看看输出信息)了
1021 删除内有文件和子目录的目录(陈绪)
rm -rf 目录名
1022 查看系统信息(陈绪)
cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)
cat /proc/interrupts - 中断
cat /proc/ioports - 设备IO 端口
cat /proc/meminfo - 内存信息(i.e. mem used, free, swap size)
cat /proc/partitions - 所有设备的所有分区
cat /proc/pci - PCI 设备的信息
cat /proc/swaps - 所有Swap 分区的信息
cat /proc/version - Linux 的版本号相当于 uname -r
uname -a - 看系统内核等信息
1023 去掉多余的回车符(陈绪)
sed 's/^M//' test.sh > back.sh,注意^M 是敲ctrl_v ctrl-m 得到的
或者 dos2unix test.sh
Linux 一句话精彩问答/陈绪 http://www.linuxmine.com
15/62
1024 切换X 桌面(lnx3000)
如果你是以图形登录方式登录linux,那么点击登录界面上的session(任务)即可以选择gnome
和kde。如果你是以文本方式登录,那执行switchdesk gnome 或switchdesk kde,然后再startx
就可以进入gnome 或kde。
(或者vi ~/.xinitrc,添加或修改成exec gnome-session 或exec startkde,然后用startx 启动x)
1025 通用的声卡驱动程序(lnx3000)
OSS www.opensound.com / ALSA www.alsa-project.org/
1026 改变redhat 的系统语言/字符集(beming,mc1011)
修改 /etc/sysconfig/i18n 文件,如
LANG="en_US",xwindow 会显示英文界面,
LANG="zh_CN.GB18030",xwindow 会显示中文界面。
还有一种方法
cp /etc/sysconfig/i18n $HOME/.i18n
vi $HOME/.i18n 文件,如
LANG="en_US",xwindow 会显示英文界面,
LANG="zh_CN.GB18030",xwindow 会显示中文界面。
这样就可以改变个人的界面语言,而不影响别的用户
1027 把屏幕设置为90 列(陈绪)
stty cols 90
1028 使用md5sum 文件(陈绪)
md5sum isofile > hashfile
md5sum 文件与hashfile 文件的内容比对,验证hash 值是否一致
md5sum –c hashfile
1029 一次解压多个zip 文件(陈绪)
unzip "*",注意引号不能少
1030 看pdf 文件(陈绪)
安装Acrobat Reader
1031 查找权限位为S 的文件(陈绪)
find . -type f \( -perm -04000 -o -perm -02000 \) -exec ls -lg {} \;
1032 装中文输入法(陈绪,hutuworm)
以redhat8 为例,xwindow 及其终端下的不用说了,缺省就安装了,用ctrl-space 呼出。
Linux 一句话精彩问答/陈绪 http://www.linuxmine.com
16/62
现在讨论纯console,请到http://zhcon.sourceforge.net/下载zhcon-0.2.1.tar.gz,放在任一目录
中,tar xvfz zhcon-0.2.1.tar.gz,cd zhcon-0.2.1,./configure,make,make install。安装结束后,
要使用zhcon,请运行zhcon,想退出,运行exit
1033 把弹出的光盘收回来(beike)
eject –t
1034 cd 光盘做成iso 文件(弱智,grub007)
cp /dev/cdrom /tmp/xxx.iso 或 dd if=/dev/cdrom of=/tmp/xxx.iso
1035 快速观看开机的硬件检测(弱智)
dmesg | more
1036 查看硬盘的使用情况(陈绪)
df -k 以K 为单位显示
df -h 以人性化单位显示,可以是b,k,m,g,t..
1037 查看目录的大小(陈绪)
du -sh 目录名
-s 仅显示总计
-h 以K、M、G 为单位,提高信息的可读性。KB、MB、GB 是以1024 为换算单位
-H 以1000 为换算单位
1038 查找或删除正在使用某文件的进程(wwwzc)
fuser filename
fuser -k filename
1039 安装软件(陈绪)
rpm -ivh aaa.rpm
tar xvfz aaa.tar.gz; cd aaa; ./configure; make; make install
1040 字符模式下设置和删除环境变量(陈绪)
bash 下
设置:export 变量名=变量值
删除:unset 变量名
csh 下
设置:setenv 变量名变量值
删除:unsetenv 变量名
Linux 一句话精彩问答/陈绪 http://www.linuxmine.com
17/62
1041 ls 如何看到隐藏文件(即以.开头的文件)(双眼皮的猪)
ls –a 或 l. (适用于redhat)
1042 查看rpm 中文件的安装位置(陈绪)
rpm -qpl aaa.rpm
1043 使用src.rpm 编译出二进制rpm(陈绪)
rpmbuild --rebuild *.src.rpm
1044 设置vim 中显示或不显示字体颜色(陈绪)
首先确保安装了vim-enhanced 包,然后,vi ~/.vimrc; 如果有syntax on,则显示颜色,syntax
off,则不显示颜色
1045 linux 是实时还是分时操作系统(陈绪)
标准的内核是分时的,但是有些厂商也改造出了实时linux 系统
1046 make bzImage -j 的j 是什么意思(wind521)
-j 主要是用在当你的系统硬件资源比较足的时候,用改选项可以加快编译速度,如-j 3
1047 如何安装内核源码包(陈绪)
把你光盘上的内核源码包装上即可,rpm -i *kernel*source*.rpm
1048 修改系统时间(陈绪,laixi781211,hutuworm)
1 设置你的时区: timeconfig 里选择Asia/Shanghai (如果你位于GMT+8 中国区域)
2 与标准时间服务器校准: ntpdate time.nist.gov
当然,如果你是李嘉诚,也可以跟自己的手表校准: date -s STRING (STRING 格式见man
date),修改后执行clock -w 写到CMOS
date -s “2003-04-14 cst”,cst 指时区,时间设定用date -s 18:10
3. 将当前软件系统时间写入硬件时钟: hwclock –systohc
1049 把命令结果传给一个变量(陈绪)
aa=`grep _GQAdd $1`,注意这个`是反引号
1050 linux 怎么用这么多内存(陈绪)
为了提高系统性能和不浪费内存,linux 把多的内存做了cache,以提高io 速度