首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Linux使用及管理中的一些小技巧

Linux使用及管理中的一些小技巧

如何制作应急启动盘
在安装Linux时系统会提示制作一张应急启动盘, 这时一定要选择制作, 以便在今后 系统由于故障不能正常启动时用来恢复系统. 但有时忘了在安装时制作应急启动盘, 或应急启动盘损坏, 但又需应急启动盘来恢复系统, 这时可以用以下方法临时制作 一个应急启动盘:
做张DOS的启动盘(在DOS下, 用format a:/s命令).
将RedHat Linux安装光盘中的dosutils/loadlin.exe和
dosutils/autoboot/vmlinuz两文件拷入该dos启动盘.
在该DOS盘中用edit等编辑器产生一个"autoexec.bat"文件, 文件内容为:
loadlin vmlinuz root=/dev/hda1 ro
其中root=/dev/hda1须视具体情况而定. 如果linux(系统文件:/)安装在第一ide口的 第二个硬盘的第一个分区, 则为root=/dev/hdb1. 若为第二个ide口的第一个硬盘的第一个linux分区, 则为root=/dev/hdc1. 依此类推.
这样一个临时应急启动盘就做好了, 用它就可以重新启动Linux.
制作 Linux 自启动光盘(CD-R)
所用软件:
   mkhybrid ,支持 Joliet 长文件格式。
   RedHat 有 mkisofs,但mkisofs不支持 Joliet 长文件格式。  
   
命令:

   mkhybrid -o RH51.iso -b images/boot.img -c images/.boot.catalog
            -R -J -T -V RedHat51 /RedHat-5.1

说明:  /RedHat-5.1  
            RedHat 5.1 所在的路径。
        -o  RH51.iso   
            输出ISO文件名,可以带绝对路径
        -b  images/boot.img
            制作自启动光盘的image文件,应当是1。44M 或1。2M 大小
            该Img文件所处路径是相对路径,本例中是在/RedHat-5.1
            下的images/boot.img
        -c  images/.boot.catalog
            自启动的catalog文件,在生成ISO文件时产生。
        -R   
            Rocket Rodge 格式,该选项是必需的。
        -J   
            Joliet 格式
        -V  RedHat51
            光盘的卷标(Volume)  

更具体的可以 man mkhybrid 得到。

生成的ISO文件可以用Easy-CD Creator Deluxe 刻到光盘.
不能把ISO文件直接刻上去
从File->Create CD from DISC image 再选ISO文件!
如何在命令行中输入中文
bash 下: 编辑 ~/.input, 内容为:
set meta-flag on
set convert-meta off
set output-meta on

tcsh 下: 设置环境变量:
setenv LC_CTYPE ISO8859-1

对于后者, 会导致 console 上的 X 不能正常退出, 这时应该 unsetenv LC_CTYPE

btw: tcsh 下, 很多环境变量能够影响.
Linux中,超级用户root的口令忘了怎么办?
Linux中,root口令丢了,完全没必要重装.解决办法:用boot盘和root盘启动,进入到 安装状态,然后把文件系统mount到一个目录里,如/mnt里,随后修改/etc/passwd即可.
使用虚拟控制台
登录后按Alt+F2键这时又可以看到"login:"提示符, 这个就是 第二个虚拟控制台. 一般新安装的Linux有六个虚拟控制台, 可以用Alt+F1$\sim$ Alt+F6来访问. 虚拟控制台最有用的时候是当一个程序出错锁住输入时可以切换到其他虚拟控制台登录 进入后杀掉这个出错的进程.
注意在X-Window运行时要切换到虚拟控制台需按 Ctrl+Alt+Fn键, 而不能用Alt+Fn键, 从虚拟控制台回到X-Window可按Ctrl+Alt+F7 或 Alt+F7.
拷贝与粘贴
字符界面: 不管是Slackware 还是RedHat 安装后每次启动时都会自动运行 一个叫gpm的程序, 该程序运行后就可以用鼠标来拷贝与粘贴了. 具体做法是按住鼠标左键拖动使要拷贝的地方反白, 这时反白的区域已经被拷贝, 再按鼠标右键拷贝的内容就会被粘贴在光标所在位置了.
X-Window下: 拷贝的操作与字符界面下一样, 三键鼠标的话按中键粘贴, 两键鼠标的话同时按左右键粘贴(须在配置XF86时在鼠标的设置里选择 Emulate 3 Button).
快速进入某些目录
键入 cd~~或~~cd $\sim$ 可进入用户的home目录.
键入 cd - 可进入上一个进入的目录.
键入 cd .. 可进入上一级目录.
用Tab键自动匹配文件和命令
在Linux下使用命令或文件时, 只需输入前几个字母, 然后按Tab键, 系统就 会自动匹配命令或文件名, 显示出完整的命令或文件名. 若可以匹配的 命令或文件名不只一个, 它会列出全部匹配的名字供你选择. 它匹配命令 时会在所有的命令路径中寻找匹配, 而匹配文件时则匹配指定的目录. 用Tab键可以大大提高工作效率.
软驱的使用
如果软盘的格式是Linux的ext2文件系统用如下命令:
mount -t ext2 /dev/fd0 /mnt
DOS格式的软盘则用命令:
mount -t msdos /dev/fd0 /mnt
然后就可以在/mnt里访问软盘的内容了, 注意在取出软盘 之前要先卸掉软盘上的文件系统:
umount /mnt
否则会导致信息丢失.
在软盘上建立文件系统可用如下命令:
mke2fs /dev/fd0 1440
操作DOS格式的软盘也可不必mount, 而直接使用mtools命令, 例如:
列DOS A:软盘目录用: mdir a:
把文件example.txt拷贝到DOS A:软盘上用: mcopy a:
把DOS A:软盘上的文件example.txt删除则用: mdel a:
其他命令可参考mtools的man page.
Linux下显示彩色目录列表
打开/etc/bashrc, 加入如下一行:
alias ls="ls --color"
下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下:
蓝色$\rightarrow$ 目录
绿色$\rightarrow$ 可执行文件
红色$\rightarrow$ 压缩文件
浅蓝色$\rightarrow$ 链接文件
灰色$\rightarrow$ 其他文件
显示文件的类型
用命令 file 可以使你知道某个文件究竟是ELF格式的可执行文件,还是shell script文件或是其他的什么格式, 例如:
file startx
命令文件的路径
当你键入一些命令如find, shutdown, mount, startx时是否想过要知道这些文件究竟放在哪个目录里? 用命令 whereis 可以实现.如:
      whereis startx
查找文件
find 命令要加一些参数才能查到文件, 如命令:
find /usr -name XF86Setup -print
将在/usr里查找文件XF86Setup.
另外, 用locate命令可以很快地查出所有包含你要查询的符号的文件及其位置, 例如: locate .txt
就可得到所有文件名中包含.txt的文件的列表.
需要注意的是: locate命令查找时依赖于/var/lib/locatedb数据库文件, 使用时需产生并及时更新locatedb数据库, 方法是以超级用户运行命令:
updatedb
删除无用的core文件
程序运行出错后有时候会产生一个名为core的文件, 这个文件一般 很大而且普通用户也很少用到, 可以删除掉以释放空间.
一次解开.tar.gz文件
解开.tar.gz文件一般要先用gunzip解压再用tar解包, 在 Linux下可以一次完成, 如:
tar xzvf sample.tar.gz
显示win95分区里的长文件名
如果你发现win95分区里的长文件命不能显示, 可以重新用 vfat方式来mount. 对于启动时就mount的分区可以修改文件/etc/fstab, 将里面的msdos字样改为vfat. 如 果无法用vfat mount, 则要重新编译一下核心, 加入对vfat的支持.
系统启动后直接进入X, 并出现登录窗口
X-window系统中xdm命令负责管理登录, 因此可在/etc/rc.d/rc.local文件中 加入一行:
exec /usr/X11R6/bin/xdm
即可实现Linux启动后直接进入X, 并出现登录窗口.
强行退出 X
有时候在 X 里由于程序出错鼠标键盘都不起作用, 这时候 不用着急, 因为在Linux下几乎不会像在Win95里那样恶性死机, 你只须键入Ctrl+Alt+BackSpace键就可以退出当前的X-window了.
在win95下读linux ext2分区的方法
这是一个可以让win95只读linux ext2分区的软件.安装在95上就可以
mount上ext2的盘.该软件主页在http://www.yipton.demon.co.uk/
另外一个关于文件分区格式的link也可以去
http://students.ceid.upatras.gr/~gef/fs/index.html

该软件可以从ftp.lib.pku.edu.cn/incoming/fsdext2下得到.其中0.17
是最新版,0.16是stable版.0.17的source在src.zip里

Windows NT下读ext2盘的东西在
http://www.accessv.com/~peeter/#ext2nt

可以找到 。
优盘的使用
优盘是作为SCSI设备mount的。在Red Hat 8.0以后的版本中,将优盘接入USB口,运行命令
      mount /dev/sda1 /mnt/usb
以上命令是假设优盘只有一个分区,如果有两个分区,第二个分区的挂装类似
      mount /dev/sda2 /mnt/usb
mail转发
在HOME下创建文件.forward,里面有一行:
      [email=another_addr@another_domain]another_addr@another_domain[/email]
这样将把发到你邮箱的信全部转发到上述地址。
如果希望转发的同时,也在自己的邮箱中保留原件,则应为
      [email=another_addr@another_domain]another_addr@another_domain[/email], your_addr
列出文件的全路径名
用ls命令可以列出当前目录下文件和目录名,加-R选项可以递归地列出次级目录下的文件和目录名,但是文件名前面都不包含其完整路径。解决的办法是用
      find . -name "*"
批量替换Linux文件的字符串
使用这个脚本,命令
      . substr
显示用法。
从Windows登录Linux主机,如果局域网内无DNS、Windows域服务器、WINS服务器,Linux主机为启用Samba,Windows主机可在c:/windows/system32/drivers/etc/hosts或c: /winnt/system32/drivers/etc/hosts文件中为远程Linux主机定义别名,如
      127.0.0.1 localhost
      192.168.253.129 vmcern
下次登录vmcern这台Linux主机时不必在输入IP地址了,而可以用别名,如
      telnet vmcern
拒绝用户登录
Linux中将某用户的登录shell改为/sbin/nologin,只要/etc/shells中列出了/sbin/nologin,就可以实现用户可以ftp但不能telnet到该机器,同时也意味着该用户不能ssh到该机器和远程执行任何命令。
如果存在文件/etc/nologin,任何用户都不能登录,但可以使用ftp,如果使用telnet登录,/etc/nologin的内容会显示在登录失败后。
屏幕截图
使用ksnapshot,可以截取鼠标指定的窗口或整个屏幕的显示,并指定保存的文件。
或者使用import命令,参见其man pages。
X Manager打开多个远程终端窗口时,为了区分,可以使其窗口的标题(title)显示当前路径名,方法是在.bashrc文件中添加一行:
      PS1="\[\033]0;\u@\h: \w\007\]bash\\$ "
或在.tcshrc中添加一行
      set prompt="%{\033]0;%n@%m:%~\007%}tcsh%# "
或在.cshrc中添加两行
      set host=`hostname`
      alias cd 'cd \!*; echo -n "^[]0;${user}@${host}: ${cwd}^Gcsh% "'
  28. 在linux下使用虚拟光盘的方法
在Linux下使用虚拟光驱 其实根本不需要什么虚拟光驱软件,用mount命令就可以完成。
1. 把光盘制作成iso文件
$cp /dev/cdrom XXXXX.iso
XXXXX.iso为你所命名的镜像文件。执行此命令之后就可以将整个光盘制作成iso文件。XXXXX.iso前你可以加上路径哦。
2.将硬盘上的iso文件加载到光盘(或者说虚拟光驱)。
$mount -t iso9660 -o loop /*/XXXXX.iso /mnt/iso
3.如果是安装系统盘所提供的文件,如添加删除程序,系统可能会提示你插入光盘,但我们没有光盘,只有镜像,怎么办?
对于Redhat,先 mount iso,然后执行
$redhat-install-packages --isodir=/mnt/iso
4.一般情况虚拟光驱
$rm -rf /dev/cdrom #删除光驱
$ln /dev/loop7 /dev/cdrom
$losetup /dev/loop7 /*/XXXXX.iso
$mount /mnt/cdrom
然后你再看看iso文件,是不是变成了虚拟光驱?
取消这个光驱:
$losetup -d /dev/loop7
换盘的话:
只需转移iso关联到/dev/loop
$losetup /dev/loop7 /*/XXXXX.iso
返回列表