Linux基础自学手册 手把手教你使用linux

本文发布时间: 2019-Mar-22
内容简介这篇分享面对的对象主要是想要快速上手使用linux系统,但又从未接触过linux的同学。文档主要描述的是linux操作系统的基本使用方法,没有涉及到linux下的程序设计,所以主要是偏应用而不是研发。为了方便大家在自己的电脑上使用自己的linux系统,文档中第一、二章介绍了vmware虚拟机使用的详细步骤和redhat企业版操作系统的安装流程。根据一般linux系统的使用情况,文档第三章介绍了终端的概念和linux下的常用命令,第四章介绍了系统的文件目录结构,使用户能按照linux不同目录的不同功能去正确地使用系统。第五章介绍了linux系统下应用最广泛的vi编辑器,在此基础上再介绍gcc编译器的使用,基本满足了linux下写简单程序所需掌握的要求。第七和第八章是根据linux下配置系统时经常遇到的脚本文件和makefile文件做一个简单介绍,希望达到看懂文件并能准确修改以解决工作问题的目的。由于水平有限,文章中难免会有许多的错误,希望和大家一起讨论,共同进步。一、vmware虚拟机的使用在虚拟机没有流行之前,人们要想在日常中使用linux系统一般都是通过装双系统。但是这样windows和linux的交互往往要通过搭建samba服务器,对于新手来说学习linux系统显得非常麻烦和困难。现在通过使用虚拟机,可以在电脑上同时运行多个操作系统,而且虚拟机提供的各种扩展功能使linux的使用和安装都变得非常方便。下面介绍比较常用的虚拟机vmware的使用。打开vmware,点击如图new virtual machine 按钮,弹出如图1-2所示的新建虚拟机界面,选择typical,可以更简单得配置虚拟机的参数,其实很多参数默认的就可以,而且选择custom时配置的参数等虚拟机装好之后还是可以修改的,为了更快的装上系统,这里选择typical安装。图 1-1图 1-2点击next,进入选择安装方式目录,可以选择从光驱安装或是从操作系统镜像安装,现在网络上都有各种操作系统的iso镜像,只要下载下来就可以安装了,同时在公司的共享目录: 系统集成应用软件部操作系统中也有如图1-4的redhat企业版镜像,将镜像复制到本地目录,并在installer disc image file(iso) 选项中选中复制过来的镜像文件,点击next进入下一步。图1-3图1-4如图1-5,输入用户名和密码,该用户是你登录系统时的默认用户,下面注释的意思是此次给dahua设置的密码同时也是root用户的密码。和ubuntu系统不同,redhat在系统安装时就会给系统建立root用户,而ubuntu要在安装后新建root用户。图1-5填好用户名和密码后进入图1-6界面,填写虚拟机的名字和存放路径,随后设置虚拟机硬盘大小(图1-7)。这里设置的大小其实只是一个虚拟的硬盘最大限额,其实际大小在安装好后往往只占3G左右,所以这里设置20G不用担心,不会一下子用掉硬盘20G空间。这个20G设置本来的意思是以后虚拟机的数据不断变多,其占的空间也会不断变大,但是最大不能超过20G。不过vmware自身又能在安装后系统后修改这个值,所以这里设置多少其实关系不大,不够以后再改就行了。图1-6图1-7最后进入如图1-8界面,显示的是新建虚拟机的配置信息,这些信息基本都可以再修改,点击finish配置完成,进入安装操作系统界面。图1-8二、redhat操作系统2.1安装redhat现在安装操作系统步骤都非常简单,基本都下一步就可以了,而redhat安装基本连下一步的选项都不用,直接等待结束就可以了,如图2-1.在安装过程中,vmware还会自动安装上vmware tools,这个工具以前都是手动装的,现在随着vmware版本的升级,功能做得越来越完善了。通过这个工具,用户可以方便的在主机界面(对我们来说是windows)和虚拟机界面(redhat)自由切换,还可以来回复制粘贴,文件共享等。图2-1最后安装vmware tools时间比较久,要耐心等待,完成后就是会提示输入用户名和密码,如图2-2,输入之前设置的用户名dahua和密码可以登录了,当然,这里也可以使用root用户登录,密码同dahua的一样。图2-2登录系统后就能看到redhat的桌面(图2-3),桌面上有大家熟悉的我的电脑,回收站等图标。Linux系统最初是没有图形界面的,用户的操作都是在终端中进行,后来为了降低使用的难度,增加用户群体,开发出了图形操作界面,使用户能像使用windows一样使用linux操作系统。图2-32.2 设置文件夹共享Linux下和windows共享文件比较常用的samba,现在vmware自带了共享windows下文件夹的功能,通过此功能,能使虚拟机中的系统使用到主机的文件。设置步骤如下:Vm->settings->options,在图2-5中选择always enabled ,点击add,在图2-6中选择要共享的windows目录,我选择了整个D盘,并为该目录取个名字。图2-4图2-5图2-6图2-7完成后,就可以在/mnt/hgfs/D/目录下看到windows中D盘的内容,如图2-8是在图形界面下打开linux下/mnt/hgfs/D/ 目录显示的内容,对这个目录的操作相当于在windows下对D盘中文件的操作,可以方便得实现数据共享。图2-8三、终端的介绍与使用3.1 shell的介绍虽然如前面看到的,现在的linux系统可以像windows系统一样,使用图形界面进行方便得操作,但是大多数的情况下人们是不使用图形界面的linux系统的,因为工作中往往是通过远程登录linux服务器,所有的操作都要在终端界面下进行,所以了解linux下shell终端的使用是必须的。Shell是一个系统程序,在前台提供Linux系统与用户交互操作的界面;另外一方面Shell是一个命令的编译解释器,会将用户命令经过编译和解释后,交给内核进行执行,也就是说将用户命令解释为系统和内核可以理解和识别的机器语言。我们目前所使用的操作系统实际上是一个核心(内核Kernel)。作为使用者无法直接对内核(Kernel)进行操纵,而是通过内核的“外壳程序”来与内核进行沟通,这个外壳程序因此得名,实际上就是Shell。Shell是使用者与系统的一个互动界面,主要是要使用者通过命令行来完成工作,所以Shell的定义就是命令的编辑解释器:将使用者的命令翻译给核心;将核心处理结果翻译给使用者。当用户登录的时候,就获得了一个Shell。Shell和内核实际上是不同的两套软件:不同的操作系统上可以使用不同的Kernel,而相同的操作系统上也可以使用不同的Shell。Shell的种类如下,使用最广泛的是bash,其它的使用方法基本相同,只需了解一下。① Bsh:是Bourne Shell的简称,是较早的UNIX Shell程序,实现了基本的Shell程序功能,除了承担命令解释器的功能外,Bsh还是编程语言。② Csh:是C Shell的缩写,使用C语言的语法风格。Csh与Bsh相比,更加适合于用户命令交互。③ Ksh:结合了Bsh和Csh两者的功能优势,兼有Bsh的语法和Csh的交互特性。④ Bash:是Bsh的升级替代品。是GNU项目的成员,也是著名的开源软件项目。大多数Linux发行版本都使用Bash作为默认的Shell,当运行Shell程序时,系统实际运行的是Bash程序。3.2 linux基本命令图3-1如图3-1,找到terminal,将其拖到桌面方便以后使用。打开terminal显示如图3-2.表示本地的root用户在使用此终端。图3-2Linux下常用的命令如下表3-1,其中红色的表示我认为更加简单实用的命令,这些命令的使用频率非常高,一定要好好掌握。 ?命令解释用法举例ls显示某一个目录下的内容(文件和目录)用法:ls或者ls目录lsls后为空时表示显示当面目录下的内容。可以在ls后面加上所要查看的目录路径名称ls / ls /home/ ls /etc/sysconfls -l详细显示用法:ls–l或者ls–l目录ls -l注:l为字母,不是数字1。ls–l /homels -a显示所有的文件用法:ls–a或者ls–a目录ls–a以.开始的文件为隐藏文件,此时也会显示,其他情况下不显示ls–la /etc/cp复制文件用法:cp原文件目标文件cp /home/lion/test1 /home/lion/test/test2注:文件可以加上路径名cp -r复制整个目录用法:cp–r原目录目标目录cp /home/lion/mjli /home/lion/test/mjli2注:目录下的所有文件都会复制mv移动文件或者目录和cp用法类似,但是移动后,原文件或者目录不存在。mv /home/lion/test1 /home/lion/test2注:移动目录时不用-r参数mv /home/lion/mjli /home/lion/mjli2touch创建文件用法:touch文件名touch /home/lion/test1mkdir创建目录用法:mkdir目录名touch /home/lion/mjlirm删除文件用法:rm文件名rm /home/lion/test1rm -r删除目录用法:rm–r目录名rm–r /home/lion/mjli2rmdir删除空的目录用法:rmdir目录名rmdir /home/lion/mjli2注:此目录必须为空,否则无法删除cd改变目录路径用法:cd目录名cd /etccd /home/lioncd ..到上一层目录中用法:cd ..cd ..cd /到根目录下用法:cd /cd /pwd显示当前的目录路径用法:pwdpwdcat查看文件内容用法:cat文件名cat /home/lion/test1more查看较长内容的文件用法:more文件名ls–l | more注:more可以和别的命令连用,如ls–l | moremore /home/lion/test2注:在显示中, 按空格键滚动一页,按回车键滚动一行,按q键退出 less查看较长内容的文件与more用法类似。less /home/lion/test2在显示中,按y可以向上滚动一行ps aux查看系统的进程注意:参数aux最好一起使用ps auxkill -9杀死进程用法:kill -9 PIDkill -9 1231注:PID(进程ID)可由ps aux命令来获取w显示在线用户信息用法:ww注:比命令who的信息详细whotop显示系统任务信息,包括cpu、内存等用法:toptopmesg是否接受其他人的write信息用法:mesg y或者mesg nmesg y注:y为接受,n为不接受。mesg nwrite传送信息给其他用户用法:write用户或者write用户TTY。write lion注:TTY用于有区别多个同样的用户,可由w命令来获取。write lion pts/2passwd修改密码用法:passwdpasswd注:超级用户可修改其他用户密码,此时为passwd用户du显示目录下的各个文件的占用磁盘情况(包括子目录下文件)用法:du目录名du注:无目录名时为当前目录du /home/liondu -s显示目录下的所有文件的大小用法:du–s目录名du–s注:无目录名时为当前目录du–s /home/liondate显示系统日期和时间用法:datedateuptime显示系统运行时间用法:uptimeuptimeclear清除当前屏幕用法:clearclearwc统计文件,给出文件的行数、字数、字符数用法:wc文件名wc /home/lion/test1grep过滤文本和其他命令连用,如ls–l|grep stringls |grep sring为只显示具有string的行cat /home/lion |grep hehecat文件名|grep string为只显示文件中具有string的行ps aux|grep test1grep–n过滤文本,把所找到的行在行前加上行号列出用户与grep类似,加上参数即可ls–l|grep–n stringps aux|grep -n test1grep–v过滤文本,把不包含给定string的行列出用户与grep类似,加上参数即可ls–l|grep–v stringps aux|grep–v test1grep string -r搜索文本用法:grep string–r目录名grep string–r /在给定目录下搜索所有文件中含有string的行grep hehe–r /home/lion注:也可加-n–v参数。 df查看系统硬盘信息用法:dfdffree查看系统内存信息用法:freefreeping查看与对方机器是否连接用法:ping IP地址或者域名ping bbs.ustc.edu.cnping 202.38.64.1ifconfig查看系统网卡信息用法:ifconfigifconfig注:一般用户用/sbin/ifconfigifconfig|moreroute查看系统的路由信息用法:routeroute注:一般用户用/sbin/routeecho回应输入内容用法:echo stringecho hello注:结果将显示stringecho hehewhoami显示当前正在进行操作的用户名用法:whoamiwhoamiexit退出登录系统用法:exitexitchmod见下面说明ctrl+C中止程序执行用法:ctrl+Cctrl+Cctrl+D退出系统用法:ctrl+Dctrl+Dhalt关闭计算机用法:halthaltreboot重启计算机用法:rebootreboot 表3-1chmod为改变文件权限。在linux中,一个文件上有可读(r)可写(w)可执行(x)三种模式,分别针对该文件的拥有者(onwer)、同组者(group),和其他人(other)。一个文件如果改成可执行模式则系统就将其视为一个可执行文件,而一个目录的可执行模式代表使用者有进入该目录之权利。chmod就是用来变更一些文件的模式,其使用方式如下:chmod [-R] mode 文件名-R将所有子目录及文件改为你所要改成的模式。其中模式即可以用数字表示也可以用字母表示,分别表示如下:(1)数字按照拥有者、同组者、其他人的顺序,给出一个三位的数字,r为4,w为2,x为1,例如 765 第一个数字7表示拥有者具有r+w+x的权限(7=4+2+1),第二个数字6表示同组者具有r+w权限(6=4+2),第三个数字5表示其他人具有r+x权限(5=r+x)。用法: chmod 765 文件名可将其中的数字更改为所需要的权限即可。(2)字母用法:chmod [ugo]+/-[rwx] 文件名例如:chmod u+r /home/lion/test1 chmod ug+rx /home/lion/mjli/hello.com其中[]可以同时出现,其意义分别如下:+或者-rwxuu+r, u-r表示拥有者拥有或者取消可读权限u+w, u-w表示拥有者拥有或者取消可写权限u+x, u-x表示拥有者拥有或者取消可执行权限gg+r, g-r表示同组者拥有或者取消可读权限g+w, g-w表示同组者拥有或者取消可写权限g+x, g-x表示同组者拥有或者取消可执行权限oo+r, o-r表示其他人拥有或者取消可读权限o+w, o-w表示其他人拥有或者取消可写权限o+x, o-x表示其他人拥有或者取消可执行权限表3-2 其他常用:解释>输出由屏幕重定向到文件中,文件原来内容被清空用法:命令 > 文件名注:命令可以为以上的命令,文件名可有目录路径ls –l > /home/lion/lsresult>>输出由屏幕重定向到文件的末尾中,文件原来内容被保留类似 >,只是保留了原文件的内容。ls –l >> /home/lion/lsresult<输入重定向,由文件的内容代替键盘输入用法:命令 < 文件名注:命令可以为以上的命令,文件名可有目录路径wc < /home/lion/hehe|连接两个命令(前一个命令的结果作为后一个命令的输入)用法:命令 | 命令ls –l | morels | grep hellols | wc.当前目录用法:./文件或者目录ls ./cp /home/lion/mjli ./test/..上一目录用法:../文件或者目录cd ..cp ../test1 ./home/lion/&命令作为后台命令执行用户:命令 &gw03 test &表3-3简单演示如图3-3图3-3如图3-3,对图中操作做一个简单的解释。当前在根目录下,所以pwd命令显示“/”。使用ls显示“/”目录下的文件信息。通过cd root 进入root目录,这里因为是用root用户登录的,所以有权限进入,一般用户是无法查看root目录的内容的。使用mkdir创建目录testdir使用touch创建一个空文件test.txt通过ls –l 查看test.txt的详细信息,显示如下-rw- r- -r- - 1 root root 0 Aug 11 01:30 test.txt代表的意思分别是:文件类型+权限 硬链接数(1)该文件拥有者拥有者所在的组文件大小(0字节)最近修改时间文件名ls –a 显示当前目录下所有文件,包括.号开头的隐藏文件,其中(.)表示当前目录,(..)表示上一层目录。通过cp命令拷贝,ll显示两者有着相同的信息。当忘记一个命令的具体用法时,最好的办法其实就是查看linux自带的帮助手册,使用man指令查看,如man ls就会显示ls的具体用法,帮助手册的内容非常全面,网络上大部分的解释其实就是翻译了linux自带帮助手册的内容,所以大家一定要好好利用这个强大的工具,来帮助解决工作中遇到的问题。四、文件目录结构的介绍4.1文件类型介绍Linux文件类型常见的有:普通文件、目录文件、字符设备文件、块设备文件、符号链接文件、管道文件、socket文件等;下面做一个简要的说明:1 普通文件(-)1 2 3[root@localhost ~]# ls -lh install.log -rw-r--r-- 1 root root 53K 03-16 08:54 install.log 我们用 ls -lh 来查看某个文件的属性,可以看到有类似 -rw-r--r-- ,值得注意的是第一个符号是 - ,这样的文件在Linux中就是普通文件。这些文件一般是用一些相关的应用程序创建,比如图像工具、文档工具、归档工具... .... 或 cp工具等。这类文件的删除方式是用rm 命令;2 目录(d)1 2 3 4 5 6 7 8 9 10 11 12 13 14 15[root@localhost ~]# ls -lh 总计 14M -rw-r--r-- 1 root root 2 03-27 02:00 fonts.scale -rw-r--r-- 1 root root 53K 03-16 08:54 install.log -rw-r--r-- 1 root root 14M 03-16 07:53 kernel-6.15-1.2025_FC5.i686.rpm drwxr-xr-x 2 1000 users 4.0K 04-04 23:30 mkuml-2004.07.17 drwxr-xr-x 2 root root 4.0K 04-19 10:53 mydir drwxr-xr-x 2 root root 4.0K 03-17 04:25 Public


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:09pm
栏目列表