linux的技巧

类别:软件工程 点击:0 评论:0 推荐:

25.root密码丢失解决
GRUB:在引导装载程序菜单上,键入 [e] 来进入编辑模式。
你会面对一个引导项目列表。查找其中类似以下输出 的句行:
kernel /vmlinuz-2.4.18-0.4 ro root=/dev/hda2
按箭头键直到这一行被突出显示,然后按 [e]。
你现在可在文本结尾处空一格再添加 single 来告诉 GRUB 引导单用户 Linux 模式。按 [Enter] 键来使编辑结果生效。
你会被带会编辑模式屏幕,从这里,按 [b], GRUB 就会引导单用户 Linux 模式。 结束载入后,你会面对一个与以下相似的 shell 提示:
sh-2.05#
现在,你便可以改变根命令,键入:
bash# passwd root
你会被要求重新键入口令来校验。结束后, 口令就会被改变,你便可以在提示下键入 reboot 来重新引导;然后,象平常一样登录为根用户。
LILO:当系统启动到出现LILO引导画面时,对于图形引导方式按TAB键进入文本方式,然后在LILO处
输入linux single回车即可进入免密码的控制台,进入以后使用passwd命令修改root的密码
即可。
无软盘安装RedHat、SUSE、Mandrake


关机
init 0
poweroff
shutdown -h now


修改网络配置
會用 vi 或其它文字編輯器嗎?
若然,請改:
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network
/etc/resolv.conf
/etc/hosts

 

利用光盘镜像
mount -o loop *.iso /mnt/cdrom
制作光盘镜像
dd if=/dev/cdrom of=*.iso


0001
修改主机名
vi /etc/sysconfig/network,修改HOSTNAME一行为HOSTNAME=主机名,重启后也能生效

0002
Ret Hat Linux启动到文字界面(不启动xwindow)
将/etc/inittab中 id:5:initdefault: 一行中的5改为3

0003
redhat的自动问题
在www.redhat.com/corp/support/errata/找到补丁,6.1以后的版本带有一个工
具up2date,它能够测定哪些rpm包需要升级,然后自动从redhat的站点下载并完成安装。

0004
windows下看linux分区的软件
Paragon.Ext2FS.Anywhere.2.5.rar和explore2fs-1.00-pre4.zip

0005
mount用法
fat32的分区 mount -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
所有/etc/fstab内容 mount -a

可以指定文件格式"-t 格式", 格式可以为vfat, ext2, ext3等.

0006
在vmware的LINUX中使用本地硬盘的FAT分区
将本地的FAT分区共享,然后在VMWARE中使用SMBFS挂上。可以将如下的行放到/etc/fstab中:
//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,codepage=936,iocharest=gb2312 0 0
其中win_ip是你的windows的IP地址;
D$是你的windows里面共享的D盘的共享名;
/mnt/d是要将该分区mount到linux的目录;
win_name和win_pass是你的WINDOWS里面可以读取该分区的用户,比如你的管理员名和密码。
如果你运行了/etc/rc.d/init.d/netfs,那么在启动的时候就会自动挂载这个分区。

0007.a
删除名为-a的文件
rm ./-a
rm -- -a 告诉rm这是最后一个选项,参见getopt
ls -i 列出inum,然后用find . -inum inum_of_thisfile -exec rm '{}' \;

0007.b
删除名为\a的文件
rm \\a

0007.c
删除名字带的/和‘\0'文件
这些字符是正常文件系统所不允许的字符,但可能在文件名中产生,如unix下的NFS文件系统在Mac系统上使用
1.解决的方法,把NFS文件系统在挂到不过滤'/'字符的系统下删除含特殊文件名的文件。
2.也可,将错误文件名的目录其它文件移走,ls -id 显示含该文件目录的inum,umount 文件系统,
clri清除该目录的inum,fsck,mount,check your lost+found,rename the file in it.
最好是通过WINDOWS FTP过去就可以删除任何文件名的文件了!

0007.d
删除名字带不可见字符的文件
列出文件名并转储到文件:ls -l >aaa
然后编辑文件的内容加入rm命令使其内容成为删除上述文件的格式:
vi aaa
[rm -r *******
]
把文件加上执行权限 chmod +x aaa
执行 $aaa

0007.e
删除文件大小为零的文件
rm -i `find ./ -size 0`
find ./ -size 0 -exec rm {} \;
find ./ -size |xargs rm -f &非常有效
for file in * #自己定义需要删除的文件类型
do
if [ ! -s ${file} ]
then
rm ${file}
echo "rm $file Success!"
fi
done

0008
redhat设置滚轮鼠标
进入X后,选择鼠标的配置,选择wheel mouse(ps/2)就可以了

0009
加装xwindow
用linux光盘启动,选择升级,然后单独选择包,安装即可

0010
删除linux分区
做一张partition magic的启动软盘,启动后删除. 或者用win2000的启动光盘启动,然后删除.

0011
新编译生成的gcc ,使用的标准连接库都在/usr/local/lib 下了,但使用的缺省的连接路径是 /usr/lib 怎样添加?(除了在每次编译时 增加 -L /usr/local/lib 以外)(sakulagi)
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
写到~/.bash_profile里面。

0012
不编译内核,mount ntfs分区
原装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

0013
redhat 8.0中用xmms听mp3
下载www.gurulabs.com/files/xmms-mp3-1.2.7-13.p.i386.rpm
rpm -Uvh xmms-mp3-1.2.7-13.p.i386.rpm

0014
找回忘记了的root口令(lilo/grub)
三种办法:
1.在系统进入单用户状态,直接用passwd root去更改
2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法如下:
cd /mnt
mkdir hd
mount -t auto /dev/hdaX(原来/分区所在的分区号) hd
cd hd
chroot ./
passwd root
这样可以搞定
3.将本机的硬盘拿下来,挂到其他的linux系统上,采用的办法与第二种相同
rh8中
一. 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密码为空

0015
使ctrl + alt + del失效
vi /etc/inittab
将ca::ctrlaltdel:/sbin/shutdown -t3 -r now这行注释掉,就可以了

0016
gcc abc.c得到的a.out不能运行
./a.out

0017
文件在哪个rpm中(无双)
上www.rpmfind.net上搜,或者rpm -qf 文件名得到

0018
把man或info的信息存为文本文件
以 tcsh 为例:
man tcsh | col -b > tcsh.txt
info tcsh -o tcsh.txt -s

0019
利用现存两个文件,生成一个新的文件
1. 取出两个文件的并集(重复的行只保留一份)
2. 取出两个文件的交集(只留下同时存在于两个文件中的文件)
3. 删除交集,留下其他的行
1. cat file1 file2 | sort | uniq
2. cat file1 file2 | sort | uniq -d
3. cat file1 file2 | sort | uniq -u

0020
设置com1口,让超级终端通过com1口进行登录
确认有/sbin/agetty,编辑/etc/inittab,添加
7:2345:respawn:/sbin/agetty /dev/ttyS0 9600
9600bps是因为联路由器缺省一般都是这种速率,也可以设成
19200、38400、57600、115200
修改/etc/securetty,添加一行:ttyS0,确保root用户能登录
重启机器,就可以拔掉鼠标键盘显示器(启动时最好还是要看看输出信息)了

0021
删除目录下所有文件包括子目录
rm -rf 目录名

0022
查看系统信息
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

0023
去掉多余的回车符
sed 's/^M//' test.sh > back.sh, 注意^M是敲ctrl_v ctrl-m得到的
或者 dos2unix filename

0024
切换X桌面(lnx3000)
switchdesk KDE或者switchdesk GNOME

0025
通用的声卡驱动程序(lnx3000)
OSS www.opensound.com/ ALSA www.alsa-project.org/

0026
改变redhat的系统语言/字符集(beming)
修改 /etc/sysconfig/i18n 文件,如
LAGN="en_US",xwindow会显示英文界面,
LAGN="zh_CN.GB18030",xwindow会显示中文界面。

0027
把屏幕设置为90列
stty cols 90

0028
使用md5sum文件
md5sum isofile > hashfile, 将 md5sum 档案与 hashfile 档案内容比对, 验证杂凑值
是否一致 md5sum –c hashfile

0029
一次解压多个zip文件
unzip "*",注意引号不能少

0030
看pdf文件
使用xpdf或者安装acrobat reader for linux

0031
查找权限位为S的文件
find . -type f \( -perm -04000 -o -perm -02000 \) -exec ls -lg {} \;

0032
装中文输入法
以redhat8为例,xwindow及其终端下的不用说了吧,缺省就安装了,用ctrl-space呼出。
现在讨论纯console,请下载zhcon.gnuchina.org/download/src/zhcon-0.2.1.tar.gz,
放在任一目录中,tar xvfz zhcon-0.2.1.tar.gz, cd zhcon-0.2.1, ./configure,
make, make install。安装结束,要想使用,请运行zhcon,想退出,运行exit。

0033
把弹出的光盘收回来(beike)
#eject -t

0034
cd光盘做成iso文件(弱智)
cp /dev/cdrom xxxx.iso

0035
快速观看开机的硬件检测(弱智)
dmesg | more

0036
查看硬盘的使用情况
df -k 以K为单位显示
df -h 以人性化单位显示,可以是b,k,m,g,t..

0037
查看目录的大小
du -sh dirname
-s 仅显示总计
-h 以K、M、G为单位,提高信息的可读性。KB、MB、GB是以1024为换算单 位, -H以1000为换算单位。


----------------------------网络相关篇--------------------------
0001
让apache的默认字符集变为中文
找到 AddDefaultCharset ISO8859-1 一行,改为AddDefaultCharset GB2312

0002
永久更改ip
ifconfig eth0 新ip
然后编辑/etc/sysconfig/network-scripts/ifcfg-eth0,修改ip

0003
从Linux上远程显示Windows桌面(lnx3000)
安装rdesktop包

0004
手动添加默认网关
以root用户,执行: route add default gw 网关的IP
想更改网关
1 vi /etc/sysconfig/network-scripts/ifcfg-eth0
更改GATEWAY
2 /etc/init.d/network restart

0005
redhat 8.0上msn和qq
下载Gaim 0.58版:
www.linuxsir.org/gaim/gaim-0.58-2.i386.rpm
下载QQ插件 for gcc2.9版:
www.linuxsir.org/gaim/libqq-0.0.3-ft-0.58-gcc296.so.gz
将下载的文件放入/temp目录,然后将系统中已有的Gaim删除,即在终端仿真器中键入命令:rpm -e gaim。
开始安装
打开终端仿真器,继续执行下列命令安装Gaim 0.58版,即:
cd /temp         (进入temp目录)
rpm -ivh gaim-0.58-2.i386.rpm (安装软件)
当安装成功后,你就可以在GNOME或KDE桌面建立Gaim图标了。
继续安装QQ插件,即键入命令:
gunzip libqq-0.0.3-ft-0.58-gcc296.so.gz (解压缩文件)
cp libqq-0.0.3-ft-0.58-gcc296.so /usr/lib/gaim (复制插件到gaim库目录中)
软件设置
首次启动Gaim 0.85版时,会出现的登录界面。先选择“插件”,在插件对话框中点击“加载”,分别将
libmsn.so和libqq-0.0.3-ft-0.58-gcc296.so文件装入,确认后关闭。然后再选择“所有帐号”,在
出现的帐号编辑器中继续点击“增加”,当出现的修改帐号页面时,我们就可以输入自己的QQ或MSN号
了,登录名填写QQ号码或MSN邮箱,密码填写对应的QQ或MSN密码,Alias填写自己的昵称,协议选择
相应的QQ或MSN,其他的设置按默认的即可。当全部设置完成后就可以登录使用了。

0006
查出22端口现在运行什么程序
lsof -i :22

0007
查看本机的IP,gateway, dns
IP:
以root用户登录,执行ifconfig。其中eth0是第一块网卡,lo是默认的设备
Gateway:
以root用户登录,执行netstat -rn,以0.0.0.0开头的一行的Gateway即为默认网关
也可以查看/etc/sysconfig/network文件,里面有指定的地址!
DNS:
more /etc/reslov.conf,内容指定如下:
nameserver 202.96.69.38
nameserver 202.96.64.38

0008
RH8.0命令行下轻松改变ping 的TTL值(cgweb)
#sysctl -w net.ipv4.ip_default_ttl=N
(N=0~255),若N>255,则ttl=0

0009
RH8.0命令行下轻松改变系统配置默认值(houaq)
编辑/etc/sysctl.conf, 例如,将
net.ipv4.ip_forward = 0
变为
net.ipv4.ip_forward = 1
重启后生效,用sysctl -a查看可知

0010
mount局域网上其他windows机器共享出的目录
mount -t smbfs -o username=guest,password=guest //machine/path /mnt/cdrom

0011
允许|禁止root通过SSH登陆(Fun-FreeBSD)
修改sshd_config:PermitRootLogin no|yes

0012
让root直接telnet登陆
编辑/etc/pam.d/login,去掉
auth required /lib/security/pam_securetty.so 这句话

0013
在linux接adsl设备
需要一个运转正常的Linux + 至少一块网卡 + 宽带设备已经申请完毕,同时已经开通
前市场上大概有几种ADSL设备,他们工作的方式有一些细微的差别。
就是通过虚拟拨号来完成上网的这一过程,也就是利用pppoe设备来进行虚拟拨号的
叫作全向猫,就是一种加电后自动的进行拨号的工作,然后留给我们的接口是RJ45,
大连地区一般留给我们的网关都是10.0.0.2,这种设备最容易对付,最后是直接分配
给用户一个固定的IP,相对大家来说也比较容易对付
1.第一种需要进行拨号:
这几种设备都是通过eth接口与计算机进行通讯的,所以先将硬件设备的连接作好,尤
其是宽带猫的,一定要确认无误(否则一会儿要不去可不算我的事情)
然后启动系统,确认系统上是否安装rp-pppoe这个软件(通过rpm -qa|grep pppoe来查
找),如没有安装的用户,在光盘里或是到网上去down一个来,安装上后,以root用户
执行adsl-setup,这样就进入了adsl的资料的设定状态,要求输入申请宽带的用户名以
及其他一些信息,确认没有问题,接受直至最后(里面都是E文,但是一看即能懂,比
较简单,有关一个防火墙的设置,我一般都不用,选0,大家可以具体考虑)。
配置完成后,以root用户执行adsl-start,这样将进行adsl的拨号工作,正常就会一下
上线,如有什么具体问题,去看一下日志(/var/log/messages)里面告诉你什么了。
停掉adsl,执行adsl-stop就可以了(很简单的)
2.另外两种比较容易对付:
全向猫:只要将你的网卡的IP设置成一个10网段的IP,然后网关指到全向猫的IP
上(10.0.0.2),基本上不有太大的问题
 固定IP:就像配置本地儿的网卡一样,将IP,网关,DNS都按申请来的填写上就可以搞定了

0014
让linux自动同步时间(shunz)
vi /etc/crontab
加上一句:
00 0 1 * * root rdate -s time.nist.gov

0015
linux的网上资源有哪些
国外
http://lwn.net/
http://www.tldp.org/
http://www.justlinux.com/
http://www.linuxtoday.com/
http://www.linuxquestions.org/
http://www.fokus.gmd.de/linux/
http://www.linux-tutorial.info/
http://public.www.planetmirror.com/
http://www.freebsdforums.org/forums/
http://www.netfilter.org/documentation/
http://www-106.ibm.com/developerworks/linux/

国内
http://www.fanqiang.com/
http://www.linuxsir.com/
http://www.chinaunix.net/
http://www.linuxfans.org/(deadcat)
http://www.linuxeden.com/
http://www.linuxforum.net/
http://www.linuxaid.com.cn/
http://freesoft.online.sh.cn/
http://www-900.ibm.com/developerWorks/cn/linux/index.shtml
'

 

本文地址:http://com.8s8s.com/it/it35623.htm