Linux系统常用命令总结.docx
- 文档编号:5626898
- 上传时间:2022-12-29
- 格式:DOCX
- 页数:17
- 大小:105.89KB
Linux系统常用命令总结.docx
《Linux系统常用命令总结.docx》由会员分享,可在线阅读,更多相关《Linux系统常用命令总结.docx(17页珍藏版)》请在冰豆网上搜索。
Linux系统常用命令总结
Linux系统常用命令总结
一:
使用Ubuntu的ls命令时,常常会出现各种颜色的文件名及文件夹名称。
蓝色:
文件夹
红色:
压缩文件
绿色:
可执行文件
白色:
文本文件
红色闪烁:
错误的符号链接
淡蓝色:
符号链接
黄色:
设备文件
灰色:
其他文件
二:
Linux常用命令格式
●命令基本格式
●文件处理命令
●文件搜索命令
●帮助命令
●压缩与解压命令
●关机与重启命令
●其他命令
三:
Linux关机
Linux领域内大多用在服务器上,很少遇到关机的操作。
正确的关机流程为:
sync->shutdown->reboot->halt
其中h指halt关机的意思;r指reboot
Shutdown–h10计算机在十分钟后关机,并且会显示在登录用户的当前界面
Shutdown–hnow立马关机
Shutdown–h21:
00系统会在今天21:
00关机
Shutdown–rnow系统立马重启
Shutdown–r+10系统十分钟后重启
reboot就是重启等同于shutdown–rnow
halt关闭系统,等同于shutdown–hnow和poweroff最后总结一下,不管是重启系统还是关闭系统,首先要运行 sync 命令,把内存中的数据写到磁盘中。
关机的命令有 shutdown–hnowhaltpoweroff 和 init0 ,重启系统的命令有 shutdown–rnowrebootinit6。
四:
Linux系统目录结构
●/binbin是Binary的缩写,这个目录存放着最经常使用的目录
●/boot这里存放的是启动Linux是使用的一些核心文件,包括一些链接文件
以及镜像文件
●/devdev是device的缩写,该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
●/etc这个目录用来存放系统管理所需的配置文件和子目录
●/home用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录是以用户的账号命名的。
●/lib这个目录里存放着系统最基本的动态链接共享库,其作用类似于Windows里的DLL(动态链接库)。
几乎所有的应用程序都需要用到这些共享库。
●/lost+found这个目录一般是空的,当系统非法关机后,这里就存放了一些文件
●/mediaLinux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux会把别的设备挂载到这个目录下。
●/mnt系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
●/opt这是给主机额外安装软件所摆放的目录。
比如你安装一个ORACLE数据库则就可以放到这个目录下。
默认是空的。
●/proc这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
这个目录的内容不在硬盘上而在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器。
●/sbins是SuperUser的意思,这里存放的是系统管理员使用的系统管理程序。
●/selinux这个是RedHat/CentOS所特有的目录,Selinux是一个安全机制,类似于Windows的防火墙,但是这套机制比较复杂,这个目录是存放selinux相关的文件的。
●/srv该目录存放一些服务启动之后需要提取的数据
●/sys 这是linux2.6内核的一个很大的变化。
该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
sysfs文件系统集成了下面3种文件系统的信息:
针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。
该文件系统是内核设备树的一个直观反映。
当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
●/tmp这个目录是用来存放一些临时文件的。
●/usr这是一个非常重要的目录,用户的很多应用程序和文件都存放在这个目录下,类似于Windows系统中的programfiles目录。
●/usr/bin系统用户使用的应用程序。
●/usr/sbin超级用户使用的比较高级的管理程序和系统守护进程。
●/usr/src内核源代码默认的放置目录。
●/var这个目录下存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。
包括各种日志文件。
TIPS:
在Linux系统中有几个目录是比较重要的,平时需要注意不要删除或者随意更改内部文件。
/etc:
上面也提到了,这个是系统中的配置文件,如果更改了该目录下的某个文件可能会导致系统不能正常启动。
/bin,/sbin,/usr/bin,/usr/bin:
这是系统预设的执行文件的放置目录,比如ls就是在/bin/ls目录下。
/bin,/usr/bin是给系统用户使用的命令(除root外的普通用户),而/sbin,/usr/sbin则是给root使用的命令。
/var:
这是一个非常重要的目录,系统上运行了很多程序,那么每一个程序都会有相应的日志产生,而这些日志就会被记录到这个目录下,具体在/var/log下,另外mail的预设置也在这里。
四:
Linux文件基本属性
在Linux中我们可以使用ll或者ls–l命令来显示一个文件的属性以及文件所属的用户和组
[root@www/]#ls-l
total64
dr-xr-xr-x2rootroot4096Dec142012bin
dr-xr-xr-x4rootroot4096Apr192012boot
……
●当第一个属性为【d】时则是目录
●当为【-】时则是文件
●若是【/】则表示为链接文档(linkfile)
●若是【b】则表示为装置文件里面的可供存储的接口设备(可随机存储装置)
●若是【c】则表示为装置文件里的串行端口设备,例如键盘、鼠标(一次性读取装置)
接下来的字符中,以三个为一组,且均为『rwx』的三个参数的组合。
其中,[r]代表可读(read)、[w]代表可写(write)、[x]代表可执行(execute)。
要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号[-]而已。
每个文件的属性由左边第一部分的10个字符来确定(如下图)。
从左至右用0-9这些数字来表示。
第0位确定文件类型,第1-3位确定属主(该文件的所有者)拥有该文件的权限。
第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。
其中,第1、4、7位表示读权限,如果用"r"字符表示,则有读权限,如果用"-"字符表示,则没有读权限;
第2、5、8位表示写权限,如果用"w"字符表示,则有写权限,如果用"-"字符表示没有写权限;第3、6、9位表示可执行权限,如果用"x"字符表示,则有执行权限,如果用"-"字符表示,则没有执行权限。
Linux文件属主属组
[root@www/]#ls-l
total64
drwxr-xr-x2rootroot4096Feb1514:
46cron
drwxr-xr-x3mysqlmysql4096Apr212014mysql
……
在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。
文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户。
因此,Linux系统按文件所有者、文件所有者同组用户和其他用户来规定了不同的文件访问权限。
对于root用户来说,一般情况下,文件的权限对其不起作用
更改文件属性
1、chgrp:
更改文件属组
语法:
chgrp[-R]属组文件名
参数选线:
-R:
递归更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。
2、chown:
更改文件属主,也可以同时更改文件属组
语法:
Chown[-R]属主名文件名
Chown[-R]属主名:
属组名文件名
3、chmod:
更改文件9个属性
Linux的文件属性有两种设置方法,一种是数字,一种是符号。
Linux的基本权限就有9个,分别是owner/grounp/others三种身份各有自己的read/write/execute权限。
文件的权限符号为【-rwxrwxrwx】这九个权限三个三个是一组的!
其中我们可以用数字来代表各个权限,各权限的分数对照表如下:
●r:
4
●w:
2
●x:
1
每种身份(owner/grounp/others)各自的三个权限(r/w/x)分数是需要累加的,当权限为【-rwxrwx---】分数是:
●owner=rwx=4+2+1=7;
●grounp=rwx=4+2+1=7;
●others=---=0+0+0=0;
chmod[-R]xyz文件名或目录名
选项与参数:
●xyz:
就是刚才提到的数字类型的权限属性,为rwx属性数值的相加。
●-R:
进行递归的持续变更,亦即连同次目录下的所有文件都会改变。
例如:
将权限变为-rwxr-xr--则权限的分数为:
[4+2+1][4+0+1][4+0+0]=754;chmod–R754文件名或目录名
符号类型改变文件权限
还有一个改变权限的方法,之前我们介绍基本上就有九个权限分别为user/grounp/others,那么我们可以用u,g,o来代表三种身份的权限!
此外,a代表all亦即全部的身份!
那么读写的权限就可以写成r,w,x!
也就是可以使用底下的方式来看:
chmod
u
g
o
a
+(加入)
-(除去)
=(设定)
r
w
x
文件或目录
如果我们需要将文件权限设置为-rwxr-xr--,可以使用chmodu=rwx,g=rx,o=r文件名
而如果是要将权限去掉而不改变其他已存在的权限呢?
例如要拿掉全部人的可执行权限,则:
[root@www~]#chmoda-x.bashrc
[root@www~]#ls-al.bashrc
-rw-rw-rw-1rootroot395Jul411:
45.bashrc
Linux文件与目录管理
我们知道Linux的目录结构为树状结构,最顶级的目录为根目录/。
其他目录通过挂载可以将它们添加到树种,通过解除挂载可以移除它们
●绝对路径:
路径的写法,由根目录/写起,例如:
/usr/share/doc这个目录
●相对路径:
路径的写法,不是由/写起,例如由/usr/share/doc要到/usr/share/man底下时可以写成:
cd../man这就是相对路径的写法!
处理目录的常用命令
∙ls:
列出目录
∙cd:
切换目录
∙pwd:
显示目前的目录
∙mkdir:
创建一个新的目录
∙rmdir:
删除一个空的目录
∙cp:
复制文件或目录
∙rm:
移除文件或目录
你可以使用 man[命令] 来查看各个命令的使用文档,如:
mancp。
Ls(列出目录)
选项参数:
●-a:
全部的文件,连同隐藏档(开头为.的文件)一起列出来
●-d:
仅列出目录本身,而不是列出目录内的文件数据
●-l:
长数据串列出,包含文件的属性与权限等等数据;
将家目录下的所有文件列出来(含属性与隐藏档)
[root@www~]#ls-al~
cd(切换目录)
语法:
cd[相对路径或绝对路径]
pwd(显示目前所在的目录)
pwd[-P]
选项与参数:
-P:
显示出确实的路径,而非使用链接的路径(link)
mkdir(创建新目录)
语法:
mkdir[-mp]目录名称
选项与参数:
∙-m:
配置文件的权限喔!
直接配置,不需要看默认权限(umask)的脸色~
∙-p:
帮助你直接将所需要的目录(包含上一级目录)递归创建起来!
加了这个-p的选项,可以自行帮你创建多层目录
rmdir(删除空的目录)
语法:
rmdir[-p]目录名称
选项与参数:
-p:
连同上一级空的目录页一起删掉
利用-p这个选项,立刻就可以将test1/test2/test3/test4一次删除。
不过要注意的是,这个rmdir仅能删除空的目录,你可以使用rm命令来删除非空目录。
cp(复制文件或目录)
cp即拷贝文件和目录
[root@www~]#cp[-adfilprsu]来源档(source)目标档(destination)
[root@www~]#cp[options]source1source2source3....directory
选项与参数:
●-a:
相当于-pdr的意思,
●-d:
若来源档为连接档的属性(linkfile),则复制链接档属性而非文件本身
●-f:
为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
●-i:
若目标档已经存在时,在覆盖时会先询问动作的进行
●-l:
进行硬式连接(hardlink)的连接档创建,而非复制文件本身。
●-P:
连同文件的属性一同复制过去,而非使用默认属性
●-r:
递归持续复制,用于目录的复制行为
●-s:
复制成为符号连接档(symboliclink),亦即“捷径”文件
●-u:
若destination比source旧才升级destination
●[root@www~]#cp~/.bashrc/tmp/bashrc
●[root@www~]#cp-i~/.bashrc/tmp/bashrc
●cp:
overwrite`/tmp/bashrc'?
n<==n不覆盖,y为覆盖
rm(移除文件或目录)
rm[-fir]文件或目录
选项与参数:
●-f:
就是force的意思,忽略不存在的文件,不会出现警告信息。
●-i:
互动模式,在删除前会询问者是否动作
●-r:
递归删除,最常使用在目录的删除!
是非常危险的选项!
!
!
●[root@wwwtmp]#rm-ibashrc
●rm:
removeregularfile`bashrc'?
y
mv(移动文件与目录,或修改名称)
[root@www~]#mv[-fiu]sourcedestination
[root@www~]#mv[options]source1source2source3....directory
选项与参数:
●-f:
force强制的意思,如果目标文件已经存在,不会直接询问而直接覆盖
●-i:
若目标文件已经存在(destination)就会询问是否覆盖
●-u:
若目标文件已经存在,且source比较新,才会升级(update)
复制一文件,创建一文件,将文件移动到目录中
[root@www~]#cd/tmp
[root@wwwtmp]#cp~/.bashrcbashrc
[root@wwwtmp]#mkdirmvtest
[root@wwwtmp]#mvbashrcmvtest
Linux文件内容查看
Linux系统中使用以下命令来查看文件的内容:
●cat:
由第一行开始显示文件内容
●tac从最后一行开始显示,可以看出tac是cat的倒着写!
●nl显示的时候顺道输出行号!
●more一页一页的显示文件内容
●less与more类似,但是比more更好的是,他可以往前翻页!
●head只看头几行
●tail只看尾巴几行
可以使用man[命令]来查看各个命令的使用文档,如mancat
cat:
由第一行开始显示文件内容
cat[-AbEnTv]
选项与参数:
●-A:
相当于-vET的整合项,可列出一些特殊字符而不是空白而已。
●-b:
列出行号,仅针对非空白行做行号显示,空白行不标行号。
●-E:
将结尾的断行字节$显示出来;
●-n:
列印出行号,连同空白行也会有行号,与-b的选项不同;
●-T:
将[tab]按键以^|显示出来
●-v:
列出一些看不出来的特殊字符
●[root@www~]#cat/etc/issue
●CentOSrelease6.4(Final)
●Kernel\ronan\m
tac:
文件内容从最后一行开始显示,与cat命令刚好相反
[root@www~]#tac/etc/issue
Kernel\ronan\m
CentOSrelease6.4(Final)
nl:
显示行号
nl[-bnw]文件
语法与参数:
●-b:
指定行号指定的方式,主要有两种:
-ba:
表示不论是否为空行,同样列出行号(类似cat-n)
-bt:
如果有空行,空的那一行不要列出行号(默认值)
●-n:
列出行号表示的方法,主要有三种。
-nln:
行号在荧幕的最左方显示
-nrn:
行号在自己栏位的最右方显示,且不加0;
-nrz:
行号在自己栏位的最右方显示,且加0
●-w:
行号栏位的占用的位数
●[root@www~]#nl/etc/issue
●1CentOSrelease6.4(Final)
●2Kernel\ronan\m
more:
一页一页翻动
[root@www~]#more/etc/man.config
#
#Generatedautomaticallyfromman.conf.inbythe
#configurescript.
#
#man.conffromman-1.6d
....(中间省略)....
--More--(28%)<==重点在这一行喔!
你的光标也会在这里等待你的命令
在more这个程序的运行过程中,你有几个按键可以按的:
∙空白键(space):
代表向下翻一页;
∙Enter :
代表向下翻『一行』;
∙/字串 :
代表在这个显示的内容当中,向下搜寻『字串』这个关键字;
∙:
f :
立刻显示出档名以及目前显示的行数;
∙q :
代表立刻离开more,不再显示该文件内容。
∙b或[ctrl]-b:
代表往回翻页,不过这动作只对文件有用,对管线无用。
less:
一页一页翻动,以下实例输出/etc/man.config文件的内容
[root@www~]#less/etc/man.config
#
#Generatedautomaticallyfromman.conf.inbythe
#configurescript.
#
#man.conffromman-1.6d
....(中间省略)....
:
<==这里可以等待你输入命令!
Less运行时可以输入的命令有:
●空白键:
向下翻动一页
●[pagedown]:
向下翻动一页
●[pageup]:
向上翻动一页
●/字串:
向下搜寻[字串]的功能
●?
字串:
向上搜索[字串]的功能
●n:
重复前一个搜寻(与/或?
有关!
)
●N:
反向的重复前一个搜寻(与/或?
有关!
)
●q:
离开less这个程序
head取出文件前面几行
head[-nnumber]文件
选项与参数:
●-n:
后面接数字,代表显示几行的意思
●[root@www~]#head/etc/man.config
默认的情况中,显示前面10行!
若要显示前20行,就得这样。
[root@www~]#head-n20/etc/man.config
tail取出文件后面几行
tail[-nnumber]文件
选项与参数:
∙-n:
后面接数字,代表显示几行的意思
∙-f:
表示持续侦测后面所接的档名,要等到按下[ctrl]-c才会结束tail的侦测
[root@www~]#tail/etc/man.config
#默认的情况中,显示最后的十行!
若要显示最后的20行,就得要这样:
[root@www~]#tail-n20/etc/man.config
Linux用户和用户组管理
Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
每个用户账号都拥有一个惟一的用户名和各自的口令。
用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。
实现用户账号的管理,要完成的工作主要有如下几个方面:
∙用户账号的添加、删除与修改。
∙用户口令的管理。
∙用户组的管理。
Linux系统用户账号的管理
用户账号的管理工作主要涉及到用户账号的添加、修改和删除
添加用户账号就是在系统中创建一个新账号,然后为新账号分配用户号、用户组、主目录和登录Shell等资源。
刚添加的账号是被锁住的,无法使用。
添加新的用户账号使用useradd命令,其语法如下:
useradd选项用户名
参数说明:
●-ccomment指定一段注释性描述
●-d目录指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录
●-g用户组指定用户所属的用户组
●-G用户组,用户组指定用户所属的附加组。
●-sShell文件指定用户的登录Shell
●-u用户号指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
●用户名:
指定新账号的登录名
●#useradd–d/usr/sam-msam
此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。
#useradd-s/bin/sh-ggroup–Gadm,rootgem
此命令新建了一个用户gem,该用户的登录Shell是 /bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。
这里可能新建组:
#groupaddgroup及groupaddadm
增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他系统文件如/etc/shadow,/etc/group等。
Linux提供了集成的系统管理工具userconf,它可以用来对用户账号进行统一管理。
删除账号
如果一个用户的账号不再使用,可以从系统中删除。
删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。
删除一个已有的用户账号使用userdel命令,其格式如下:
userdel选项用户名
常用的选项是-r,它的作用是把用户的主目录一起删除。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux 系统 常用命令 总结
![提示](https://static.bdocx.com/images/bang_tan.gif)