监控安装 ERP

系统集成论坛

 找回密码
 注册通行证

QQ登录

只需一步,快速开始

路由器交换机防火墙系统集成商城 优质产品采购平台
查看: 1852|回复: 2
打印 上一主题 下一主题

必学的几个Linux命令

[复制链接]

35

主题

552

帖子

963

积分

正式员工

跳转到指定楼层
1
发表于 2010-3-20 12:40:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
华为金牌代理
以下主要向大家介绍60个必学的Linux命令,这些命令是新手必须掌握的,你只要掌握好了,你的技术会有很大的提升,希望大家看完之后技术会有很高的提升。

60个必学的Linux命令
Linux提供了大量的命令,利用它可以有效地完成大量的工
作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,
就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。
不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。
◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;
◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;
◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;
◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;
◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。
immortality按:请用ctrl+f在本页中查找某一部分的内容或某一命令的用法。
Linux必学的60个命令(1)-安装与登陆命令
login

1.作用
login的作用是登录系统,它的使用权限是所有用户。

2.格式
login [name][-p ][-h 主机名称]

3.主要参数
-p:通知login保持现在的环境参数。
-h:用来向远程登录的之间传输用户名。
如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。
一般界面是这样的:
Manddrake Linux release 9.1(Bamboo) for i586
renrel 2.4.21-0.13mdk on i686 / tty1
localhost login:root
password:
上面代码中,第一行是Linux发行版本号,第二行是内核版本号和登录的虚拟控制台,我们在第三行输入登录名,按“Enter”键在Password后输入账户密码,即可登录系统。出于安全考虑,输入账户密码时字符不会在屏幕上回显,光标也不移动。
登录后会看到下面这个界面(以超级用户为例):
[root@localhost root]#
last login:Tue ,Nov 18 10:00:55 on vc/1
上面显示的是登录星期、月、日、时间和使用的虚拟控制台。

4.应用技巧
Linux
是一个真正的多用户操作系统,可以同时接受多个用户登录,还允许一个用户进行多次登录。这是因为Linux和许多版本的Unix一样,提供了虚拟控制台的
访问方式,允许用户在同一时间从控制台(系统的控制台是与系统直接相连的监视器和键盘)进行多次登录。每个虚拟控制台可以看作是一个独立的工作站,工作台
之间可以切换。虚拟控制台的切换可以通过按下Alt键和一个功能键来实现,通常使用F1-F6 。
例如,用户登录后,按一下“Alt+
F2”键,用户就可以看到上面出现的“login:”提示符,说明用户看到了第二个虚拟控制台。然后只需按“Alt+
F1”键,就可以回到第一个虚拟控制台。一个新安装的Linux系统允许用户使用“Alt+F1”到“Alt+F6”键来访问前六个虚拟控制台。虚拟控制
台最有用的是,当一个程序出错造成系统死锁时,可以切换到其它虚拟控制台工作,关闭这个程序。
shutdown

1.作用
shutdown命令的作用是关闭计算机,它的使用权限是超级用户。

2.格式
shutdown [-h][-i][-k][-m][-t]

3.重要参数
-t:在改变到其它运行级别之前,告诉init程序多久以后关机。
-k:并不真正关机,只是送警告信号给每位登录者。
-h:关机后关闭电源。
-c:cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。
-F:在重启计算机时强迫fsck。
-time:设定关机前的时间。
-m: 将系统改为单用户模式。
-i:关机时显示系统信息。

4.命令说明
shutdown
命令可以安全地将系统关机。有些用户会使用直接断掉电源的方式来关闭Linux系统,这是十分危险的。因为Linux与Windows不同,其后台运行着
许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备(硬盘)。在系统关机前使用
shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录。

以下主要讲Fedora 显示设备配置工具介绍,希望对于Fedora 显示设置不太懂的可以看看,希望对大家有所帮助。以下接《Fedora 显示设备配置工具介绍(一)》。

3、gtf的用法;

gtf  h-resolution  v-resolution  refresh  [-v|--verbose]  [-f|--fbmode] [-x|--xorgmode]

举例:我的显示器支持1024x768 ,能达到85HZ,在X模式下;
[beinan@localhost ~]# /usr/X11R6/bin/gtf 1024 768 85 -x
# 1024x768 @ 85.00 Hz (GTF) hsync: 68.60 kHz; pclk: 94.39 MHz
Modeline "1024x768_85.00"  94.39  1024 1088 1200 1376  768 769 772 807  -HSync +Vsync

把上面的输出的信息中Modeline一行,插入到/etc/X11/xorg.conf配置文件中的显示器(Monitor)配置那段中;加入后类似;

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "LCD Panel 1280x1024"
        HorizSync    31.5 - 67.0
        VertRefresh  50.0 - 75.0
        Option      "dpms"
Modeline "1024x768_85.00"  94.39  1024 1088 1200 1376  768 769 772 807  -HSync +Vsync
EndSection
改动后,重启X;重新进入桌面模式;

4、 xdpyinfo工具;

我们通过gtf 工具调整了显示器的属性,我们通过观察一般就知道是不是可行了;比如屏幕不闪动的过于厉害;显示区域处于显示屏正中等;但我们还有一个测试工具xdpyinfo 来测试我们的调整 ;

xdpyinfo - display information utility for X (用于X的显示信息测试工具);

[beinan@localhost ~]$ /usr/X11R6/bin/xdpyinfo
通过这个输出,我们能查看到很多信息,最重要的有如下一段;

default screen number:    0
number of screens:    1

screen #0:
  dimensions:    1024x768 pixels (302x232 millimeters)
  resolution:    86x84 dots per inch
  depths (7):    24, 1, 4, 8, 15, 16, 32
  root window id:    0x3f
  depth of root window:    24 planes
我们可以在 xorg.conf中定义多个显示屏幕,比如 1024x768;800x600等;显示屏的定义的标识符号序列从0开始,以此类推;其实定义好一个就足够用;默认的一般就行;如果我们自己调整,把1024x768类似的加入到screen 中色深为24那段的 Modes 行中;然后把默认色深设置为24就好;

Section "Screen"
        Identifier "Screen0"
        Device     "Videocard0"
        Monitor    "Monitor0"
        DefaultDepth     24
        SubSection "Display"
                Viewport   0 0
                Depth     16
                Modes    "800x600" "640x480"
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
                Modes    "1280x1024" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
        EndSubSection
EndSection
其实上面的一段,我们足可以把色深为16的那段删除或者下面的一段每行前面加#号注掉;因为我们用的是 24的;

SubSection "Display"
                Viewport   0 0
                Depth     16
                Modes    "800x600" "640x480"
EndSubSection
如果我们只有把 DefaultDepth 24 中的24改为16时,这段才起作用;

希望《Fedora 显示设备配置工具介绍》对大家有所帮助。

35

主题

552

帖子

963

积分

正式员工

2
 楼主| 发表于 2010-3-20 13:42:47 | 只看该作者
华为金牌代理
以下主要介绍我的第一次安装Linux系统遭遇,以及怎么度过这个遭遇的,希望对大家有所帮助。不喜欢的可以略过。以下接《Linux 系统硬件管理的基础知识(二)》。

一、开篇叙述我第一次安装Linux系统和接下来的经历

开篇:按照北南兄弟的《FC4菜鸟图文版安装教程》我顺利地以本地SATA硬盘方式安装了FC4. 当时按照建议我把FC4的Linux版本GRUB程序装在了MBR(Main Boot Record主引导记录)里面。

先简单介绍一下我的遭遇:

我的机器没有安装软驱,SATA(也就是俗称串口)接口的硬盘1块,当时配机子的时候考虑到两块硬盘在价格方面比一块相当容量的硬盘要贵出一些,并且我当时也没有太长远的打算到底多大空间分给Windows多少分给Linux,所以我选择了一些Linux入门书上介绍的比较便宜的配置,就是一块硬盘安装以上的两种操作系统。像一般的那样我首先安装了windowsXP(因为windows目前好象没有义务识别linux,后装windows可能带来很多麻烦),由于我买的redhat linux9安装光盘作为引导的内核(不知能不能这样形容)不能识别SATA接口硬盘,当时的提示是:

An error has occurred - no valid devices were found on which to create new file systems.Please check your hardware for the cause of this problem.No hard drives have been found.You probably need to manually choosedevice drivers for the installation to succeed.Would you like to select drivers now?(如果你也觉得眼熟,那么我们遇到过类似的情况,如果看不懂,麻烦您查字典也好google也好自行解决)

解决的办法之一就是我从网上下载了一个FC4的安装镜像(安装盘应该有4张)如果你进的是“ftp://...Fedora/1(或2,3)/...”的话那么恳请您点“向上”按扭然后找形如Fedora/../4/..这个路径下面的文件,那几个路径下应该是FC 1,2,3的镜像。之后我按照“菜鸟教程”里说的那样用wingrub引导安装,之后把linux GRUB装载到MBR里面,然后启动的时候当然是linuxGRUB来调度工作了,之后我学着重编内核(加载了网卡驱动程序)然后下载安装了OpenQ插件,再后来安装完显卡驱动程序配置好后重启,问题出现了...怪我太贪心,分辨率的设置有点偏高了...之后的情况就是Linux可以照常运行,而显示器不做任何反应,从开始用户初始化配置开始显示器就显示没有输入信号.....对我来说这是噩梦的开始,我当时没有任何解决这类问题的办法(也没有刻一张rescue盘),然后就直接格式化开始重新安装一切了.....(End of 遭遇介绍)

后面我发现发言权掌握在LinuxGRUB手里对我来说比较麻烦,所以想找到一个让win GRUB支配启动的办法,再次安装FC4进行分区配置和引导程序选择加载时,我不再选择把GRUB放在MBR里,而是专门分了一个/boot区出来把MBR放进去,寄希望于引导程序自动握手然后开始工作(很天真不是吗?)当时我还选择了Force LBA32选项,然后继续,安装所有的包,提示安装成功,提示重启。然后果然Linux没有被辨认出。这时怎么办??

二、想让WinGrub来支配引导的分析和做法

这时再重装一遍然后加载GRUB吗?且慢,当时提示我已经安装成功了也,我也实在不想再来一遍了..这时要回溯到北南兄弟提供的另一篇文章了:《编译内核操作流程》引用其中这一段:

1、复制bzImage等相关文件,并创建initrd文件;

[root@localhost linux-2.6.12.3]# cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.12.3   [root@localhost linux-2.6.12.3]# cp System.map /boot/System.map-2.6.12.3   [root@localhost linux-2.6.12.3]# cd /boot   [root@localhost linux-2.6.12.3]# /sbin/mkinitrd initrd-2.6.12.3.img 2.6.12.3  我们把 编译出来的bzImage,拷入到/boot目录,拷贝成 vmlinuz-2.6.12.3;

并且用 mkinitrd 来创建imitrd-xxx.img 文件,其中xxx为内核的版本号,是通过 查看 /lib/modules来版本来对应的,我们是编译出

来的是 2.6.12.3,所以就运行上面的命令创建,创建的出来的是initrd-2.6.12.3.img ;不创建这个文件,有时是启动不起来的,比如提示VFS错误等;

看到了吗?我第一次编译内核的时候也就是照着这个路子来的,最重要的是vmlinuz-a.b.c和initrd-a.b.c还有System.map都在/boot路径下面。在这里做一下内核的简要介绍:linux内核用vmlinuz-a.b.c之类的名称存放在/boot目录中,所有的内核版本号采用major.minor.patch编号格式。还有一个重要的基本概念:linux的所有所谓分区啦,文件夹一类的东西都用分区来表示,其实并不难理解,我觉得就好象是第一人称视角游戏和第三人称视角游戏有些相似的地方:Windows是分得很明显地这个是整个系统的哪部分,linux的说法则是我的哪部分下面有什么什么部分组成。同时就有了mount(挂载)的介入了.即使是/boot这样看起来就很吓人的名号,在linux里的表示方法也不过就是根分区(/)下的一部分罢了。

2、wingrub的 menu.lst的写法;

其实在Windows下编辑menu.lst(引导菜单)时已经很明显了,我能够加上

title Fedora Core4 Installation

root (hd0,6)

kernel (hd0,6)/linux/vmlinuz

initrd (hd0,6)/linux/initrd.img    (我的设置是这样的Fat32格式引导安装的分区)

这样一段,难道就不可以在menu.list文件里添加诸如:

title Fedora Core (2.6.11-1.1369_FC4)

root (hd0,7)

kernel /vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/ rhgb quiet

initrd /initrd-2.6.11-1.1369_FC4.img      

加注:因为我单独分了boot分区所以写成这样,如果没有单独的boot分区的话应该是下面这样

title Fedora Core (2.6.11-1.1369_FC4)_te1

root (hd0,7)

kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/ rhgb quiet

initrd /boot/initrd-2.6.11-1.1369_FC4.img

这样一段来引导linux系统吗?当然,没有人给我说不可以。结果是这办法可行 =) 因为我就是这么做的。之后重编译内核后要加载内核什么的办法类似,我就不再多说什么了。

以下主要讲述在Linux系统中存储设备的两种表示方法,没事发出来,希望对一些不懂得有所帮助。懂的话就可以略过了。

35

主题

552

帖子

963

积分

正式员工

3
 楼主| 发表于 2010-3-20 13:43:27 | 只看该作者
华为金牌代理
四、关于存储设备的不同的表示方法的应用;

1、/dev/hd[a-z] 表示方法的应用

1)用于mount 挂载文件系统(分区)之用;

我们在前面所说的,硬盘的分区/dev/hd[a-z]X表示方法,一般是用于挂载和读取文件系统之用的;

[root@localhost ~]# fdisk -l   Disk /dev/hda: 80.0 GB, 80026361856 bytes  255 heads, 63 sectors/track, 9729 cylinders  Units = cylinders of 16065 * 512 = 8225280 bytes   Device Boot      Start         End      Blocks   Id  System  /dev/hda1   *           1         970     7791493+   7  HPFS/NTFS  /dev/hda2             971        9729    70356667+   5  Extended  /dev/hda5             971        2915    15623181    b  W95 FAT32  /dev/hda6            2916        4131     9767488+  83  Linux  /dev/hda7            4132        5590    11719386   83  Linux  /dev/hda8            5591        6806     9767488+  83  Linux  /dev/hda9            6807        9657    22900626   83  Linux  /dev/hda10           9658        9729      578308+  82  Linux swap / Solaris

比如我要挂载 /dev/hda9 到系统中;所以过程应该是这样的;

[root@localhost ~]# mkdir /opt/data/  注:建立挂载点目录;
[root@localhost ~]# mount /dev/hda9 /opt/data/  注:挂载;

是不是挂载好了呢?看下面的信息,显示已经挂载好了,所以这时我们就能向/opt/data目录写东西了,写的所有东西都记录在了/dev/hda9上;

[root@localhost ~]# df -lh
Filesystem            容量  已用 可用 已用% 挂载点
/dev/hda7              11G  9.2G  1.1G  90% /
/dev/shm              236M     0  236M   0% /dev/shm
/dev/hda9              22G  3.9G   18G  18% /opt/data

注意:挂载得需要内核支持,另外分区也得建立文件系统,请参考相关文档 ;

2)用于GRUB中指定Linux的根分区的位置;
在GRUB系统引导管理器,用命令行启动一个操作系统时,要通过指定Linux根/所在的硬盘分区 /dev/hd[a-z]X;比如 root=/dev/hda7 ;

2、hd[0-n] 表示方法的应用;
这种一般是应用在GRUB的/boot所位于的硬盘分区的指定上;在GRUB的命令行和GRUB的配置文件menu.lst 中都要应用到;

比如我们要把GRUB写到硬盘的MBR上,在GRUB的命令行模式中要通过root (hd[0-n],y)来指定;这里的root (hd[0-n],y),在GRUB中就/boot所位于的分区;不要搞错了,有时/boot和Linux的根/并不是处于同一个分区的,就看您安装Linux时怎么安装的了;而我们前面所说的root=/dev/hd[a-z]X来指定的是Linux 根/所位于的分区;虽然有时/boot和/同处一个分区,但两种表示方法在GRUB中各有用途;明白了吧;

比如/boot位于同一个硬盘分区,就可以用类似下的方法来把GRUB写到硬盘的MBR上;举个例子;

[root@localhost ~]# grub  注:运行GRUB;   grub> root (hd0,6)  注:比如/boot位于 (hd0,6)分区上,应该这样  Filesystem type is ext2fs, partition type 0x83   grub> setup (hd0)  Checking if "/boot/grub/stage1" exists... yes  Checking if "/boot/grub/stage2" exists... yes  Checking if "/boot/grub/e2fs_stage1_5" exists... yes  Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  15 sectors are embedded.  succeeded  Running "install /boot/grub/stage1 (hd0) (hd0)1+15 p (hd0,6)/boot/grub/stage2  /boot/grub/grub.conf"... succeeded  Done.
grub>quit 注:退出GRUB命令行模式;
如果您不懂,慢慢就会了,我这里写的只是为了应用罢了;如果您要搞懂为什么Linux的存储设备表达上是这样或者那样的,还是建议您看看kernel的文档;可能中文文档并不能满足您的需要,最好还是洋文的吧;

希望《在Linux系统中存储设备的两种表示方法》对你有所帮助。
您需要登录后才可以回帖 登录 | 注册通行证

本版积分规则

联系我们| 手机版|系统集成论坛 ( 京ICP备11008917号 )

GMT+8, 2024-5-8 05:26 , Processed in 0.075034 second(s), 26 queries .

系统集成论坛

BBS.XTJC.COM

快速回复 返回顶部 返回列表