Linux 系统管理的基本命令

1.系统管理1

* 版本查询:http://distrowatch.com/

* Red Hat系列:

官方版:Red Hat Enterprise Linux 5/6/7     http://www.redhat.com/

先行测试版:Fedora Core 20              http://fedoraproject.org/

民间版(现已被红帽收编):CentOS 5/6      http://www.centos.org/

* 不同界面、控制台切换

图形界面 --> 字符终端:Ctrl+Alt+Fn

字符终端 --> 字符终端:Alt+Fn

字符终端 --> 图形界面:Alt+F1

* 常见配置文件及命令

/etc/sysconfig/network-scripts/ifcfg-eth0               //网卡

/etc/resolv.conf                                //DNS配置文件

/etc/sysconfig/network                        //主机名默认网关

/etc/hosts                                    //本地主机名映射文件

/etc/sysconfig/network-scripts/route-eth1                 //静态路由设置

/etc/udev/rules.d/70-persistent-net.rules             //udev规则文件

/etc/sysconfig/selinux

/etc/sysctl.conf

/etc/fstab                                  //开机自动挂载文件

/etc/default/useradd                            //新用户的默认设置

/etc/login.defs                                  //新用户的默认设置

/etc/sysconfig/i18n                            //系统默认语言配置

alias cq="shutdown -r+15"                        //临时别名设置

du  -sh                                    //[目录或文件大小]

df -h                                      //查看磁盘文件大小

wc -l                                     //统计行数

tune2fs -l  /dev/sda1 | grep acl                 //查看一个分区是否支持ACL权限

fdisk -l                                    //查看当前磁盘分区

service                                    //起服务

/etc/init.d/服务名                           //起服务

chkconfig  --list 服务名                         //查看自起状态

chkconfig [--level 2345] 服务名 on|off                  //随机自起设置

netstat  -anptu                               //查看网络连接状况

arp      -an                               //查看 arp缓存表

top                                        //查看进程

ps  aux                                       //查看进程

useradd

-u:设置 UID 标记号

-d:指定宿主目录,缺省为 /home/用户名

-g:指定所属的基本组

-G:指定所属的附加组

-e:指定账号失效时间

-M:不为用户建立并初始化宿主目录

-s:指定用户的登录Shell

passwd

-d:清空用户的密码,使之无需密码即可登录

-l:锁定用户账号       【在shadow中的对应密码串前加两个叹号 !! 】

-S:查看用户账号的状态(是否被锁定)

-u:解锁用户账号        【解除锁定时添加的两个叹号 !】

--stdin:从标准输入(比如管道)取密码

usermod

-l:更改用户的登录名

-L:锁定用户账户          【在shadow中的对应密码串前加一个叹号 ! 】

-U:解锁用户账户        【解除锁定时添加的一个叹号 !】

-u、-d、-e、-g、-G、-s:与useradd命令相同

chage

-l:列出密码有效期信息

-E:指定账号过期时间,YYYY-MM-DD

-I:指定当密码失效后多少天锁定账号

-m:指定密码的最小天数

-M:指定密码的最大天数

userdel  用户名                    //只删用户账号(不宿主目录邮箱文件等数据)

userdel  -r  用户名                 //删除用户账号及数据

gpasswd

-A:定义组管理员列表

-a:添加组成员,每次只能加一个

-d: 删除组成员,每次只能删一个

-M:定义组成员用户列表,可设置多个

grep   -i(忽略大小写)  -v(反转查找) -c(输出匹配结果数量)

^...:表示以 ... 开头

...$:表示以 ... 结尾

^$:表示空行

tar

-c:创建 .tar 格式的归档文件

-x:解开.tar格式的归档文件

-C:解包时指定释放的目标文件夹

-f:表示使用归档文件

-z:调用 gzip 执行压缩或解压缩

-j:调用 bzip2 执行压缩或解压缩

-J:调用 xz 执行压缩或unxz解压缩

-v:输出详细信息

-t:列表查看包内的文件

which           专门用于查找外部命令,程序文件所在位置

eg: # which scp

/usr/bin/scp

# rpm -qf /usr/bin/scp

openssh-clients-5.3p1-111.el6.x86_64

find    [路径]   [条件]   (默认不指定路径,就是当前路径)

[路径]     [条件]   -exec  命令 {} \ ;   代表find额外命令开始到结束({} 替代每一个查找结果)

-name      名字

-a      (多个条件同时满足)

-o      (多个条件满足一条即可)

-size     大小(单位c表示byte,k表示1024bytes)

eg:  find /boot -type l -size +2048k -exec ls -l{} \;

find /var -mtime+4    //+4代表大于等于5天前的文件名,-4代表小于等于4天内的文件名,4则是代表4~5那一天的文件名

* 用户的初始化配置文件

配置文件来源:新建用户时,根据 /etc/skel 模板目录复制

主要的初始配置文件:

~/.bashrc:每次进入新的Bash环境时执行,多用来设置别名

~/.bash_profile:每次登录时执行,多用来设置环境变量

~/.bash_logout:每次退出登录时执行

*  全局设置(对所有用户有效):

/etc/bashrc、/etc/profile

* 快速编辑命令行

辅助操作:Tab键自动补齐、反斜杠 \ 强制换行

快捷键:

Ctrl + u:清空至行首

Ctrl + k:清空至行尾

Ctrl + w:删除前一个单词

Ctrl + l:清空整个屏幕

Ctrl + c:废弃当前编辑的命令行

* Shell环境中的通配符:任意字符 *  ,   单个字符 ?  ,  连续多个字符(任何一个)[a-z]  ,   不连续的多个字符串(全部) {a,min,xy}

* vim : PgUp和PgDn翻页、Home键(或^)、End键(或$)、到第一行(1G或gg)、到最后一行(G)

复制1行(yy)、复制3行(3yy) 、 粘贴到当前行之后(小写p)、粘贴到当前行之后(大写P)

删除单个字符(x或Delete键)、删除到行首(d^)、删除到行尾(d$)、删除1行(dd)、删除3行(3dd)

搜索(/word)切换结果(n、N)、撤销最近一次操作(小写u)、撤销当前行所有修改(大写U)、恢复前一次撤销(Ctrl + r,即重做)

保存(:w)、退出(:q)、另存为(:w /路径/文件)、读入其他文件(:r /路径/文件)

替换当前行第一个old  ( :s/old/new )、替换当前行所有old  ( :s/old/new/g )、替换第4~9行所有old ( :4,9 s/old/new/g )、                                                          替换文件内所有old (:%  s/old/new/g )

显示/不显示行号(:set  nu、:set  nonu)、启用/关闭语法高亮(:syntax  on、:syntax off)

开启/关闭查询结果高亮显示(:set  hlsearch、set  nohlsearch)、启用/关闭自动缩进(:set  ai、:set noai)

vim编辑器相关文件:

~/.vimrc,     保存用户的vim编辑器设置

~/.viminfo,   记录用户的历史操作

.filename.swp,编辑过程中的缓存文件

* rpm软件包管理

软件资源站:http://rpmfind.net/、http://www.centos.org/

rpm  -qa(列出已安装的所有RPM软件)、      rpm -q  软件名...(查询软件是否安装)、

rpm  -qi  软件名...(查询软件的描述信息)、rpm  -ql  软件名...(查询软件的完整安装清单)

rpm -qf  文件或目录的绝对路径...(查询某个文件或目录属于哪个RPM软件)

rpm  -qpi  /路径/软件名-版本.. .. .(查询软件包的描述信息)

rpm  -qpl  /路径/软件名-版本.. .. .(查询软件的完整安装清单)

rpm  -ivh  /路径/软件名-版本.. .. . (全新安装RPM软件包)

rpm  -Uvh  /路径/软件名-版本.. .. . (升级若原本未装,则全新安装)

rpm  -Fvh  /路径/软件名-版本.. .. . (若原本未装,则放弃安装)

** 安装/升级软件包时,可通过  --force  强制覆盖或降级

** 安装或卸载软件时,可通过 --nodeps 忽略依赖关系

** 安装或卸载软件时,可一次提供相互依赖的所有关联包,rpm会自动决定处理顺序

* yum 配置文件实例

[[email protected] ~]# vim  /etc/yum.repos.d/server.repo

[rhel6-server]

name=Red HatEnterprise Linux 6.5 Server

baseurl=file:///myiso

enabled=0

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

使用yum命令管理软件包:yum  list(列出所有软件)、 yum  list  installed(仅列出已安装的软件)

yum list  available(仅列出可用的软件)、 yum clean  all(清理yum缓存数据)

yum search 关键词(按关键词搜索可用的软件)、yum provides文件路径(查找能提供指定文件的可用软件)

安装图形环境: yum -y groupinstall "Desktop""Fonts" "X Window System"

安装开发环境: yum -y groupinstall "DevelopmentTools"

* 源码包编译安装

环境:安装’开发工具‘包组或者yum -y install gcc gcc-c++ make

步骤:        1)解包 tar                         【释放源代码至指定目录】

2)配置                          【指定安装目录/功能模块等选项】

./configure  --prefix=安装目录

** 查看配置帮助 ./configure  --help | less

** 此步骤成功后会生成 Makefile 文件

3)编译 make       【生成可执行的二进制程序文件】

4)安装 make install    【将编译好的文件复制到预先配置的安装目录】

** 编译+安装可合写成 make  &&  make install

* yum包清单生成

# yum -y installcreaterepo

# createrepo 清单路径

# vim/etc/yum.repo/*.repo

# yum repolist

2.系统管理2

* ACL访问控制

设置ACL策略:

setfacl  -m  u:用户名:权限   文件或目录...

setfacl  -m  g:组名:权限   文件或目录...

设置可继承的ACL策略:

setfacl -d  -m  u:用户名:权限   目录...

setfacl  -d  -m  g:组名:权限   目录...

清除所有ACL策略:

setfacl -b 文件或目录..

清除指定用户的ACL策略:

setfacl -x u:用户名 文件或目录...

setfacl -x g:组名文件或目录...

* 磁盘分区及格式化

概念:   每个扇区(sector),512字节

每个磁道(track)划分为63个扇区

逻辑磁头(盘面)数设为255个

-- > 一个柱面(cylinder)的大小 = 255 x 63 x 512 字节 = 8MB

-- > 硬盘或分区的容量 = 柱面大小 x 柱面数

两种硬盘分区方案:

MSDOS —— Master Boot Record —— 第1个扇区(512)、最多4个主分区、最大磁盘2.2TB

GPT —— GUID Partition Table  最大支持18EB磁盘

分区工具:      fdisk           【只支持MSDOS分区布局】

parted             【支持MSDOS、GPT分区布局】

parted  /dev/sdb   print                        //查看分区表

mkpart 【primary|logical|extended】 【ext4|vfat】开始 结束   //新增分区

partx -a /dev/sda                              //刷新所有分区

mkfs-t 文件类型 /dev/xdyz                        //格式化分区

swap交换分区

mkswap /dev/xdyz     把/dev/xdyz格式化成swap类型分区

swapon /dev/xdyz 启用/dev/xdyz到swap分区中

swapoff /dev/xdyz        停用/dev/xdyz

swapon -s              查看交换分区

free  -m           查看swap分区与内存的使用情况

利用文件创建SWAP分区

# dd if=/dev/zeroof=/tmp/swap.db bs=1M count=2048

# ls -lh /tmp/swap.db

# mkswap /tmp/swap.db

# swapon /tmp/swap.db

# swapon  -s

* 文件系统管理

# e2label /dev/sdb1"disk2part1"              设置卷标

# e2label /dev/sdb1                       查看卷标

# e2label /dev/sdb1""                 删除卷标

# blkid                                 查看块设备属性(UUID)

# fuser -vm 挂载点                            查看挂载点谁在使用

# fuser -km 挂载点                            终止挂载点的使用

开机自动挂载文件(/etc/fstab)

设备文件|卷标名|UUID 挂载点  类型   挂载参数     备份标记 检测顺序

/dev/sdb5        swap  swap defaults      0   0

autofs触发挂载

/etc/auto.master                        autofs主配置文件

/etc/auto.xxx                                挂载配置文件

* LVM逻辑卷管理

工具总览  管理物理卷:pvscan、pvcreate、pvdisplay、pvremove

管理卷组:vgscan、vgcreate、vgdisplay、vgremove、vgextend、vgreduce

管理逻辑卷:lvscan、lvcreate、lvdisplay、lvremove、lvextend、lvreduce

图形化管理工具: system-config-lvm

基本使用过程

1)建立物理卷

fdisk 分区 ...           【类型 8e】

partprobe  磁盘设备       【更新分区表】

pvcreate  设备名

2)整合为卷组

vgcreate  卷组名  物理卷...

或者

vgcreate -s pe大小 卷组名  物理卷...

3)划分逻辑卷

lvcreate   -L  大小 -n  逻辑卷名  卷组名

lvcreate   -l PE个数  -n  逻辑卷名  卷组名

逻辑卷的扩容

如果卷组空间不足,需要先扩展卷组:

vgextend    现有卷组名   要添加的物理卷...

扩展现有的逻辑卷:

vextend  -L  +大小  /dev/卷组名/逻辑卷名

或者

lvextend  -l  +PE个数  /dev/卷组名/逻辑卷名

识别调整后的逻辑卷容量

resize2fs  /dev/卷组名/逻辑卷名

df  -hT  挂载点

* 计划任务管理

crontab -e [ -u username]      编辑

-l                 查看

-r                删除

格式:

分 时 日 月 周  命令

*    表示该范围内的任意时间

,    表示间隔的多个不连续时间点

-    表示一个连续的时间范围

/    指定间隔的时间频率

at任务控制    /etc/at.allow、/etc/at.deny

* Linux引导过程

加电自检-->MBR扇区-->GRUB配置(/boot/grub/grub.conf)

-->root (hd0,0)

kernel (/boot/vmlinuz-....) --> /sbin/init (PID恒为1)

initrd (/boot/initrd-....img)

--> /etc/inittab:

/etc/rc.d/rc.sysinit

/etc/rc.d/rc 级别  (initdefault默认级别)(0、1、3、5、6)

--> /etc/rcX.d/快捷方式 (S75服务名、K24服务名)

--> /etc/rc.d/init.d/服务脚本

-->S99local --> /etc/rc.local (自定开机任务)

mingetty tty1-tty6 -->

--> login --> 验证用户配置(passwd、shadow)

--> /bin/bash --> 用户正常执行命令

** 如果进入运行级别5,则继续 --> GNOME桌面环境 --> 登录窗口

* 主要的启动配置文件

/etc/inittab:配置init程序的引导过程

/etc/rc.d/rc.sysinit:由init调用执行,设置网络/时钟、加载文件系统等一系列工作

/etc/rc.d/rc:由init调用执行,根据运行级别参数,加载/终止相应服务

/etc/rc.d/rc.local:由rc脚本调用执行,存放用户自定义的开机后自动执行的命令

/etc/rc.d/init.d/*:各系统服务的可执行脚本程序

* 进程管理

查看所有进程的静态快照:ps aux、ps  -elf  // 常见的STAT状态指示:R 运行中、S 休眠状态、Z 僵死状态

查看进程的动态排名:top、top -d5

查看进程树:pstree、pstree  PID、pstree  用户名

常用命令选项

-a:显示完整的命令行

-u:列出各进程所属的用户名

-p:列出对应的PID号

查看后台任务列表:jobs 、jobs  -l

将后台任务恢复到前台运行:fg、fg  任务编号

按PID杀死进程:kill  PID、kill -9  PID

按进程名杀死进程:killall  进程名

* 网络

测试域名解析

格式:host  目标主机 [DNS服务器]

nslookup  目标主机  [DNS服务器]

** 必须有可用的DNS服务器,否则将无法解析

** 若无法解析域名,就不能以域名的方式访问目标站点

** 若测试时未指定DNS服务器地址,则使用 /etc/resolv.conf中设置的地址

跟踪路由过程

格式:tracert   目标地址

traceroute    目标地址

mtr    目标地址  【集成ping和tracert优势】

路由

route  add default  gw  IP地址

route  del default  gw  IP地址

route  add -net  目标网段 gw  IP地址

route  del -net  目标网段

* 系统日志管理

内核及系统日志(由系统服务rsyslog统一进行管理)

/var/log/messages    内核及公共消息日志

/var/log/cron        计划任务日志

/var/log/dmesg      系统引导日志

/var/log/maillog     邮件系统日志

/var/log/secure       记录与访问限制相关日志

用户日志(记录系统用户登录及退出系统的相关信息)

/var/log/lastlog       最近的用户登录事件

/var/log/wtmp        用户登录、注销及系统开关机

/var/log/btmp        失败的用户登陆事件

/var/run/utmp         当前登录的每个用户详

程序日志(由各种应用程序独立管理的日志文件,记录格式不统一)

w                 查看当前登陆的用户

who                比w更加简洁

last                    最近系统登陆情况

lastb                   最近系统登陆失败的情况

rsyslog管理日志(/etc/rsyslog.conf)

服务类别.日志级别           日志消息发送位置  //格式

logrotate日志轮转(/etc/logrotate.conf)

weekly                                   轮转频率,默认每周

rotate 4                          保留4个轮转备份

create                                   执行轮转后创建新文件

#compress                                 是否压缩日志

include/etc/logrotate.d                        包含此目录下的配置

/var/log/wtmp {                             启用轮转的日志文件

monthly                        每月轮转一次

missingok                                   丢失不提示

notifempty                       如果为空则不轮转

minsize 1M                       日志达到1MB才开始轮转

create 0664 root utmp                      建新文件并设权限

rotate 1                               只保留一个备份

}

时间: 2024-10-09 21:43:41

Linux 系统管理的基本命令的相关文章

linux系统管理的基本命令

1.命令提示符 user@ubuntu-hansee:~/test$ 全局变量 PS1 PS2 echo $PS1 : \[\e]0;\[email protected]\h: \w\a\]${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ echo $PS2 : > 几个基本的提示符含义: \u:用户    \h:本地主机名 \w:当前工作目录名 \t:24小时制的时间    \T:12小时制的时间 修改当前终端的命令提示符

Linux系统管理与维护的基本命令

Linux系统管理与维护的基本命令 ls clear last pwd who dmesg cd w free passwd uname ps su uptime top 一.列出目录内容:ls ls 是list(列表,列出)的缩写,ls的基本语法: ls   [options]      [FILE]... 不带任何选项参数的ls命令,用于列出当前目录下所有的文件和子目录. ls 目录 :查看指定的目录 重要选项: -l :以列表形式显示目录内容详细信息 ls -l 第1列  第2列 第3列

Linux系统管理(二)(网络服务)

点击下载:Linux系统管理(二)(网络服务)

Linux系统管理(一)

点击下载:Linux系统管理(一)

linux下的基本命令

接下来介绍的命令,是针对RedHat版本下的基本命令. 压缩和戒烟的过程需要使用不同的命令来处理.其压缩和解压的命令是不一样的,所以要根据不同后缀名,来进行不同的命令来处理. *.gz <-> gzip命令压缩的文件 *.bz2 <-> bzip2命令压缩的文件 *.tar <-> tar命令打包的文件 *.tar.gz <-> tar打包后,再经过gzip压缩的文件 *.tar.bz2 <-> tar命令打包后,再经过bzip2压缩的文件 打包

Linux系统下基本命令

<Linux系统下基本命令> Linux系统下基本命令: 要区分大小写 uname 显示版本信息(同win2K的 ver) dir 显示当前目录文件,ls -al 显示包括隐藏文件(同win2K的 dir) pwd 查询当前所在的目录位置 cd cd ..回到上一层目录,注意cd 与..之间有空格.cd /返回到根目录. cat 文件名 查看文件内容 cat >abc.txt 往abc.txt文件中写上内容. more 文件名 以一页一页的方式显示一个文本文件. cp 复制文件 mv 移

linux学习 – linux系统管理命令

常用的Linux系统管理命令 whoami 显现当前操作的用户,如下图: hostname 显示主机名,如下图: top 动态显示当前耗费资源的进程信息,如下图: du 查看当前目录下,文件的大小 du -sh * df 查看磁盘大小 df -h 带有单位显示磁盘信息 ps ps -ef|grep java 查询java进程的PID kill 杀死进程,能够先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程.kill -9 pid 未完待续,后续补充~~ 原文链接:http:/

linux系统管理常用命令--top

linux系统管理常用命令--top top显示进程所占的系统资源,具体用法介绍如下: top命令用于动态监控进程所占的系统资源,默认每隔3秒变一次.它的特点是把占用系统资源(CPU.内存.磁盘I/O等)最高的进程放到最前面!上例中,top命令打印出了很多信息.包括系统负载(loadaverage).进程数(Tasks).CPU使用情况.内存(Mem)使用情况以及交换分区使用情况. 其中,VIRT这一项表示进程所占的虚拟内存,RES这一项为进程所占的真实内存大小,而%MEM这一项为使用内存的百分

Linux 系统管理04--账号管理

Linux系统管理04--账号管理 一.用户账号管理 1.用户账号概述 (1)用户账号的常见分类: 1>超级用户:root uid=0 gid=0 权限最大. 2>普通用户:uid>=500 做一般权限的系统管理,权限有限.(500<uid<60000) 3>程序用户:1=<uid<500 为了提升系统安全性,为了支持所对应服务对系统资源 的使用,不能用于登录系统或管理系统. (2)UID:用户标识 (3)用户账号文件 1>  /etc/passwd