学习RedHat7第一课

学习RedHat7第一课

  • 带着目的学习
  • 虚拟机创建(拷贝)的题外话
  • 基础命令
    • 如何查看帮助信息--man--手册
    • 如何查询系统时间--date--时间
    • 如何关机重启服务器--init
    • 如何查看进程--ps--top
    • 如何强制关闭进程--kill--killall-杀死进程
  • 查看系统状态
    • 如何查看系统内核、版本信息
    • 如何查看硬件状态
    • 如何查看登录用户--who--w--谁
    • 如何查看执行过的命令--history--历史
  • 切换工作目录命令
    • 如何查看当前工作目录--pwd
    • 如何切换工作目录--cd
    • 如何查看当前目录文件
  • 文本编辑器命令
    • 如何查看文件内容
    • 如何(增删改查)操作文件

带着目的学习

最近报了课余培训班,开始学习linux,系统的学习RHEL7,之后打算考RHCE。
第0课灌水较多,各种介绍红帽7基础信息,直接跳过直奔主题,第一课,无外乎基础命令介绍,有一些参数还是挺重要的,全记下来当然更好,但毕竟精力有限,有方向、有针对的效果也不差。

虚拟机创建(拷贝)的题外话

现在大部分都是通过虚拟机来进行实验的,当前主推版本是VMWare Workstations pro12
创建好虚拟机后出现了一些小插曲:

  1. 由于我有两台电脑经常倒换使用,所以在其中一台电脑上创建好虚机RHEL7后,另一台直接用拷贝的第一台;第二台开机时提示:

该主机cpu类型不支持虚拟化性能计数器,开启模块VPMC的操作失败,未能启动虚拟机。

解决方法: 查看资料,需要调整VMWare W12设置。
选中虚机-编辑虚拟机设置-硬件-处理器-(右侧)虚拟化引擎,取消相应功能的勾选。
学习RedHat7第一课_第1张图片
恢复正常开机。
2. 还是这台拷贝的虚拟,开机后修改网卡地址,配置一直不生效,不报错。
迁移虚拟机后网卡无法配置
试过各种方法,发现网卡MAC地址和“硬件-网络适配器-高级-MAC地址”中不同,重新生成也没有效果,怀疑是拷贝时网卡名称、mac地址是第一台电脑中的地址与第二台不对应。

学习RedHat7第一课_第2张图片
解决方法: 选中虚机-编辑虚拟机设置-硬件-删除网卡并新建网卡,然后重启虚机;

基础命令

如何查看帮助信息–man–手册

最重要就靠它了,各种命令和参数用法都可以通过man来查询,“有事儿找哥儿们”。比如 :
man grep

如何查询系统时间–date–时间

主要用于查看时间、按指定格式显示时间,比如:
date
date "+%Y-%m-%d %H:%M:%S"
在这里插入图片描述
通过-s还可以设置时间
date -s 1999-07-07

如何关机重启服务器–init

重启:
init 6
reboot
关机:
init 0
shutdown
赶脚init更好用。

如何查看进程–ps–top

查看当前进程(一次):
ps -aux----process status----进程状态
可以配合管道符+grep精确查找进程;
ps -aux|grep sshd
实时查看进程,侧重于实时性,刷新显示系统信息:
top
在这里插入图片描述

如何强制关闭进程–kill–killall-杀死进程

在stop.sh和systemctl stop无效,或是位置路径,服务实际名称时,可以通过kill和killall命令关闭进程:kill+进程号:
比如现在运行了一个vim进程,可以配合ps或pidof查找进程号
ps -aux|grep vim
pidof vim
在这里插入图片描述
使用命令kill:
kill 5041
还可以通过“killall+进程名”命令批量删除进程:
killall vim
删除进程需谨慎,进程号、进程名一定填写正确。

查看系统状态

如何查看系统内核、版本信息

查看内核版本:
uname -a
查看系统版本:
cat /etc/redhat-release
redhat6中还可以用lsb命令查看:
lsb_release -a
RHEL6中默认安装了lsb,RHEL7需要手动安装lsb,安装后也可使用。

如何查看硬件状态

  1. 查看网卡状态:
    ifconfig ……interface config
  2. 查看硬盘使用量:
    df -h
  3. 查看CPU、内存使用量:
    free -h
  4. 查看系统负载:
    uptime

如何查看登录用户–who–w--谁

可以用who和w查看当前用户
who
w
学习RedHat7第一课_第3张图片

如何查看执行过的命令–history–历史

history----查看执行命令记录
history -c----清空执行命令记录
执行命令记录(即历史命令)可以被清空或篡改。

切换工作目录命令

首先要区分的两个概念:绝对路径和相对路径。

如何查看当前工作目录–pwd

pwd----print working directory----打印工作目录

如何切换工作目录–cd

cd /----change directory----切换到根(/)目录
cd -----切换到上次工作目录,重复执行在两个工作目录循环跳转
cd ~----切换到用户home目录。

如何查看当前目录文件

ls----list----列出当前目录文件
ls -al----列出全部文件并显示详细信息
ls -hl----列出文件并人性化显示详细信息
ll----ls -l----列出文件并显示详细信息

文本编辑器命令

主要分成三个大类,读取文件、修改文件、文件编辑器。

如何查看文件内容

cat----查看文件内容(一次)
more----分页查看文件内容,适用于较大文件
head----查看文件夹开头n行
tail----查看文件结尾n行
tail -f /var/log/secure----实时查看最新日志----实用
stat /etc/passwd----查看文件详细属性信息
diff fileA fileB----对比文件内容不同

如何(增删改查)操作文件

touch fileA----创建文件A
touch -d 19700101 fileA----将文件A的创建时间修改为1970年1月1日
mkdir a/----创建文件夹a
mkdir -p a/b/c/d/e----递归创建文件夹
cp fileA fileB----创建文件A的复制文件B
mv fileA----移动或重命名(工作目录不变)文件
rm fileA----删除文件A
file fileA----查看文件A编码格式
扩展1: 压缩解压文件
tar -czvf fileA.tar fileA----创建etc文件A的压缩文件文件A.tar
tar -xzvf fileA.tar----解压fileA.tar文件到当前工作目录
注:还有-cvf/xvf,-cjvf/xjvf参数,用法相同,压缩格式不同。
扩展2: 查找文件
格式为“find [查找路径] 寻找条件 操作”
find -name file*----查找当前路径下名字以file开头的文件
find --user root -exec{} ls -l \;----查找当前路径下所有者是root的文件的详细信息
注:将查找到的结果执行-exec{}和;中间的命令。
扩展3: 绝大部分命令皆可grep
grep命令用于在文本中执行关键词搜索,并显示匹配的结果,格式为“grep [选项] [文件]”。
常用参数:
-b----将可执行文件(binary)当作文本文件(text)来搜索
-c----仅显示找到的行数
-i----忽略大小写
-n----显示行号
-v----反向选择——仅列出没有“关键词”的行。

补充: 以下引用自CSDN另一位博主的文章:[Linux命令简写和全称],供大家学习参考

su:Swith user 切换用户,切换到root用户
cat: Concatenate 串联
uname: Unix name 系统名称
df: Disk free 空余硬盘
du: Disk usage 硬盘使用率
chown: Change owner 改变所有者
chgrp: Change group 改变用户组
ps:Process Status 进程状态
tar:Tape archive 解压文件
chmod: Change mode 改变模式
umount: Unmount 卸载
ldd:List dynamic dependencies 列出动态相依
insmod:Install module 安装模块
rmmod:Remove module 删除模块
lsmod:List module 列表模块
alias :Create your own name for a command
bash :GNU Bourne-Again Shell linux内核
grep:global regular expression print
httpd :Start Apache
ipcalc :Calculate IP information for a host
ping :Send ICMP ECHO_Request to network hosts
reboot: Restart your computer
sudo:Superuser do

/bin = BINaries
/dev = DEVices
/etc = 存放配置文件的地方。配置文件的目录
Editable Text Configuration 初期etcetra directory(ETCetera),后来"Editable Text Configuration" 或者 “Extended Tool Chest”。
/opt = Optional application software packages
pwd = print working Directory (打印工作目录)。
/lib = LIBrary
/proc = PROCesses
/sbin = Superuser BINaries
/tmp = TeMPorary
/usr = Unix Shared Resources
/var = VARiable ? 是储存各种变化的文件,比如log等等
FIFO = First In, First Out
GRUB = GRand Unified Bootloader
IFS = Internal Field Seperators
LILO = LInux LOader
MySQL = My最初作者的名字SQL = Structured Query Language
PHP = Personal Home Page Tools = PHP Hypertext Preprocessor
PS = Prompt String
Perl = “Pratical Extraction and Report Language” = “Pathologically Eclectic Rubbish Lister”
Python Monty Python’s Flying Circus
Tcl = Tool Command Language
Tk = ToolKit
VT = Video Terminal
YaST = Yet Another Setup Tool
apache = “a patchy” server
apt = Advanced Packaging Tool
ar = archiver
as = assembler
bash = Bourne Again SHell
bc = Basic (Better) Calculator
bg = BackGround
cal = CALendar
cat = CATenate
cd = Change Directory
chgrp = CHange GRouP
chmod = CHange MODe
chown = CHange OWNer
chsh = CHange SHell
cmp = compare
cobra = Common Object Request Broker Architecture
comm = common
cp = CoPy
cpio = CoPy In and Out
cpp = C Pre Processor
cups = Common Unix Printing System
cvs = Current Version System
daemon = Disk And Execution MONitor
dc = Desk Calculator
dd = Disk Dump
df = Disk Free
diff = DIFFerence
dmesg = diagnostic message
du = Disk Usage
ed = editor
egrep = Extended GREP
elf = Extensible Linking Format
elm = ELectronic Mail
emacs = Editor MACroS
eval = EVALuate
ex = EXtended
exec = EXECute
fd = file descriptors
fg = ForeGround
fgrep = Fixed GREP
fmt = format
fsck = File System ChecK
fstab = FileSystem TABle
fvwm = F*** Virtual Window Manager
gawk = GNU AWK
gpg = GNU Privacy Guard
groff = GNU troff
hal = Hardware Abstraction Layer
joe = Joe’s Own Editor
ksh = Korn SHell
lame = Lame Ain’t an MP3 Encoder
lex = LEXical analyser
lisp = LISt Processing = Lots of Irritating Superfluous Parentheses
ln = LiNk
lpr = Line PRint
ls = list
lsof = LiSt Open Files
m4 = Macro processor Version 4
man = MANual pages
mawk = Mike Brennan’s AWK
mc = Midnight Commander
mkfs = MaKe FileSystem
mknod = MaKe NODe
motd = Message of The Day
mozilla = MOsaic GodZILLa
mtab = Mount TABle
mv = MoVe
nano = Nano’s ANOther editor
nawk = New AWK
nl = Number of Lines
nm = names
nohup = No HangUP
nroff = New ROFF
od = Octal Dump
passwd = PASSWorD
pg = pager
pico = PIne’s message COmposition editor
pine = “Program for Internet News & Email” = “Pine is not Elm”
ping = Packet InterNet Grouper
pirntcap = PRINTer CAPability
popd = POP Directory
pr = pre
printf = PRINT Formatted
ps = Processes Status
pty = pseudo tty
pushd = PUSH Directory
pwd = Print Working Directory
rc = runcom = run command, shell
rev = REVerse
rm = ReMove
rn = Read News
roff = RunOFF
rpm = RPM Package Manager = RedHat Package Manager
rsh, rlogin, = Remote
rxvt = ouR XVT
sed = Stream EDitor
seq = SEQuence
shar = SHell ARchive
slrn = S-Lang rn
ssh = Secure SHell
ssl = Secure Sockets Layer
stty = Set TTY
su = Substitute User
svn = SubVersioN
tar = Tape ARchive
tcsh = TENEX C shell
telnet = TEminaL over Network
termcap = terminal capability
terminfo = terminal information
tr = traslate
troff = Typesetter new ROFF
tsort = Topological SORT
tty = TeleTypewriter
twm = Tom’s Window Manager
tz = TimeZone
udev = Userspace DEV
ulimit = User’s LIMIT
umask = User’s MASK
uniq = UNIQue
vi = VIsual = Very Inconvenient
vim = Vi IMproved
wall = write all
wc = Word Count
wine = WINE Is Not an Emulator
xargs = eXtended ARGuments
xdm = X Display Manager
xlfd = X Logical Font Description
xmms = X Multimedia System
xrdb = X Resources DataBase
xwd = X Window Dump
yacc = yet another compiler compiler

/var 包含系统一般运行时要改变的数据。通常这些数据所在的目录的大小是要经常变化或扩充的。原来 /var 目录中有些内容是在 /usr 中的,但为了保持 /usr 目录的相对稳定,就把那些需要经常改变的目录放到 /var 中了。每个系统是特定的,即不通过网络与其他计算机共享。下面列出一些重要的目录 ( 一些不太重要的目录省略了 ) 。

  1. /var/catman : 包括了格式化过的帮助 (man) 页。帮助页的源文件一般存在 /usr/man/catman 中;有些 man 页可能有预格式化的版本,存在 /usr/man/cat 中。而其他的 man 页在第一次看时都需要格式化,格式化完的版本存在 /var/man 中,这样其他人再看相同的页时就无须等待格式化了。 (/var/catman 经常被清除,就像清除临时目录一样。 )
  2. /var/lib : 存放系统正常运行时要改变的文件。
  3. /var/local : 存放 /usr/local 中安装的程序的可变数据 ( 即系统管理员安装的程序 ) 。注意,如果必要,
    即使本地安装的程序也会使用其他 /var 目录,例如 /var/lock 。
  4. /var/lock : 锁定文件。许多程序遵循在 /var/lock 中产生一个锁定文件的约定,以用来支持他们正在使用某个特定的设备或文件。其他程序注意到这个锁定文件时,就不会再使用这个设备或文件。
  5. /var/log : 各种程序的日志 (log) 文件,尤其是 login (/var/log/wtmplog 纪录所有到系统的登录和注销 ) 和 syslog (/var/log/messages 纪录存储所有核心和系统程序信息 ) 。 /var/log 里的文件经常不确定地增长,应该定期清除。
  6. /var/run : 保存在下一次系统引导前有效的关于系统的信息文件。例如, /var/run/utmp 包含当前登录的用户的信息。
  7. /var/spool : 放置 “ 假脱机 (spool)” 程序的目录,如 mail 、 news 、打印队列和其他队列工作的目录。每个不同的 spool 在 /var/spool 下有自己的子目录,例如,用户的邮箱就存放在 /var/spool/mail 中。
  8. /var/tmp : 比 /tmp 允许更大的或需要存在较长时间的临时文件。注意系统管理员可能不允许 /var/tmp 有很旧的文件。

/etc 文件系统
/etc 目录包含各种系统配置文件,下面说明其中的一些。其他的你应该知道它们属于哪个程序,并阅读该程序的 man 页。许多网络配置文件也在 /etc 中。

  1. /etc/rc 或 /etc/rc.d 或 /etc/rc?.d : 启动、或改变运行级时运行的脚本或脚本的目录。
  2. /etc/passwd : 用户数据库,其中的域给出了用户名、真实姓名、用户起始目录、加密口令和用户的其他信息。
  3. /etc/fdprm : 软盘参数表,用以说明不同的软盘格式。可用 setfdprm 进行设置。更多的信息见 setfdprm 的帮助页。
  4. /etc/fstab : 指定启动时需要自动安装的文件系统列表。也包括用 swapon -a 启用的 swap 区的信息。
  5. /etc/group : 类似 /etc/passwd ,但说明的不是用户信息而是组的信息。包括组的各种数据。
  6. /etc/inittab : init 的配置文件。
  7. /etc/issue : 包括用户在登录提示符前的输出信息。通常包括系统的一段短说明或欢迎信息。具体内容由系统管理员确定。
  8. /etc/magic : “file” 的配置文件。包含不同文件格式的说明, “file” 基于它猜测文件类型。
  9. /etc/motd : motd 是 message of the day 的缩写,用户成功登录后自动输出。内容由系统管理员确定。常用于通告信息,如计划关机时间的警告等。
  10. /etc/mtab : 当前安装的文件系统列表。由脚本 (scritp) 初始化,并由 mount 命令自动更新。当需要一个当前安装的文件系统的列表时使用 ( 例如 df 命令 ) 。
  11. /etc/shadow : 在安装了影子 (shadow) 口令软件的系统上的影子口令文件。影子口令文件将 /etc/passwd 文件中的加密口令移动到 /etc/shadow 中,而后者只对超级用户 (root) 可读。这使破译口令更困难,以此增加系统的安全性。
  12. /etc/login.defs : login 命令的配置文件。
  13. /etc/printcap : 类似 /etc/termcap ,但针对打印机。语法不同。
  14. /etc/profile 、 /etc/csh.login 、 /etc/csh.cshrc : 登录或启动时 bourne 或 cshells 执行的文件。这允许系统管理员为所有用户建立全局缺省环境。
  15. /etc/securetty : 确认安全终端,即哪个终端允许超级用户 (root) 登录。一般只列出虚拟控制台,这样就不可能 ( 至少很困难 ) 通过调制解调器 (modem) 或网络闯入系统并得到超级用户特权。
  16. /etc/shells : 列出可以使用的 shell 。 chsh 命令允许用户在本文件指定范围内改变登录的 shell 。提供一
    台机器 ftp 服务的服务进程 ftpd 检查用户 shell 是否列在 /etc/shells 文件中,如果不是,将不允许该用户登录。
  17. /etc/termcap : 终端性能数据库。说明不同的终端用什么 “ 转义序列 ” 控制。写程序时不直接输出转义
    序列 ( 这样只能工作于特定品牌的终端 ) ,而是从 /etc/termcap 中查找要做的工作的正确序列。这样,多数的程序可以在多数终端上运行。

作者:chinayuan
来源:CSDN
原文:https://blog.csdn.net/chinayuan/article/details/51291666
版权声明:本文为博主原创文章,转载请附上博文链接!

你可能感兴趣的:(Linux,基础,Linux,RedHat7,基础)