linux命令配置及应用.docx
- 文档编号:29476723
- 上传时间:2023-07-23
- 格式:DOCX
- 页数:40
- 大小:41.07KB
linux命令配置及应用.docx
《linux命令配置及应用.docx》由会员分享,可在线阅读,更多相关《linux命令配置及应用.docx(40页珍藏版)》请在冰豆网上搜索。
linux命令配置及应用
注:
红色——命令名,蓝色——参数,粉色——命令实例。
chgrp-R组名文件或目录名#改变文件或目录的组所有者,如果是目录,-R表示连同其下的子目录一同改变。
chown-R用户名文件或目录名#改变文件或目录的所有者,如果是目录,-R表示连同其下的子目录一同改变。
chown-R用户名:
组名文件或目录名#改变文件或目录的组及用户所有者,如果是目录,-R表示连同其下的子目录一同改变。
chmod-R741文件或目录名#改变文件或目录的属性,如果是目录,-R表示连同其下的子目录一同改变。
#最常发生的一个问题就是,常常我们以vi编辑一个shell的文字档后,他的属性通常是-rw-rw-rw-也就是666的属性,如果要将他变成可执行档,并且不要让其他人修改此一档案的话,那么就需要-rwxr-xr-x这一个755的属性,所以chmod755test.sh就需要这样做啰!
chmod
u
g
o
a
+(加入)
-(除去)
=(设定)
r
w
x
档案或目录
chmodu=rwx,go=rx/etc/hosts
chmoda+w/etc/hosts
chomda-w/etc/hosts
#目录属性的意义:
r(readcontentsindirectory):
表示具有读取目录结构清单的权限,所以当您具有读取(r)一个目录的权限时,您就可以利用ls这个指令将该目录的内容列表显示出来!
w(modifycontentsofdirectory):
表示您将具有异动该目录结构清单的权限,也就是底下这些权限:
建立新的档案与目录;
删除已经存在的档案与目录(不论该档案是属于谁的!
)
将已存在的档案或目录进行更名;
搬移该目录内的档案、目录位置。
x(accessdirectory):
这个x与能否进入该目录有关呢!
#相对路径是以‘您当前所在路径的相对位置’来表示的。
.:
代表当前的目录,也可以使用./来表示;
..:
代表上一层目录,也可以../来代表。
目录
应放置档案内容
/
根目录root(/),一般建议在根目录底下只接目录,不要直接有档案在/底下。
根目录是开机的时候系统第一个挂载的partition,所以,所有开机过程会用到的档案,应该都要放置在这个partition当中。
举例来说,/etc,/bin,/dev,/lib,/sbin这五个次目录都应该要与根目录连在一起,不可独立成为某个partition呢!
/bin,
/usr/bin,
/usr/local/bin
除了/bin之外,/usr/local/bin,/usr/bin也是放置‘使用者可执行的binaryfile的目录’喔!
举例来说,ls,mv,rm,mkdir,rmdir,gzip,tar,cat,cp,mount等等重要指令都放在这个目录当中。
/boot
这个目录主要的目的是放置Linux系统开机会用到的档案。
开机会用到什么呢?
没错~就是Linux的核心档案。
这个目录底下档名为vmlinuz的就是Linux的Kernel啦!
而如果你的开机管理程式(loader)选择grub的话,那么这个目录内还有/boot/grub这个次目录呦!
/dev
在Linux系统上,任何装置与周边设备都是以档案的型态存在于这个目录当中的。
您只要透过存取这个目录底下的某个档案,就等于存取某个装置啰~主要又分为周边设备(characterdevice),例如键盘、滑鼠等;以及储存设备(blockdevice),例如硬碟、光碟等等。
在此目录下的档案会多出两个属性,分别是majordevicenumber,与minordevicenumber。
我们的系统核心就是透过这两个number来判断装置的呢!
比要重要的档案有/dev/null,/dev/tty[1-6],/dev/ttyS*,/dev/lp*,/dev/hd*,/dev/sd*等等
/etc
系统主要的设定档几乎都放置在这个目录内,例如人员的帐号密码档、各种服务的启始档等等。
一般来说,这个目录下的各档案属性是可以让一般使用者查阅的,但是只有root有权力修改。
并且在此目录下的档案几乎都是ASCII的纯文字档案哩。
不过,FHS建议不要放置可执行档在这个目录中喔。
比较重要的档案有:
/etc/inittab,/etc/init.d/,/etc/modprobe.conf,/etc/X11,/etc/fstab,/etc/sysconfig/等等。
另外,其下重要的目录有:
∙/etc/init.d/:
所有服务的预设启动script都是放在这里的,例如要启动或者关闭iptables的话:
/etc/init.d/iptablesstart
/etc/init.d/iptablesstop
∙/etc/xinetd.d/:
这就是所谓的superdaemon管理的各项服务的设定档目录。
∙/etc/X11:
与XWindow有关的各种设定档都在这里,尤其是xorg.conf或XF86Config这两个XServer的设定档。
/home
这是系统预设的使用者家目录(homedirectory)。
在你新增一个一般使用者帐号时,预设的使用者家目录都会规范到这里来。
比较重要的是,家目录有两种代号喔:
~:
代表目前这个使用者的家目录,而
~dmtsai:
则代表dmtsai的家目录!
/lib,
/usr/lib,
/usr/local/lib
系统会使用到的函式库放置的目录。
程式在运作的过程中,可能会呼叫一些额外的功能参数,那需要函式库的协助!
这些函式库就放在此处。
比较重要的是/lib/modules这个目录内会摆放kernel的相关模组喔!
/lost+found
系统不正常产生错误时,会将一些遗失的片段放置于此目录下,通常这个目录会自动出现在某个partition最顶层的目录下。
例如你加装一棵硬碟于/disk中,那在这个目录下就会自动产生一个这样的目录/disk/lost+found
/mnt
/media
这是软碟与光碟预设挂载点的地方;通常软碟挂在/mnt/floppy下,而光碟挂在/mnt/cdrom下,不过也不一定啦!
只要你高兴,随便找一个地方来挂载也可以呀!
另外,目前也规划出另一个/media的目录呢!
与/mnt有点类似啦~
/opt
这是给主机额外安装软体所摆放的目录。
举例来说,FC4使用的是Fedora社群开发的软体,如果您今天想要自行安装新的KDE桌面软体的话,可以将该软体安装在这个目录下的意思。
不过,以前的Linux系统中,我们还是习惯放置在/usr/local目录下呢!
/proc
这个目录本身是一个‘虚拟档案系统’喔!
他放置的资料都是在记忆体当中,例如系统核心、形成资讯、周边设备的状态及网路状态等等。
因为这个目录下的资料都是在记忆体当中,所以本身不占任何硬碟空间啊!
比较重要的档案例如:
/proc/cpuinfo,/proc/dma,/proc/interrupts,/proc/ioports,/proc/net/*等等。
/root
系统管理员(root)的家目录。
之所以放在这里,是因为我们提过,系统第一个开机就被挂载的partition为/,而我们希望/root能够与/放在同一块partition上面之故。
/sbin,
/usr/sbin,
/usr/local/sbin
放置一些系统管理员才会动用到的执行指令,例如:
fdisk,mke2fs,fsck,mkswap,mount等等。
与/bin不太一样的地方,这几个目录是给root等系统管理用的。
但是本目录下的执行档还是可以让一般使用者用来‘察看’而不能设定喔!
/srv
一些服务启动之后,这些服务所需要取用的资料目录。
举例来说,WWW伺服器需要的网页资料就可以放置在/srv/www里面。
/tmp
这是让一般使用者或者是正在执行的程序暂时放置档案的地方。
这个目录是任何人都能够存取的,所以您需要定期的清理一下。
当然,重要资料不可放置在此目录啊!
/usr
由FHS规范的第二层内容,在/usr此目录下,包含系统的主要程式、图形介面所需要的档案、额外的函式库、本机端所自行安装的软体,以及共享的目录与文件等等,都可以在这个目录当中发现。
事实上,他有点像是Windows作业系统当中的‘Programfiles’与‘WinNT’这两个目录的结合!
在此目录下的重要次目录有:
∙/usr/bin,/usr/sbin:
一般身份使用者与系统管理员可执行的档案放置目录;
∙/usr/include:
c/c++等程式语言的档头(header)与包含档(include)放置处,当我们以tarball方式(*.tar.gz的方式安装软体)安装某些资料时,会使用到里头的许多包含档喔!
;
∙/usr/lib:
各应用软体的函式库档案放置目录;
∙/usr/local:
本机端自行安装的软体预设放置的目录。
目前也适用于/opt目录。
在你安装完了Linux之后,基本上所有的配备你都有了,但是软体总是可以升级的,例如你要升级你的proxy服务,则通常软体预设的安装地方就是在/usr/local(local是‘当地’的意思),同时,安装完毕之后所得到的执行档,为了与系统原先的执行档有分别,因此升级后的执行档通常摆在/usr/local/bin这个地方。
给个建议啦,通常鸟哥都会将后来才安装上去的软体放置在这里,因为便于管理呦;
∙/usr/share:
共享文件放置的目录,例如底下两个目录:
∙/usr/share/doc:
放置一些系统说明文件的地方,例如你安装了grub了,那么在该目录底下找一找,就可以查到lilo的说明文件了!
很是便利!
∙/usr/share/man:
manpage的文件档案目录;那是什么?
呵呵!
就是你使用man的时候,会去查询的路径呀!
例如你使用manls这个指令时,就会查出/usr/share/man/man1/ls.1.gz这个说明档的内容啰!
∙/usr/src:
Linux系统相关的程式码放置目录,例如/usr/src/linux为核心原始码!
∙/usr/X11R6:
系统内的XWindowSystem所需的执行档几乎都放在这!
/var
这个目录也很重要,也是FHS规范的第二层目录内容。
他主要放置的是针对系统执行过程中,常态性变动的档案放置的目录。
举例来说,例如快取档案(cache)或者是随时变更的登录档(logfile)都是放在这个目录中的。
此外,某些软体执行过程中会写入的资料库档案,例如MySQL资料库,也都写入在这个目录中!
很重要吧!
他底下的重要目录有:
∙/var/cache:
程式档案在运作过程当中的一些暂存档;
∙/var/lib:
程式本身执行的过程中,需要使用到的资料档案放置的目录,举例来说,locate这个资料库与MySQL及rpm等资料库系统,都写在这个目录内。
∙/var/log:
登录档放置的目录。
很重要啊!
例如/var/log/messages就是总管所有登录档的一个档案!
∙/var/lock:
某些装置具有一次性写入的特性,例如tab(磁带机),此时,为了担心被其他人干扰而破坏正在运作的动作,因此,会将该装置lock(锁住)起来,以确定该装置只能被单一个程序所使用啊!
∙/var/run:
某些程式或者是服务启动后,会将他们的PID放置在这个目录下喔!
∙/var/spool:
是一些伫列资料存放的地方。
举例来说,主机收到电子邮件后,就会放置到/var/spool/mail当中,若信件暂时发不出去,就会放置到/var/spool/mqueue目录下,使用者工作排成(cron)则是放置在/var/spool/cron当中!
pwd–P#显示出确实的路径,而非使用连结(link)路径。
mkdir[-mp]目录名#-m:
设定档案的权限喔!
直接设定,不需要看预设权限(umask)的脸色~
-p:
帮助你直接将所需要的目录递回建立起来!
mkdir-m711test2
rmdir[-p]目录名#-p:
连同上层‘空的’目录也一起删除
rm-rf目录名#删除非空目录
cp[-r]来源档(source)目的档(destination)#递回持续复制,用于目录的复制行为;
cp[options]source1source2source3....directory#拷贝多个文件到目录
touch文件名#建立一个新文件
which[-a]command#查找执行文件,-a将所有可以找到的指令均列出,而不止第一个被找到的指令名称
whereis文件或目录名#查找文件或目录
locatefilename#查找文件或目录,只需输入文件的部分名称;如果locate不能执行,可以先执行updatedb或vi/etc/updatedb.conf,将‘DAILY_UPDATE=no’改成‘DAILY_UPDATE=yes’就好了。
ln[-s]来源档目标档#软连接
fdisk/dev/sda#分区,-l为查看现有分区
mke2fs-j-L"logical"/dev/hdb5#将/dev/hdb5格式化成为ext3!
且名称(卷标)为logical
mkfs-text2/dev/hda5#格式化成ext2格式
mkfs-text2–j/dev/hda5#格式化成ext3格式
mkfs.ext3/dev/vg0/lv0#将lv分区格式化成ext3格式
mkswap/dev/hdb7#格式化成swap文件系统格式
mkbootdisk--device/dev/fd0`uname-r`#制作软碟开机片
fsck-C-text3/dev/hdb5#分区检查(正挂载文件系统的分区不要使用)
badblocks-sv/dev/hdb5#检查分区坏道
mount-tiso9660-oloop/home/kris/somewhat.iso/mnt/cdrom
arp#显示网络装置设置与MACaddress
sync#将缓存写入硬盘
e2label/dev/hdb5hdb5#设卷标
tune2fs-j/dev/hdb5#将ext2文件系统转换为ext3文件系统
ddif=/dev/zeroof=/tmp/swapbs=4kcount=16382#使用dd这个指令来新增一个64MB的档案在/tmp底下
ddif=/dev/hdxof=/dev/hdy#将本地的/dev/hdx整盘备份到/dev/hdy
ddif=/dev/hdxof=/path/to/image#将/dev/hdx全盘数据备份到指定路径的image文件
ddif=/dev/hdx|gzip>/path/to/image.gz#备份/dev/hdx全盘数据,并利用gzip工具进行压缩,保存到指定路径
ddif=/path/to/imageof=/dev/hdx#将备份文件恢复到指定盘
gzip-dc/path/to/image.gz|ddof=/dev/hdx#将压缩的备份文件恢复到指定盘
ddif=/dev/cdromof=/root/cd.iso#拷贝光盘数据到root文件夹下,并保存为cd.iso文件
ddif=/dev/sdaof=/dev/sda#修复硬盘,这个过程是安全,高效的。
mkswap/tmp/swap#使用mkswap将/tmp/swap这个档案格式化为swap的档案格式
swapon/tmp/swap#使用swapon来将/tmp/swap启动
swapoff/tmp/swap#使用swapoff关掉swapfile
#*.Z compress程式压缩的档案;
*.bz2 bzip2程式压缩的档案;
*.gz gzip程式压缩的档案;
*.tar tar程式打包的资料,并没有压缩过;
*.tar.gz tar程式打包的档案,其中并且经过gzip的压缩
compress-dman.config.Z#压缩档解开,不带参数为压缩。
gzip[-dt]档名#-d:
解压缩的参数;
-t:
可以用来检验一个压缩档的一致性~看看档案有无错误;不带参数为压缩。
bzip2[-dz]档名#-d:
解压缩的参数
-z:
压缩的参数
tar[-cxtzjvfpPN]档案与目录....
参数:
-c:
建立一个压缩档案的参数指令(create的意思);
-x:
解开一个压缩档案的参数指令!
-t:
查看tarfile里面的档案!
特别注意,在参数的下达中,c/x/t仅能存在一个!
不可同时存在!
因为不可能同时压缩与解压缩。
-z:
是否同时具有gzip的属性?
亦即是否需要用gzip压缩?
-j:
是否同时具有bzip2的属性?
亦即是否需要用bzip2压缩?
-v:
压缩的过程中显示档案!
这个常用,但不建议用在背景执行过程!
-f:
使用档名,请留意,在f之后要立即接档名喔!
不要再加参数!
ddif="input_file"of="outptu_file"bs="block_size"\
count="number"
if:
就是inputfile也可以是装置喔!
of:
就是outputfile也可以是装置;
bs:
规划的一个block的大小,如果没有设定时,预设是512bytes
count:
多少个bs的意思。
cpio-covB>[file|device]#备份
cpio-icduv<[file|device]#还原
参数:
-o:
将资料copy输出到档案或装置上
-i:
将资料自档案或装置copy到系统当中
-t:
查看cpio建立的档案或装置的内容
-c:
一种较新的portableformat方式储存
-v:
让储存的过程中档案名称可以在萤幕上显示
-B:
让预设的Blocks可以增加至5120bytes,预设是512bytes!
这样的好处是可以让大档案的储存速度加快
-d:
自动建立目录!
由于cpio的内容可能不是在同一个目录内,
如此的话在反备份的过程会有问题!
这个时候加上-d的话,
就可以自动的将需要的目录建立起来了!
-u:
自动的将较新的档案覆盖较旧的档案!
echo$PATH#查找缺省命令路径
符号
内容
*
万用字元,代表0个或多个字元(或数字)
?
万用字元,代表‘一定有’一个字母
#
注解,这个最常被使用在script当中,视为说明!
\
跳脱符号,将‘特殊字元或万用字元’还原成一般字元
|
分隔两个管线命令的界定;
;
连续性命令的界定(注意!
与管线命令并不相同)
~
使用者的家目录
$
亦即是变数之前需要加的变数取代值
&
将指令变成背景下工作
!
逻辑运算意义上的‘非’not的意思!
/
路径分隔的符号
>,>>
输出导向,分别是‘取代’与‘累加’
'
单引号,不具有变数置换的功能
"
具有变数置换的功能!
``
两个‘`’中间为可以先执行的指令!
()
在中间为子shell的起始与结束
[]
在中间为字元的组合
{}
在中间为命令区块的组合!
组合按键
执行结果
Ctrl+C
终止目前的命令
Ctrl+D
输入结束(EOF),例如邮件结束的时候;
Ctrl+M
就是Enter啦!
Ctrl+S
暂停萤幕的输出
Ctrl+Q
恢复萤幕的输出
Ctrl+U
在提示字元下,将整列命令删除
Ctrl+Z
‘暂停’目前的命令
useradd[-uUID][-ginitial_group][-Gother_group]\
>-[Mm][-c说明栏][-dhome][-sshell]username
参数:
-u:
后面接的是UID,是一组数字。
直接指定一个特定的UID给这个帐号;
-g:
后面接的那个群组名称就是我们上面提到的initialgroup
该groupID(GID)会被放置到/etc/passwd的第四个栏位内。
-G:
后面接的群组名称则是这个帐号还可以支援的群组。
这个参数会修改/etc/group内的相关资料
-M:
强制!
不要建立使用者家目录
-m:
强制!
要建立使用者家目录!
-d:
指定某个目录成为家目录,而不要使用预设值;
-r:
建立一个系统的帐号,这个帐号的UID会有限制(/etc/login.defs)
-s:
后面接一个shell,预设是/bin/bash
usermod[-cdegGlsuLU]username
参数:
-d:
后面接帐号的家目录,即修改/etc/passwd的第六栏;
-g:
后面接groupname,修改/etc/passwd的第四个栏位,亦即是GID的栏位!
-G:
后面接groupname,修改这个使用者能够支援的群组,修改的是/etc/group
-l:
后面接帐号名称。
亦即是修改帐号名称,/etc/passwd的第一栏!
-s:
后面接Shell的实际档案,例如/bin/bash或/bin/csh等等。
-u:
后面接UID数字啦!
即/etc/passwd第三栏的资料;
-L:
暂时将使用者的密码冻结,让他无法登入。
其实仅改/etc/shadow的密码栏。
-U:
将/etc/shadow密码栏的!
拿掉,解冻啦!
userdel[-r]username#-r:
连同使用者的家目录也一起删除
idusername#查询某人或自己的相关UID/GID等等的资讯
groupadd[-ggid][-r]
参数:
-g:
后面接某个特定的GID,用来直接给予某个GID
-r:
建立系统群组啦!
与/etc/login.defs内的GID_MIN有关。
groupmod[-ggid][-ngroup_name]
参数:
-g:
修改既有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- linux 命令 配置 应用