Linux常用命令几则

Linux常用命令几则

2023年8月2日发(作者:)

1、 查看系统服务器版本

dmidecode |grep Name

2、 xargs命令

rm –rf *命令删除,如果文件太多,LINUX会提示列表太长无法删除,这时使用命令:

ls |xargs rm –rf 删除(把ls的输出作为删除对象)。

3、 制定一次性计划任务at

at 相关进程atd(要开启 先查看进程是否开启ps)

4、 Which & whereis 查找程序路径

前者查找命令路径是在PATH中查找,后者根据程序名全盘查找

例如:

5、 Redhat启动方式的次序

1)加载内核

2)执行init程序

3)/etc/rc.d/t # 由init执行的第一个脚本

4)/etc/rc.d/rc $RUNLEVEL # $RUNLEVEL为缺省的运行模式

5)/etc/rc.d/ #相应级别服务启动之后、在执行该文件(其实也可以把需要执行的命令写到该文件中)

6)/sbin/mingetty # 等待用户登录

6、 启动模式(RUNLEVEL)

一共有7种启动级别,分别为:# 0 - halt (Do NOT set initdefault to this) # 1 - Single user mode # 2 - Multiuser, without NFS (The same as 3, if you do not

have networking)

# 3 - Full multiuser mode # 4 - unused # 5 - X11 # 6 - reboot (Do NOT set

initdefault to this)

各个运行级的详细解释:0 为停机,机器关闭。

1 )为单用户模式,就像Win9x下的安全模式类似。

2 )为多用户模式,但是没有NFS支持。

3 )为完整的多用户模式,是标准的运行级。

4 )一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置。

5 )就是X11,进到X Window系统了。

6 )为重启,运行init 6机器就会重启。

0和6一般不用;运行startx可启动到级别5.

7、 Init

init是Linux系统操作中不可缺少的程序之一。

所谓的init进程,它是一个由内核启动的用户级进程。

内核自行启动(已经被载入内存,开始运行,并已初始化所有的设备驱动程序和数据结构等)之后,就通过启动一个用户级程序init的方式,完成引导进程。所以,init始终是第一个进程(其进程编号始终为1)。

8、 设置随系统自启动的服务方式

方式一:Chkconfig

Chkconfig --level [0-6] name on 设定某项服务自启动

例如:

Chkconfig --level 345 nfs on 设定NFS服务在启动级别3、4、5中自启动

--add name

这个选项增加一项新的服务,chkconfig 确保每个运行级有一项 启动(S) 或者 杀死(K) 入口。如有缺少,则会从缺省的init 脚本自动 建立。

--del name

用来删除服务,并把相关符号连接从 /etc/rc[0-6].d 删除。

--list name

列表,如果指定了name 那么只是显示指定的服务名,否则,列出全部服务在不同运行级的状态。

方式二:/etc/rc.d/rc?.d

软连接到/etc/rc?.d,里边服务都是存在于/etc/init.d,一般启动模式为5

9、 Linux查看挂载盘文件系统类型df –lhT

查看目前挂载分区情况 fdisk –l

10、 ln 建立文件链接 –s符号链接

11、 hostname查看主机名

12、 查看服务器版本

dmidecode |grep Name

13、 查看服务器运行时间

uptime

14、 netstat 端口查看

-a (all)显示所有选项,默认不显示LISTEN相关

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 拒绝显示别名,能显示数字的全部转化成数字。

-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息,例如uid等

-s 按各个协议进行统计

-c 每隔一个固定时间,执行该netstat命令。

提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到

例如:netstat –ntpl 查看开放的tcp端口;netstat –nupl 查看开放的udp端口

15、 tcpdump 包分析命令【过多,尚未深入】

tcpdump –i eth1 指定网络接口

截获主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通信

Tcpdump host 210.27.48.1 and ( 210.27.48.2 or 210.27.48.3 )

监视指定主机和端口的数据包

如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令

tcpdump tcp port 23 host 210.27.48.1

对本机的udp 123 端口进行监视 123 为ntp的服务端口

tcpdump udp 123

16、 对磁盘限额命令 quota

1) 检查是否装有quota #rpm –q quota #rpm –qa |grep quota

2) 在/etc/fstab中添加usrquota,grpquota

3) 重新挂载需要限额的文件磁盘

4) 初始化quota数据库,运行quotacheck –cug 则每个挂载分区根目录下就会生成 文件

5) 开启一个定时任务 用来定时扫描quota空间 quotacheck程序

6) Quotaon 激活 或者重启激活

17、 启动程序

先 cd 到程序所在目录 一般是/home/…

再ll查看所要运行的程序是否有x权限 最后./[程序名] 如 ./lvesoftd

18、 nc 命令(netcat简称) 强大的网络工具

#nc –lp 22(端口号)开启本地端口

# nc -v -w 2 192.168.2.34 -z 21-24 端口扫描

-l 使用监听模式,管控传入的资料。

-p<通信端口> 设置本地主机使用的通信端口。

-v 显示指令执行过程。

-z 使用0输入/输出模式,只在扫描通信端口时使用。

19、 ftp命令

#ftp [主机名|IP] #ftp 192.168.26.66

#用户名、密码 用户名密码认证

ftp>get [remote file] [local file] ftp>get /rose/

ftp>mget [remote file] (默认当前目录) ftp>mget /rose

ftp>put [local file] [remote file] ftp>put /rose/

ftp>cd /home/。。 ftp>cd /rose

ftp>mput [local file] (默认当前目录) ftp>mput *.bmp

ftp>bye 断开 ftp>bye

ftp下scp命令 是安全的文件拷贝,基于ssh,可用来测两台服务器间速率

假定你想把本地计算机/home下的一个名为的文件拷贝到远程服务器192.168.0.2上的/home/tmp。而且你在远程服务器上的帐号名为root。可以用这个命令:

scp /home/ root@192.168.0.2:/home/tmp/

如果把文件从远程机器拷贝到本机当前目录用这个命令:

scp root@192.168.0.2:/home/

拷贝远程机器的整个目录下的文件

scp -r root@192.168.0.2:/home/* ./

20、 定时任务

Crontab

/etc/crontab

* * * * * /apps/bin/

分 时 日 月 周

例:45 4 1,10,22 * * /apps/bin/

上面的例子表示每月1、1 0、2 2日的4 : 4 5运行/ a p p s / b i n目录下的b a

21、 export命令

显示和设置声明变量

export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin 22、 ps aux 查找进程号

STAT 进程状态

D Uninterruptible sleep (usually IO)

R 正在运行可中在队列中可过行的;

S 处于休眠状态;

T 停止或被追踪;

W 进入内存交换(从内核2.6开始无效);

X 死掉的进程(从来没见过);

Z 僵尸进程;

< 优先级高的进程

N 优先级较低的进程

L 有些页被锁进内存;

s 进程的领导者(在它之下有子进程);

l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

+ 位于后台的进程组;

COMMAND 命令的名称和参数

可与grep匹配查询进程号

[root@localhost ~]# ps aux |grep httpd

23、 网络设置

修改主机名称与Gateway等设置

/etc/sysconfig/network

修改网络卡设置

/etc/sysconfig/network-script/ifcfg-eth0

修改DNS与Hosts设置

/etc/

/etc/hosts

24、 at执行一次性任务

启动atd服务进程

例:三个星期后的下午 5 点锺执行 /bin/ls

at 5pm + 2 weeks /bin/ls

明天的 17:20 执行 /bin/date

at 17:20 tomorrow /bin/date

at -q #查询任务

atrm #删除任务 25、 du命令

du –sh 路径 //仅显示当前目录总和大小,是对文件和目录磁盘使用的空间的查看,和df命令有些差别。

du –h 路径 //显示目录下所有子目录文件大小

26、 fdisk命令

关于fdisk -l 一些数值的说明

Disk /dev/hda: 80.0 GB, 8 bytes

255 heads, 63 sectors/track, 9729 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

这个硬盘是80G的,有255个磁面;63个扇区;9729个磁柱;每个 cylinder(磁柱)的容量是 8225280 bytes=8225.280 K(约为)=8.225280M(约为)。

其中 sda 有两个主分区(包括扩展分区),分别是 hda1 和hda2 (扩展分区);逻辑分区是 sda5 hda6

硬盘总容量=主分区(包括扩展分区)总容量

扩展分区容量=逻辑分区总容量

fdisk /dev/sda 可对该分区进行操作编辑等。

27、 /etc/init.d

即/etc/rc.d/init.d目录。

init.d目录包含许多系统各种服务的启动和停止脚本。里边放的一般都是可执行服务,这些服务常用命令:start,stop,restart。

/etc/rc.d/rc?.d ?从0到6,根据不同的启动级别(run-level),系统启动时加载不通的rc?.d 里边都是链接向init.d的链接。 28、 rpm

rpm执行安装包(二进制包、原代码包)。常用命令:

-ivh:安装显示安装进度--install--verbose--hash

-Uvh:升级软件包--Update;

-qpl:列出RPM软件包内的文件信息[Query Package list];

-qpi:列出RPM软件包的描述信息[Query Package install package(s)];

-qf:查找指定文件属于哪个RPM软件包[Query File];

-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];

-e:删除包

rpm -q samba //查询程序是否安装

rpm -ivh /media/cdrom/RedHat/RPMS/ //按路径安装并显示进度

rpm -ivh --relocate /=/opt/gaim //指定安装目录

rpm -ivh --test //用来检查依赖关系;并不是真正的安装;

rpm -Uvh --oldpackage //新版本降级为旧版本

rpm -qa | grep httpd #[搜索指定rpm包是否安装]--all搜索*httpd*

rpm -ql httpd #[搜索rpm包]--list所有文件安装目录

rpm -qpi #[查看rpm包]--query--package--install package信息

rpm -qpf #[查看rpm包]--file

rpm -qpR #[查看包]依赖关系

rpm2cpio |cpio -div #[抽出文件]

rpm -ivh #[安装新的rpm]--install--verbose--hash

rpm -ivh

rpm -Uvh #[升级一个rpm]--upgrade

rpm -e #[删除一个rpm包]—erase

29、 mount

命令格式:

mount [-t vfstype] [-o options] device dir

1.-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。

2.-o options 主要用来描述设备或档案的挂接方式。常用的参数有:

loop:用来把一个文件当成硬盘分区挂接上系统

ro:采用只读方式挂接设备 rw:采用读写方式挂接设备

iocharset:指定访问文件系统所用字符集

要挂接(mount)的设备。

设备在系统上的挂接点(mount point)。

挂载NFS文件时,服务器端设置参考文件【NFS文件系统共享.doc】

本地挂载命令:

mount –o loop 57.17.9.74:/home/nfs

useradd命令

useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。

useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive]

[-e expire ] [-p passwd] [-r] name

例如:

Useradd –g ftp –d /home/ftp –s /sbin/nolog wuyusen ///建立用户wuyusen 不允许shell登陆

Userdel wuyusen //删除用户

建立之后可通过passwd wuyusen 为此用户设置密码

31、 查看网络流量

Watch ifconfig ///简单 每秒钟 RX/TX bytes变化值

。。。待续

32、 ntpdate同步系统时间

/usr/sbin/ntpdate 218.28.47.194 //同步时间服务器时间

ntpdate与crontab合作使用一般。如果对时间要求更严格的 则需要使用ntpd服务调整同步。

33、 date设置系统时间

#date –s 2013-12-20

#date –s 10:00:00

#clock –w//写入BIOS

33、 su和su –

都是切换到默认root用户,但是:

su只是获得root的执行权限,却还是原来用户的环境变量PATH

su –是切换到默认root执行权限并获得root的环境变量PATH

34、 tar

tar [-c/x/t z/j v f p P N] 目录或文件名

30、 范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/

[root@linux ~]# tar -cvf /tmp/ /etc<==仅打包,不压缩!

[root@linux ~]# tar -zcvf /tmp/ /etc<==打包后,以 gzip 压缩

[root@linux ~]# tar -jcvf /tmp/2 /etc<==打包后,以 bzip2 压缩

--exclude 文件/目录 打包除该文件/目录的文件。

范例七:我要备份 /home, /etc ,但不要 /home/dmtsai

[root@linux ~]# tar --exclude /home/dmtsai -zcvf /home/*

/etc

35、 iptables

一、防火墙状态查看。

Service iptables status 可以看防火墙情况,chain(input output forward)。

二、清除原有规则。

不管你在安装linux时是否启动了防火墙,如果你想配置属于自己的防火墙,那就清除现在filter的所有规则.

[root@tp ~]# iptables -F 清除预设表filter中的所有规则链的规则

[root@tp ~]# iptables -X 清除预设表filter中使用者自定链中的规则

//后可跟 –t 表名

三、设定预设规则。

[root@tp ~]# iptables -p INPUT DROP

[root@tp ~]# iptables -p OUTPUT ACCEPT

[root@tp ~]# iptables -p FORWARD DROP

上面的意思是,当超出了IPTABLES里filter表里的两个链规则(INPUT,FORWARD)时,不在这两个规则里的数据包怎么处理呢,那就是DROP(放弃).应该说这样配置是很安全的.我们要控制流入数据包

而对于OUTPUT链,也就是流出的包我们不用做太多限制,而是采取ACCEPT,也就是说,不在着个规则里的包怎么办呢,那就是通过.

可以看出INPUT,FORWARD两个链采用的是允许什么包通过,而OUTPUT链采用的是不允许什么包通过.

这样设置还是挺合理的,当然你也可以三个链都DROP,但这样做我认为是没有必要的,而且要写的规则就会增加.但如果你只想要有限的几个规则是,如只做WEB服务器.还是推荐三个链都是DROP.

四、添加规则。

添加防火墙chain:

Iptables –t 表名(filter) -A INPUT –s 192.168.70.133/32 –p tcp –dport 22 –j

ACCEPT(属性)

-t 表名;-I 、-O、-A 后分别跟INPUT、OUTPUT、三种均可。

-s 后跟策略链种的IP、掩码。

-p 后跟协议tcp udp icmp等。

-dport –sport 分别是目标端口,和源端口的意思。

-j 后跟target(属性) ACCEPT/DROP。

五、删除规则。

Iptables –D INPUT/OUTPUT/FORWARD 规则号

例如:删除chain INPUT第2条规则 Iptables –D INPUT 2

查看规则号

Iptables –L –line-numbers

也可以用第二种方法 就是把添加规则中的-A变成-D,也可以删除规则。

六、注意

不要忘记每次修改之后都要保存防火墙设置

Service iptables save

36、 lsmod

是 list modules的缩写。即显示已载入系统的模块。

lsmod|grep ip_vs

即 检查lvs模块是否已经加载。

37、 ipvsadm

可用于查看负载均衡服务器状态

发布者:admin,转转请注明出处:http://www.yc00.com/xiaochengxu/1690956467a472559.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信