linux常用命令

来源:互联网 发布:布光模拟软件 编辑:程序博客网 时间:2024/06/06 18:02

1.Linux超级管理员密码忘记的处理

1、开机按e

2、再按e

3、输入空格再输入single或者1,回车;

4、按b

5、在超级用户提示符下输入passwd,根据系统提示修改超级用户密码;

6、修改成功后,输入reboot重启。



2.RPM

rpmrpm软件包的配置

-v:显示附加信息。

-i:安装选项。

-U:升级选项。

-h:安装时输出#用来显示进度。

-a:查询所有安装的软件包。

-q:查看是否安装软件包

-e:删除软件包。

管道命令|

grep查找文件类

例:rpm-aq |grep DHCP-----查找DHCP软件包



3.挂载

1、新建文件夹/mnt/USB

2mount/dev/sdb1 /mnt/USB ---- 挂载新硬件sdb1USB



4.VI

VI有三中模式:命令模式/插入模式/末行模式。

1)命令模式下:

M:将游标移到当前屏幕的中间一行的行首。

L:将游标移到当前屏幕的最下行的行首。

H:将游标移到当前屏幕的最上行的行首。

0:数字0,左移游标到本行开头。

$:右移游标到本行的末尾。

G:游标移到文件的末尾。

nG:快速定位到第n行。

gg:游标移到文件首行。

Ctrl+b:在文件中向上翻一页。

Ctrl+f:在文件中向下翻一页。

2)插入模式:

i:在当前游标所在之处插入字符。

a:在当前游标的后一个位置插入字符。

o:在当前游标所在行的下面新建一行,并在新建行的第一个位置插入字符。

I:游标移到本行行首,插入字符。

A:游标移到本行行末,插入字符。

O:在当前游标的上面新建一行,并在新建行的第一位置插入字符。

3)复制/删除/粘贴:

yy:复制游标所在行。

nyy:复制游标以下n行。

p:粘贴。

dd:删除游标所在行。

ndd:删除游标以下n行。

u:撤消最后一次修改。

.:小数点,执行最后一次的操作。

4)末行模式:

:w:保存当前文件,继续编辑。

:q:退出VI:wq保存并退出。

:x:保存退出。

:q!:不保存,退出。

:e!:放弃所有修改,从上次保存文件开始编辑。

:setnu:显示行号。

:setnonu:关闭行号。

:syntaxon|off:打开/关闭语法开关。

/string:向下查找string中指定的字符串,按n继续查找,shift+n反方向查找。

?string:向上查找string中指定的字符串。



5.chmod(chmod+x /home/kkihpl/hash/hello.sh)

chmod文件权限管理

字符设定法--------

-c:若该文件权限确实已经更改,才显示其更改动作信息。

-f:即使该文件权限无法被更改,也不要显示错误信息。

-v:显示权限变更的详细资料。

--help:显示辅助说明。

--version:显示版本。

u:表示用户(user)

g:表示同组(group)

o:表示其他(other)用户。

a:表示所有(all)用户。

+:添加某个权限。

-:取消某个权限。

=:赋予指定权限并取消其他所有权限。

r:表示有读取权限。

w:表示有写入权限。

x:表示有执行权限。

数字设定法---------------

0:表示没有权限。

1:表示可执行权限。

2:表示可写入权限。

4:表示可读取权限。

然后将其相加,数字属性格式应为3个从0~ 7的八进制数,其顺序是(u)(g)(o)



6.chown(chownkkihpl /home/kkihpl/bash/hello.sh)

chown-r kkihpl /home/kkihpl/bash

chown文件属主属组的更改 root用户专用。

chown[选项]属主[.属组]<文件名>



7.用户群组

1useraddadduser添加用户

-u:直接指定一个特定的UID给这个帐号,默认情况下,普通用户一般其UID大于499

-g:直接指定用户所在组的名称。

-M:强制不要建立用户家目录。

-c:指定用户信息描述。

-d:指定用户家目录,不使用系统默认值。

-s:指定用户Shell,而不使用默认的/bin/bash

-G:指定用户所属的附加组。

-mk:复制其他用户主目录下的文件和配置信息来创建用户。

-eexpire_date:帐号终止日期,格式为MM/DD/YY

-finactive_date:帐号过期几日后永久停权。当值为0时帐号立刻锁定禁用。当值为-1时则关闭此功能,预设值为-1


2userdel删除用户

-r:删除用户的同时一并删除用户家目录及其拥有的所有文件。


3passwd设置及更改用户口令

-l:锁定用户帐号。

-u:解锁用户帐号。

-d:设置用户口令为空,但该用户可以在系统中登录。

-x:设置密码使用最大时间。

-n:设置密码使用最小时间。

-w:在距多少天提醒用户修改密码。

-i:密码过期多少天后被禁用。


4usermod更改、设置用户属性

-c:修改用户帐号的备注。

-d:修改用户家目录。

-e:修改帐号有限期限。

-f:修改帐号密码过期多少天后即关闭该帐号。

-g:修改用户所属的群组,

-G:修改用户所属的附加群组。

-l:修改用户帐号名称。

-p:修改用户密码。

-s:修改用户登录后所使用的Shell

-u:修改用户uid

-L:锁定用户不得登录。

-U:解除用户锁定。


5su切换用户身份

-l:使用指定用户的登录环境。

-m:执行su时不改变环境变量。

-ccommand:临时变更帐号为指定用户,并执行(command)后再返回为原来的SHELL环境。

提示:在使用su时经常携带参数-号,表示同时使用该用户的环境变量和Shell


6finger查看指定用户信息。


7whoami查看当前用户帐号。


8、组管理

groupadd添加组

groupadd-g 55 testing //添加一个组testig,GID55

groupaddpro //添加一个组pro,其他值为默认

useradd-g pro oradba //添加用户oradba,指定其属组为pro


groupel删除组


groupwd管理群组信息

groupwd-d oradba pro //将用户oradbapro组中删除

groupwd-a oradba pro //将用户oradba加入pro


备注:/etc/passwd/----存储用户密码

/etc/shadow/----存储加密后的用户密码

/etc/group-----组帐号信息

/etc/gshadow-----组密码


图形化界面下:1编辑——首选项——用户和群组或者系统——用户和群组打开用户和群组管理界面。2、命令行system-config-users打开用户和群组管理界面。



8.常用命令

whatis可以为查询的指令显示简短的功能描述


--help用来显示所查询的指令的摘要和参数的列表


man+命令提供指令的说明文件,每个指令都有对应得说明文件,成为操作手册

b:回滚一屏

f:前滚一屏

q:推出

空格键:显示手册下屏

回车键:一次滚动一行


info+命令类似于man命令的功能

n:移动到本节点的下一个节点

p:移动到本节点的上一个节点

u:移动到本节点的上层节点

m:选取由名称指定的菜单项目

q:退出


ls显示文件的名称、属性等

-l:详细信息

-a:列出所有文件,包括隐藏文件

-R:递归列出所有目录及文件

-k:用kB为单位的大小表示


cd用于目录切换

。。:切换到父目录

。:当前目录

/:切换到根目录


pwd显示目前所在目录


mkdir建立目录

-m:对新建目录存取权限

-p:建立新建目录中不存在的父目录

-v:输出返回信息


rmdir删除空目录

-p:递归删除空目录

-v:输出返回信息


rm删除多个文件或者目录

-r:递归删除

-f:强制删除

-v:输出返回信息

linux系统如何通过SSH管理快速删除一个非空目录(即目录下的所有文件以及子目录),其实想要在linux终端当中强制删除非空目录命令,只要是用一个递归和强制的参数参数即可,命令如下:
rm-rf xxx
-r
递归
-f
强制

命令实际用法,例如当前目录有一个“zezehost.com”的非空目录,通过FTP删除是灰常慢的。这时候只要在命令行输入
rm-rf zezehost.com

即可删除此目录下的所有文件以及子目录,而且是非常迅速的哦!


cp复制文件或者目录(cp-r /home/yhwl/下载/home/oracle/下载)

-r:递归复制目录到目录

-u:更新复制的文件

-a:保留链接、文件属性

-f:强制覆盖


mv移动或更名

-f:强制覆盖

-u:更新文件

-v:显示详细信息


uname用于显示计算机以操作系统的相关信息

-a:显示全部


date查看、设置当前日期及时间

%T:直接显示时间(24小时制)

%D:直接显示日期(月//年)

%n:换行

设置时间:月日时分年(092014202011——20119201420分)


cat连接文件或者将文件打印至标准输出

-n:由1开始对所有输出编号

-s:遇到多个空行时,只显示一个空行

建立文件:cat>1.txt

连接文件:cat1.txt 2.txt>3.txt(把文件1和文件2连接后的内容存入到文件3中)

追加:cat3.txt>>4.txt (把文件3的内容追加到文件4之后)


du统计目录或文件所占磁盘空间大小

-a:显示全部目录及子目录下每个文件所占的磁盘大小

-s:只显示文件或目录大小的总和

-h:用容易理解的格式表示大小



df检查文件系统的磁盘空间占用情况(df-h)

-h:用容易理解的格式表示大小


clear清屏


history查看历史记录

方向键:上下查看使用过的命令

4:执行第4条历史命令

c:执行最后一条以c开头的命令

!!:执行上一条指令

-w:将目前的历史命令写入到histfiles文件中

-r:将histfiles文件中的历史记录读取到当前history

-c:清楚所有历史记录


shutdown关机【(shutdown参数时间 警告)时间可以是绝对时间(hhmm)和相对时间(mm)或者now(即刻)】

-r:关闭后重启

-h:关机

-c:取消


reboot重启

shutdown-h


halt调用shutdown-h


init0




重启


reboot


init1



tar打包备份

-c:创建备份

-v:显示返回信息

-f:指定使用备份的文件,即命名备份文件

-x:将备份文件展开

-t:显示备份文件的内容

-z:使用压缩方式创建和解开备份文件

例:tarcfvz backup.tar.gz /etc etc下所有的文件打包并压缩为back.tar.gz文件(压缩文件的格式也可以是backup.tgz


其他的关机命令:haltpaworoffinit0

重启命令:init6



9.糸统性能监控

1proc内核信息利用vi编辑器打开

/proc/cpuinfo文件:处理器详细信息

/proc/modules文件:系统当前加载模块信息

/proc/version文件:当前系统版本信息

/proc/partitions文件:系统分区信息


2who用于查看系统登录用户

-H:显示各栏位的标题信息列

-u:显示闲置时间

-m:此参数的效果和指定ami字符串相同

-q:只显示登入系统的账号名称和总人数

-w:显示用户的信息状态栏

--help:在想帮助

--version:显示版本信息

-a:显示当前所有登录用户信息


3w用于查看系统登录信息

-f:开启或关闭显示用户从何处登入系统

-h:不显示各栏位的标题信息列

-l:使用详细格式列表,此为为预设值

-s:使用简洁格式列表

-u:忽略执行程序的名称,以及该程序耗费的cpu时间的信息


USER:登录的用户账号名

TTY:用户登录的终端代号

FROM:从哪个终端登录

LOGIN:表示该用户登录系统的时间

IDLE:空闲计时器

JCPU:终端相关计时器

PCPUcpu执行程序消耗的时间

WHAT:显示用户正在执行的程序的名称


4last列出目前与过去登入系统的用户相关信息

-a:把从何处登入系统的主机名称或ip地址,显示在最后一行

-d:将ip地址转换为主机名称

-f:指定记录文档

-n:配置列出名单的显示列数

-R:不显示登入系统的主机名称或ip地址

-x:显示系统关机,重新开机,连同执行等级的改变等信息


5free查看内存使用情况

-b:以字节为单位显示内存使用情况

-k:以kb为单位显示内存使用情况

-m:以mb为单位显示内存使用情况

-g:以gb为单位显示内存使用情况

-s:每隔多少秒显示一次内存使用情况

-t:显示内存和SWAP的总和


total:内存总数

used:已经使用的内存数

free:空闲的内存数

shared:该参数当前已经废弃不用,其值总为0

buffers:缓冲内存

cached:页面缓存


6ps查看系统中执行的进程(ps-ef|grep java|grep -v grep)

-e:显示所有进程和环境变量

-f:全格式显示

-h:不显示标题

-l:长格式显示

-w:宽格式显示

a:显示终端上的所有进程,包括其他用户的进程

r:只显示正在运行的进程

x:显示没有终端控制的进程

u:以用户为主的格式显示进程


USER:进程拥有者

PID:进程号

%CPU:占用的cpu使用率

%MEM:占用内存使用率

VSZ:进程全部调用至内存需要占用的虚拟内存大小

RSS:真实占用的内存大小

TTY:从哪个终端登录

STAT:该进程的状态

START:进程开始时间

TIME:执行时间

COMMAND:所执行的指令


7pstree查看进程树

-a:显示每个程序的完整指令,包括路径,参数或是常驻服务的标识

-c:不使用精简标识法

-G:使用VT100终端机的列绘图字符

-h:列出树状图时,特别标明现在执行的程序

-H:特别标明指定的程序

-l:采用长列格式显示树状图

-n:用程序识别码排序

-p:显示程序识别码

-u:显示用户名称

-U:使用UTF-8列绘图字符

-V:显示版本信息


8kill发送特定的信号给指定的进程或进程组

-2:即<Crtl+c>

-9:发送强制终止信号

-15:发送正常终止信号


9top动态监控系统资源

-d:指定更新的间隔,以秒为单位

-q:没有任何延迟的更新

-c:显示进程完整的路径和名称

-S:累积模式

-s:安全模式

-i:不显示任何闲置或无用的进程

-n:显示更新次数,完成后将会退出top

top交互命令:

<空格>:立即刷新显示

h或?:显示帮助画面

q:退出程序

s:改变两次刷新之间的延迟时间

m:切换显示内存信息

t:切换显示进程和cpu状态信息

c:切换显示命令名称和完整命令行

M:根据驻留内存大小进行排序

P:根据cpu使用百分比进行排序

T:根据时间/累计时间进行排序

A:按进程生命顺序进行排序


10iostat对系统的磁盘操作活动进行监视,汇报磁盘活动统计情况与汇报cpu使用情况


11sar查看cpu状态



. cd. cd..cd / cd //

./ (運行.sh批處理文件)

rpm( rpm -i -v filename)

chmod+xrw(文件目錄權限)

su切換用戶(默契為rootsu– oracle(执行oracle用户环境)


终端切换到root用户下

suroot
input root password

#表示在root用户下,$表示在一般用户下

安装jdk

#cd/home

#cpjdk-1_5_0_02-linux-i586.rpm /usr/local

#cd/usr/local

所有用户添加可执行的权限

#chmod+x jdk-1_5_0_02-linux-i586.rpm.bin

#./jdk-1_5_0_02-linux-i586.rpm.bin

时会生成文件jdk-1_5_0_02-linux-i586.rpm,同样给所有用户添加可执行的权限

#chmod+x jdk-1_5_0_02-linux-i586.rpm

安装程序

#rpm-ivh jdk-1_5_0_02-linux-i586.rpm

出现安装协议等,按接受即可。

chmod+x(提权为可执行文件),.sh提权为可执行文件。(tomcat目录下要把所有的提权为可执行文件。)



#rpm -ivh jdk-1_5_0_02-linux-i586.rpm

#rpm–qa | grep jdk

看到如下信息:

java-1.6.0.openjdk-1.6.0.0-0.25.b09.el5

jdk-1.6.0-16-fcs

卸载:

#rpm -e --nodeps jdk-1.6.0-16-fcs




ps-aux是用来查看所有的进程

killPID


kill-l PID包括子进程有时也不可以结束掉


killallhttpd所有的httpd


kill-9 pid强行终止



ps-ef|grep java|grep -v grep(除了本身的)



ps-ef|grep java查看所有的java



top查看动态的进程信息,q可以退出





终端退出的命令用exit






硬盘卸载:

1:查看是否有占用

lsof| grep md1 | grep root

2:kill -9 pid

3:umount /root/md1


硬盘挂载:

1:创建目录mkdir/dataBase

2:挂载:mount/dev/md1 /dataBase



修改目录归属:

chownoracle /dataBas/* -r


开机自动挂载

修改/etc/fstab

加入

/dev/md1 /dataBase ext4 defaults 00

最好用uuid去挂载

登陆糸列
suoracle,切换到oracle身份后用户的家目录和PATH仍然是原先用户的家目录和PATH
su- oracle,相当于重新登陆,此时用户的家目录和PATH等信息会发生改变
最后加上:loginshell , /etc/profile,.bash_profile,.bashrc,/etc/bashrc 都执行
nonlogin shell, /etc/profile,.bash_profile 不执行,.bashrc,/etc/bashrc执行
sudo
sudo这个命令设计初的主要目的是为了使某些用户具有特定用户的一些特殊的权限,举例说明:比如AB两个人,A是技术部经理,
具有公司服务器上的root权限,B技术还不够成熟,只具有一般用户权限,因为项目原因,B需要具有添加用户的权限,这个时候该怎么办呢?
B管理员权限?那安全性能得到保证吗!对,这时候sudo就派上用场了
netstat-lntp
查看是否开启了那些临听!
查询指定的端口相关信息
netstat-anp | grep 1521
netstat-an | grep 1521 | grep -E "ESTABLISHED|LISTEN"
#!/bin/bash
find./ -name *.txt  | while read i
do
#echo"$i";
chmod-x "$i";
done
find./ -name *.mht  | while read i
do
#echo"$i";
chmod-x "$i";
done
0 0