Linux从入门到精通52问.docx
《Linux从入门到精通52问.docx》由会员分享,可在线阅读,更多相关《Linux从入门到精通52问.docx(11页珍藏版)》请在冰豆网上搜索。
![Linux从入门到精通52问.docx](https://file1.bdocx.com/fileroot1/2023-1/31/a73b5c0a-1591-49b5-8f21-4694b77fd154/a73b5c0a-1591-49b5-8f21-4694b77fd1541.gif)
Linux从入门到精通52问
Linux从入门到精通52问
<上一帖|下一帖>
Linux从入门到精通52问
Q1Linux的开发者是谁?
A:
芬兰大学生LinusTorvalds
Q2Linux的常见内核版本是多少?
A:
2.6.x
Q3Linux可以运行的硬件平台有哪些?
A:
Dell,IBM,HP,Oracle和VERITAS
Q4
inux1.0版是哪一年发行的?
A:
1994年发表Linux正式核心1.0
Q5交换分区的作用是什么?
A:
用来做虚拟内存,与WINDOWS的页面文件类似
Q6Linux有哪些引导装载方式?
A:
常见的有GRUBLILO
Q7Ext2ext3文件系统用于哪一Linux版本?
AEXT2为redhatlinux7.2前常用文件系统,现行版本通常使用EXT3文件系统
Q8卸载Linux后如何清除MBR
A:
使用FDISK命令可以删除MBR
Q9Linux重新启动与关机命令是什么
A:
halt命令
功能:
关机
格式:
halt[-n][-w][-d][-f][-i][-p]
说明:
若系统的runlevel为0或6,则关闭系统,否则以shutdown指令(加上-h参数)来取代
init命令
功能:
改变系统的运行级别
格式:
init[0123456Ss]
说明:
init是所有行程(process)的父行程(parent),开机时一定会先从这个指令开始(可以用ps-aux看看第一个行程就是init),并参考/etc/inittab档来完成整个开机程序,共有八个执行层级(runlevel),而改变只能透过telinit的指令来更改
参数:
0开机执行层级为0,用来关闭系统
1开机执行层级为1,用来进行单一使用者模式(singleusermode)
5开机执行层级为5,表示进入Xwindow时的模式
6开机执行层级为6,用来重新开机
S或s不是直接使用的,配合开机执行层级1时使用,当加上S或s表示开机后不参考/etc/inittab档235请参照/etc/inittab档案内容以及/etc/rc.d/rc2.d,/etc/rc.d/rc3.d,/etc/rc.d/rc5.d等目录
reboot命令
功能:
重启系统
格式:
reboot[-n][-w][-d][-f][-i]
说明:
若系统的runlevel为0或6,则重新开机,否则以shutdown指令(加上-r参数)来取代
参数:
-n:
在重开机前不做将记忆体资料写回硬盘的动作
-w:
并不会真的重开机,只是把记录写到/var/log/wtmp档案里
-d:
不把记录写到/var/log/wtmp档案里(-n这个参数包含了-d)-f:
强迫重开机,不呼叫shutdown这个指令
-i:
在重开机之前先把所有网络相关的装置先停止
范例:
reboot重开机。
reboot-w做个重开机的模拟(只有纪录并不会真的重开机)。
shutdown命令
功能:
关闭系统
使用方式:
shutdown[-tseconds][-rkhncfF]time[message]
说明:
shutdown可以用来进行关机程序,并且在关机以前传送讯息给所有使用者正在执行的程序,shutdown也可以用来重开机。
参数:
-tseconds:
设定在几秒钟之后进行关机程序
-k:
并不会真的关机,只是将警告讯息传送给所有只用者
-r:
关机后重新开机
-h:
关机后停机
-n:
不采用正常程序来关机,用强迫的方式杀掉所有执行中的程序后自行关机
-c:
取消目前已经进行中的关机动作
-f:
关机时,不做fcsk动作(检查Linux档系统)
-F:
关机时,强迫进行fsck动作
time:
设定关机的时间
message:
传送给所有使用者的警告讯息
Q10常见的3种X-windows桌面环境是什么?
A:
CDEKDEGNOME
Q11Linux文件和目录权限是如何划分的,Umask命令的作用和用法?
A
INUX文件都具有4种存取权限r读取、w写入、x执行、-无权限。
功能:
系统管理员使用umask为用户设置默认的权限
格式:
umaskmode
说明:
umask022,表示文件的默认权限屏蔽为022:
则新建文件夹文件权限为666-022=644
umask–S显示当前屏蔽码
果你不想每次登陆修改的话,可以在`/.bash_profile加上umask077。
Q12如何改变文件及目录的权限
A:
使用chmod命令Q13如何改变文件的所有者
A:
使用chown命令
Q14如何显示磁盘分区的大小
A:
使用dfdu命令
Q15CD命令的作用和用法
A:
功能:
改变当前目录
格式:
cd路径
说明:
1)cd:
回到目前登录用户的主目录。
2)cdtoday:
切换到主目录下层的today目录。
3)cd..:
回到上一层目录。
4)cd/:
直接切换到根目录。
5).代表当前目录
6)..上一级目录
7)ls文件名:
显示该文件的信息
Q16如何添加用户?
A:
使用adduser命令
Q17普通用户的UID最大值是多少?
A:
通常是4294967295
Q18如何删除文件的默认权限?
A:
使用umask777清除文件的所有权限
Q19文件系统的挂载与卸载方法
A:
功能:
挂载文件系统
格式:
mount[-参数][设备名称][挂载点]
说明:
其中常用的参数有
-t指定设备的文件系统类型,常见的有:
ext2linux目前常用的文件系统
msdosMS-DOS的fat,就是fat16
vfatwindows98常用的fat32
nfs网络文件系统
iso9660CD-ROM光盘标准文件系统
ntfswindowsNT2000的文件系统
auto自动检测文件系统
-o指定挂载文件系统时的选项。
有些也可用在/etc/fstab中。
常用的有
ro以只读方式挂载
rw以读写方式挂载
nouser使一般用户无法挂载
user可以让一般用户挂载设备
用途:
卸载文件系统
语法:
umount文件系统
说明:
卸载文件系统使文件系统不可用。
Q20LVM水水什么?
A
VM(LogiclVolumeManager),逻辑卷管理器,通过使用逻辑卷管理器对硬盘存储设备进行管理,可以实现硬盘空间的动态划分和调整。
Q21如何查看当前用户的系统行为?
A:
使用命令w查看当前用户的系统行为,wroot
Q22如何查看曾经登录系统的用户名?
A:
使用who命令查看当前用户登录情况who-u更详细些Q23查看所有进程的方法是什么?
A:
ps命令
功能:
查看进程状态
格式:
ps[选项]
说明:
-e/A 列出所有进程。
-u 选择有效的用户ID。
-p 选择指定终端下的进程。
-C 选择指定的文件名。
-f 列出所有详细信息。
-l 按长格式显示。
-j 按job格式显示。
-x 选择没有控制终端的进程。
Q24删除进程的方法是?
A:
kill命令
功能:
终止进程
格式:
kill[-s|p][-a]PID
说明:
-s 指明发送给进程的信号。
例如-9(强行终止),默认发送TERM信号。
-p 显示进程的ID,不发送信号。
-a 终止所有进程。
0 给所有在当前进程组中的进程发送信号。
-1 给所有进程号大于1的进程发送信号。
Q25如何查看系统开启的端口?
A:
使用netstar命令
Q26什么是LVM物理卷?
A:
物理卷-----PV(PhysicalVolume)物理卷在逻辑卷管理中处于最底层,它可以是实际物 理硬盘上的分区,也可以是整个物理硬盘。
Q27什么是LVM卷组?
A:
卷组--------VG(VolumneGroup)卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。
一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。
Q28什么是LVM逻辑卷?
A:
逻辑卷-----LV(LogicalVolume)逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。
系统中的多个逻辑卷要以属于同一个卷组,也可以属于不同的多个卷组。
Q29什么是LVM物理区域?
A:
物理区域--PE(PhysicalExtent)物理区域是物理卷中可用于分配的最小存储单元,物理区域的大小可根据实际情况在建立物理卷时指定。
物理区域大小一旦确定将不能更改,同一卷组中的所有物理卷的物理区域大小需要一致。
Q30什么是LVM逻辑区域
A:
逻辑区域—LE(LogicalExtent)逻辑区域是逻辑卷中可用于分配的最小存储单元,逻辑区域的大小取决于逻辑卷所在卷组中的物理区域的大小.
Q31什么是LVM卷组描述区域
A:
卷组描述区域-----(VolumeGroupDescriptorArea)卷组描述区域存在于每个物理卷中,用于描述物理卷本身、物理卷所属卷组、卷组中的逻辑卷及逻辑卷中物理区域的分配等所有信息,卷组描述区域是在使用pvcreate建立物理卷时建立的。
Q32如何复制文件
A:
cp/test1/file1/test3/file2:
将目录test1下的文件file1复制到test3目录下, 并更名为file2。
cp–axdir1dir2:
a:
是指复制指定的目录,并包含其下的所有文件和子目录。
x:
此文件的格式变为和目的地扇区的文件系统相同的。
Q33如何移动文件
A:
mv/test1/file1/test2/file2:
将test1目录下的file1文件复制到test2目录下, 并更改名为file2。
mvfile1file2将文件名file1改为file2
Q34如何查找文件?
A:
$find ~ -name "*.txt" -print #在$HOME中查.txt文件并显示$find . -name "*.txt" -print$find . -name "[A-Z]*" -print #查以大写字母开头的文件$find /etc -name "host*" -print#查以host开头的文件$find . -name "[a-z][a-z][0--9][0--9].txt" -print #查以两个小写字母和两个数字开头的txt文件$find. -perm 755 -print$find . -perm-007 -execls-l{}\; #查所有用户都可读写执行的文件同-perm777$find .-typed -print$find . !
-type d -print$find . -typel -print$find . -size +1000000c -print #查长度大于1Mb的文件$find . -size 100c -print #查长度为100c的文件$find . -size +10 -print #查长度超过期作废10块的文件(1块=512字节)
Q35压缩与解压缩命令是什么?
A:
功能:
将文件归档
格式:
tar参数归档文件名称文件或目录
说明:
压缩一组文件为tar.gz后缀。
#tarcvfbackup.tar/etc
#gzip-qbackup.tar
或
#tarcvfzbackup.tar.gz/etc/
释放一个后缀为tar.gz的文件。
#gunzipbackup.tar.gz
#tarxvfbackup.tar
或
#tarxvfzbackup.tar.gz
用一个命令完成压缩
#tarcvf-/etc/|gzip-qc>backup.tar.gz
用一个命令完成释放
#gunzip-cbackup.tar.gz|tarxvf-
解开tar.Z的文件
#tarxvfzbackup.tar.Z
或
#uncompressbackup.tar.Z
#tarxvfbackup.tar
解开.tgz文件
#gunzipbackup.tgz
压缩和解压缩.bz2的包
#bzip2/etc/smb.conf
这将压缩文件smb.conf成smb.conf.bz2
#bunzip2/etc/smb.conf.bz2
这将在当前目录下还原smb.conf.bz2为smb.conf
注:
.bz2压缩格式不是很常用,你可以manbzip2
Q36如何显示系统环境变量?
A:
env命令
功能:
显示环境变量
格式:
env
说明:
显示当前环境
env
假设有一角本my_job用来下世环境变量LANG的当前位置。
在不修改LANG变量时,使用env命令执行角本my_job,如下:
envPATH=/u/testuser/jobs:
$my_job
LANG=C
当在env命令中修改了LANG的值后将有:
EnvLANG=C++PATH=/u/testuser/jobs:
$PATHmy_job
LANG=C++
Q37VI的三种命令模式是什么
A:
vi做为Linux系统中一种编辑器,它的使用方法和界面与Unix平台十分相似。
基本上vi可以分为三种状态,分别是命令模式(commandmode)、插入模式(Insertmode)和底行模式(lastlinemode),各模式的功能区分如下:
1)命令行模式commandmode)
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insertmode下,或者到lastlinemode。
2)插入模式(Insertmode)
只有在Insertmode下,才可以做文字输入,按「ESC」键可回到命令行模式。
3)底行模式(lastlinemode)
将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
不过一般我们在使用时把vi简化成两个模式,就是将底行模式(lastlinemode)也算入命令行模式commandmode)。
Q38vi的基本操作
A:
a)进入vi
在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:
$vimyfile
不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(commandmode)」,您要切换到「插入模式(Insertmode)」才能够输入文字。
b)切换至插入模式(Insertmode)编辑文件
在「命令行模式(commandmode)」下按一下字母「i」就可以进入「插入模式(Insertmode)」,这时候你就可以开始输入文字了。
c)Insert的切换
您目前处于「插入模式(Insertmode)」,您就只能一直输入文字,如果您发现输错了字!
想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(commandmode)」再删除文字。
d)退出vi及保存文件
在「命令行模式(commandmode)」下,按一下「:
」冒号键进入「Lastlinemode」,例如:
:
wfilename(输入「wfilename」将文章以指定的文件名filename保存)
:
wq(输入「wq」,存盘并退出vi)
:
q!
(输入q!
,不存盘强制退出vi)
q39命令行模式(commandmode)功能键
A:
1).插入模式
按「i」切换进入插入模式「insertmode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
2).从插入模式切换为命令行模式
按「ESC」键。
3).移动光标
vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。
按「ctrl」+「b」:
屏幕往“后”移动一页。
按「ctrl」+「f」:
屏幕往“前”移动一页。
按「ctrl」+「u」:
屏幕往“后”移动半页。
按「ctrl」+「d」:
屏幕往“前”移动半页。
按数字「0」:
移到文章的开头。
按「G」:
移动到文章的最后。
按「$」:
移动到光标所在行的“行尾”。
按「^」:
移动到光标所在行的“行首”
按「w」:
光标跳到下个字的开头
按「e」:
光标跳到下个字的字尾
按「b」:
光标回到上个字的开头
按「#l」:
光标移到该行的第#个位置,如:
5l,56l。
4).删除文字
「x」:
每按一次,删除光标所在位置的“后面”一个字符。
「#x」:
例如,「6x」表示删除光标所在位置的“后面”6个字符。
「X」:
大写的X,每按一次,删除光标所在位置的“前面”一个字符。
「#X」:
例如,「20X」表示删除光标所在位置的“前面”20个字符。
「dd」:
删除光标所在行。
「#dd」:
从光标所在行开始删除#行
5).复制
「yw」:
将光标所在之处到字尾的字符复制到缓冲区中。
「#yw」:
复制#个字到缓冲区
「yy」:
复制光标所在行到缓冲区。
「#yy」:
例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。
「p」:
将缓冲区内的字符贴到光标所在位置。
注意:
所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
6).替换
「r」:
替换光标所在处的字符。
「R」:
替换光标所到之处的字符,直到按下「ESC」键为止。
7).回复上一次操作
「u」:
如果您误执行一个命令,可以马上按下「u」,回到上一个操作。
按多次“u”可以执行多次回复。
8).更改
「cw」:
更改光标所在处的字到字尾处
「c#w」:
例如,「c3w」表示更改3个字
9).跳至指定的行
「ctrl」+「g」列出光标所在行的行号。
「#G」:
例如,「15G」,表示移动光标至文章的第15行行首。
Q40Shell的使用方法
A:
程序必须以下面的行开始(必须方在文件的第一行):
#!
/bin/sh
符号#!
用来告诉系统它后面的参数是用来执行该文件的程序。
在这个例子中我们使用/bin/sh来执行程序。
当编辑好脚本时,如果要执行该脚本,还必须使其可执行。
要使脚本可执行:
chmod+xfilename
然后,您可以通过输入:
./filename来执行您的脚本。
注释
在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。
变量
在其他编程语言中您必须使用变量。
在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。
要赋值给一个变量,您可以这样写:
变量名=值
取出变量值可以加一个美元符号($)在变量前面:
#!
/bin/sh
#对变量赋值:
a="helloworld"
#现在打印变量a的内容:
echo"Ais:
"
echo$a
在您的编辑器中输入以上内容,然后将其保存为一个文件first。
之后执行chmod+xfirst
使其可执行,最后输入./first执行该脚本。
这个脚本将会输出:
Ais:
Q41什么是正则表达式?
A:
简单的说就是在文件名中使用通配符。
Q42如何更改网络接口的IP地址?
A:
使用ifconfig命令Q43SSH的两种工作级别是什么?
A:
第一种级别(基于口令的安全验证)只要你知道自己帐号和口令,就可以登录到远程主机。
所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。
可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。
第二种级别(基于密匙的安全验证)需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上。
如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。
服务器收到请求之后,先在你在该服务器的家目录下寻找你的公用密匙,然后把它和你发送过来的公用密匙进行比较。
如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。
客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器。
Q44Telnet的工作原理是什么?
A:
当你用Telnet登录进入远程计算机系统时,你事实上启动了两个程序,一个叫Telnet客户程序,它运行在你的本地机上;另一个叫Telnet服务器程序,它运行在你要登录的远程计算机上。
本地机上的客户程序要完成如下功能:
1、建立与服务器的TCP联接;2、从键盘上接收你输入的字符;3、把你输入的字符串变成标准格式并送给远程服务器;4、从远程服务器接收输出的信息;5、把该信息显示在你的屏幕上。
Q45ftp的常用命令有哪些?
A:
1!
[cmd[args]]:
在本地机中执行交互shell,exit回到ftp环境,如:
!
ls*.zip.
2.$macro-ame[args]:
执行宏定义macro-name.
3.account[password]:
提供登录远程系统成功后访问系统资源所需的补充口令。
4.appendlocal-file[remote-file]:
将本地文件追加到远程系统主机,若未指定远程系统文件名,则使用本地文件名。
5.ascii:
使用ascii类型传输方式。
6.bell:
每个命令执行完毕后计算机响铃一次。
7.bin:
使用二进制文件传输方式。
8.bye:
退出ftp会话过程。
9.case:
在使用mget时,将远程主机文件名中的大写转为小写字母。
10.cdremote-dir:
进入远程主机目录。
11.cdup:
进入远程主机目录的父目录。
12.chmodmodefile-name:
将远程主机文件file-name的存取方式设置为mode,如:
chmod777a.out。
13.close:
中断与远程服务器的ftp