linux安全shell命令,Linux安全基础:shell及一些基础命令(示例代码)

1.什么是shell?

Shell是用户和Linux操作系统之间的接口。

Linux中有多种shell,其中缺省使用的是Bash。

2.shell的分类

(1)bash

bash shell 是 Bourne shell 的一个免费版本,它是最早的 Unix shell,包括许多附加的特点。Bash 有可编辑的命令行,可以回查历史命令,支持 tab 键补齐以使用户避免输入长的文件名。

(2)csh

C shell 使用的是“类C”语法,借鉴了 Bourne shell 的许多特点,只是内部 shell 命令集有所不同。

(3)ksh

Korn shell 的语法与 Bourne shell 相同,同时具备了 C shell 的易用特点。许多安装脚本都使用 ksh ,即使您不把它作为您的主 shell,您也应该在系统中安装它。

(4)tcsh

TC shell 是 C shell 的一个增强版本,与 C shell 完全兼容。

(5)zsh

Z shell 是 Korn shell 的一个增强版本,具备 bash shell 的许多特色。

3.shell基础

(1)Redhat Linux系统默认的shell是bash。

(2)对普通用户用$作提示符,对超级用户用#作提示符。

(3)查看当前系统支持的shell:cat /etc/shells

(4)查看当前的bash版本:echo $0

(5)查看当前shell的版本信息:bash --version

4.shell控制台使用方法

(1)什么是“控制台”console?

控制台就是使用字符操作界面的人机接口。

(2)操作控制台

Linux一般有6个虚拟控制台

按Ctrl-Alt-(F1-F6)来实现虚拟控制台的选择。F2到F5是命令行界面,F1是图形化界面。

从一个控制台切换到新的虚拟控制台以后,linux也会先显示登录提示符,就象第一次登录一样。在装入另一个命令解释器之前,也会询问用户名和口令。 所以,我们可以在不同的控制台以不同的用户身份登录,更方便了用特定的身份执行特定的操作。当用户从一个虚拟控制台切换到一个新的虚拟控制台以后,在原来 那个控制台运行的程序将继续运行。

(3)虚拟控制台的优点

当一个进程出错锁住输入时可以切换到其他虚拟控制台来终止这个进程。

(4)如果想启动后不让系统在图形下登陆,直接进入字符状态,则可以通过修改/etc/inittab文件实现,方法如下(KDE下操作):

vim /etc/inittab文件看到如下内容:

#

# inittab This file describes how the INIT process should set up

# the system in a certain run-level.

#

# Author: Miquel van Smoorenburg,

# Modified for RHS Linux by Marc Ewing and Donnie Barnes

#

# Default runlevel. The runlevels used by RHS are:

# 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)

#

id:5:initdefault:

将上面最后一行的5改成3,就能让系统不在图形下登陆,对其它几个数字我也作一下介绍:

0:停机(不要设置为启动默认级别)

1:单用户模式

2:多用户,无NFS(如果您没有配置网络,该级别与3一样)

3:完全多用户模式

4:不使用

5:图形模式

6:重启(不要设置为启动默认级别)

5.系统的登录流程

BIOS启动引导阶段:从MBR中装载启动引导管理器,并运行该启动引导管理。

GRUB为例启动引导阶段:读取/boot/grub.conf文件并显示启动菜单

内核阶段:挂载根文件系统

Sys V init 初始化阶段:启动/sbin/init程序和读取/etc/inittab文件

6.基础命令

(1)ls命令

ls-a查看显示一般文件和.开头的隐藏文件

ls-l查看更详细的文件资料,可查看文件权限。

ls-F在列出的文件或目录名称后加一符号,例如可执行文件加*,目录则加/。

(2)cd命令

进出目录的命令。

cd cd~ 回到home目录

cd - 回到之前操作过的目录

cd .. 回到上一层目录

cd / 回到根目录

cd ../../ 回到上两级目录

(3)mkdir命令

创建文件

mkdir -p /abc/bc/a 多层目录创建

touch 1.txt新建一个名为1的txt文件

(4)rmdir 命令

删除已存在的空目录

(5)mv移动目录或给文件重命名

mv /tmp/xx.txt /root把tmp目录下的xx.txt文件移动到root目录下

mv xx.txt yy.txt把xx.txt重命名为yy.txt

(6)cp命令

复制文件或文件夹

cp -r 源文件 目的文件

例:cp /abc/1.txt /cd 把abc文件夹里的1.txt复制到cd里

-r是递归 连同子目录一起复制。

(7)rm命令

删除文件命令

rm -i 系统会询问我们是否删除该文件

rm -r 连同子目录一起删除

rm -f 不经确认强制删除文件

(8)cat命令

显示或链接一般的ascii文本文件

cat a.txt 显示a.txt这个文件的内容

cat a.txt b.txt 依顺序显示a.txt b.txt里的内容

cat a.txt b.txt>c.txt把a.txt b.txt的内容结合起来再重新定向到c.txt中。

cat -n显示行号

cat -b空行不显示行号

cat -A显示制表符

head -n 5 ip.txt显示ip.txt文件里的前5行内容

tail -n 5 ip.txt显示ip.txt文件里的后5行内容

pwd显示当前路径

more显示一般的文本文件,可翻页。比cat理想。

(9)用户及用户组管理命令

新建用户和删除用户

useradd 用户名 -p 123

userdel 用户名

新建组合删除组

groupadd 组名

groupdel 组名

passwd改密码

超级用户可改其他用户的密码

passwd 其他用户用户名

(10)su su- 和sudo的区别

su:环境变量不改变,用的不是root的环境变量。离开当前用户身份exit。

su-:全部切换过来,用的是root的环境变量

sudo:暂时提高该命令权限

(11)文件权限的总结

User宿主 group组 other其他

r是read权限,值为4

w是write权限,值为2

x是可执行权限,值为1

rwx是可读可写可执行。

rws是暂时提升权限执行。

rwt可读可写不可删。

(12)chmod命令

修改目录或文件的权限的命令

chmod u+x ip.txt给ip这个文件加可执行命令。

chmod -R 递归加权或降权

(13)进程及任务管理命令

ps命令-----最基本也是最强大的进程查看命令

ps -e 显示所有进程

-f 全格式

-l 长格式

top命令-----动态显示进程信息

zombie 僵尸进程、挂死进程

wa I/O读写

id CPU空闲空间

kill命令-----删除进程

kill -q 强制删除

killall httpd删除所有httpd的进程

(14)磁盘及文件系统管理命令

df查看磁盘利用率

-k显示当前磁盘剩余的磁盘空间

-h显示为符合人类阅读习惯

du查看文件大小

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值