翼度科技»论坛 云主机 LINUX 查看内容

Linux入门

14

主题

14

帖子

42

积分

新手上路

Rank: 1

积分
42
概述

Linux本质是一个OS,图标是一只企鹅,叫Tux。
Linux发行版本:

  • Red Hat:收费版 RHEL(Red Hat Enterprise Linux),免费版 fedora(实验版) 和 CentOS
  • debian➡ubantu➡Linux Mint,都免费。
  • SUSE:收费版 SEL(SUSE Enterprise Linux),免费版 open SUSE。
  • 其他:gentoo linux,archlinux➡manjaro。
Linux系统中一切皆文件
/bin:Binary,存放常用命令
/sbin:Super User Binary,系统管理员的命令
/home:普通用户的目录,每个用户在此目录下有一个以账号命名的文件夹
/root:系统管理员的目录
/lib:系统的基础共享库,几乎所有的程序都用到
/lost+found:一般为空,系统非法关机后会存放一些文件
/etc:配置文件
/usr:用户的很多程序和文件放在此处,类似windows的program files
/boot:存放启动Linux的核心文件,自己安装的别放这
/proc:一个虚拟的目录,是系统内存的映射
/srv:service,存放一些服务启动之后的需要提取的数据
/sys:存放了2.6内核中新出现的一个文件系统sysfs
/tmp:存放临时文件
/dev:类似Windows的设备管理器,将所有硬件用文件形式存储
/media:Linux会将自动识别的设备(U盘、光驱)挂载到此目录下
/mnt:用来让用户挂载别的文件系统
/opt:安装额外软件的目录,比如MySQL
/var:存放不断扩充或经常被修改的东西,比如日志文件
/selinux:SELinux是一种安全子系统,能控制程序只能访问特定文件
Vim

Vim是类Unix系统最常用的文本编辑器
安装命令:
  1. yum -y install vim
复制代码
使用Vim打开文件:
  1. vim a.txt
复制代码
三种模式


  • 一般模式

    • 打开文件后默认的模式
    • 可以删除、复制、粘贴
    • 但是无法编辑文件内容

  • 编辑模式

    • 一般模式下按[i、I、o、O、a、A]进入的模式
    • 可以进行文件的编辑
    • Esc退回一般模式

  • 命令模式

    • 一般模式下按[?、/、:]进入的模式
    • 可以输入一些指令进行操作
    • 比如查找、替换、保存、退出、显示行号等操作
    • Esc退回一般模式

常用命令

一般模式:
指令功能yy复制当前行y 数字 y从当前行开始复制n行dd删除当前行d 数字 d从当前行开始删除n行p在光标所在行的下一行粘贴u撤销^光标移到行头$光标移到行尾gg光标移到页头G光标移到页尾数字 + G光标移到目标行yw复制一个单词dw删除一个单词X删除一个字母,向前删,类似Backspacex删除一个字母,向后删,类似Del编辑模式:
指令功能i光标前插入I光标所在行的行头插入a光标后插入A光标所在行的行尾插入o下一行插入O上一行插入命令模式:
指令功能:w保存:q退出:!强制执行:%s/旧字符串/新字符串查询替换/字符串查找字符串?字符串查找字符串:set nu显示行号:set nonu不显示行号ZZ:nohl去除高亮显示服务管理命令

临时服务管理

命令功能systemctl --type service查看所有运行中的服务systemctl start 服务名开启服务systemctl stop 服务名停止服务systemctl restart 服务名重启服务systemctl status 服务名查看服务状态服务自启管理

命令功能systemctl list-unit-files查看所有服务自启配置systemctl enable 服务名开启服务自启systemctl disable 服务名关闭服务自启systemctl is-enabled 服务名查看某个服务自启状态建议关闭防火墙自启动
  1. systemctl disable firewalld       
复制代码
关机&重启

命令功能sync将数据从内存同步到硬盘poweroff关闭系统,等价 shutdown -h nowreboot重启系统,等价 shutdown -r now
shudown [选项] [参数]

  • 选项

    • -h 关机,即 halt
    • -r 重启,即 reboot

  • 参数

    • now,立刻
    • 数字,多久后执行,单位分钟

  • 还可以显示提示信息,比如
    1. shutdown -h 3 '系统会在3分钟后关机'
    复制代码
常用快捷键

按键功能Ctrl + c停止进程Ctrl + l清屏,等价命令 clear
彻底清屏是 resetTab提示,防止输错上下键复用执行过的命令Ctrl + AltLinux 和 Windows 之间切换文件目录类

man 获得帮助信息

man 命令名

  • man 即 manual,手册
help 获得shell内置命令的帮助信息

help 命令名
pwd 显示当前目录的绝对路径
  1. [root@hadoop101 ~]# pwd
  2. /root
复制代码
ls 列出目录的内容

ls [选项] [目录]

  • 选项

    • -l        列出详细信息,简写为 ll
    • -a    同时列出隐藏文件

  • 目录

    • 相对路径或绝对路径
    • 若不指定,默认当前目录

文件类型和权限链接数文件属主文件属组文件大小(byte)创建或最近修改时间文件名drwxr-xr-x.2rootroot40965月  17 17:47test注意:链接包括硬链接和软链接,文件自身就是一个硬链接,所以链接数都至少为1
cd 切换路径

cd [参数]
参数cd 相对路径/绝对路径切换目录cd ~ 或 cd回到当前用户的家目录cd ..切换到上一级目录cd -切换到上一次所在目录cd -P跳转绝对物理路径,而非快捷方式路径mkdir 创建目录

mkdir [选项] [目录]

  • 选项

    • -p        创建多层目录

touch 创建空文件

touch [文件名]

  • 可以直接写文件名,会在当前目录下创建
  • 也可写任意已存在目录的路径,在其下创建
cp 复制文件

cp [选项] [源文件或目录] [目标文件或目录]

  • 选项

    • -r        递归复制整个文件夹

  • 若源文件与目标重名,可选择是否覆盖,也可以用 \cp 命令强制覆盖不提示
rm 删除目录或文件

rm [选项]

  • 选项

    • -r        递归删除目录所有内容
    • -f    强制执行不提示
    • -v    显示指令的详细执行过程

mv 重命名或移动文件

mv oldFile newFile        重命名文件
mv source dest        移动文件
cat 查看小文件

cat [选项] [文件]

  • 一般用来查看一屏可以显示全的文件
  • 选项

    • -n        查看内容时显示行号

less 查看大文件


  • 不是一次性加载,而是根据现实需要来加载内容,适于大文件
  • pageup、pagedown翻页
  • ?或/查询文件中是否包含某内容
  • q离开less程序
echo 向控制台输出内容

echo[选项] [内容]

  • 选项

    • -e        支持转义字符,比如\t、\n

head 输出文件头部内容

head [选项] [文件]

  • 默认显示文件前十行的内容
  • 选项

    • -n        指定显示前多少行内容

tail 输出文件尾部内容


  • 默认显示文件尾部十行的内容
  • 选项

    • -n        指定显示尾部多少行内容
    • -f    实时追踪该文档的所有更新,经常用来查看日志

> 覆盖 和 >> 追加

ll > a.txt        将ll命令查到的内容覆盖到a.txt中
cat t.txt >> a.txt        将t.txt中的内容追加到a.txt的末尾
ln 软链接

ln -s [源文件或目录] [软链接名]

  • 软链接命名时,可指定创建目录
tar 压缩解压

压缩:tar -zcvf  压缩包名.tar.gz  需要压缩的内容

  • 设定压缩包名时,可指定压缩包的位置
解压:tar -zxvf  压缩包  -C 目录

  • -C用来指定解压的位置
  • 若不加-C,解压到当前目录
选项说明:

  • -z        打包同时压缩
  • -c    产生.tar打包文件
  • -x    解包.tar文件
  • -v    显示详细信息
  • -f    指定压缩后的文件名
用户管理类

useradd 添加用户

useradd 用户名

  • 添加新用户
useradd -g 用户组 用户名

  • 添加新用户到某个组
groupadd 添加组

groupadd 用户组名
passwd 修改用户密码

passwd 用户名

  • 设置或更改用户密码
id 查看用户信息

id 用户名

  • 查看用户信息
打开/etc/下的passwd文件能查看创建了哪些用户
打开/etc/下的group文件能查看创建了哪些组
su 切换用户

su 用户名

  • 切换到某个用户
  • 只能获得执行权限,不能获得环境变量
  • 每次切换用户都会嵌套启动一个新的线程,需要用exit一层层退出来
su - 用户名

  • 同时获得执行权限和环境变量
sudo 使用root权限

sudo 让普通用户使用root权限执行一些命令

  • 在/etc/下的sudoers文件91行的root下面添加内容
    1. ## Allow root to run any commands anywhere
    2. root    ALL=(ALL)       ALL
    3. zhangsan        ALL=(ALL)       ALL
    复制代码
  • 或者配置成采用sudo命令时,不需要输入密码
    1. ## Allow root to run any commands anywhere
    2. root    ALL=(ALL)       ALL
    3. zhangsan        ALL=(ALL)       NOPASSWD:ALL
    复制代码
userdel 删除用户

userdel 用户名

  • 删除某个用户但保留用户主目录
userdel -r 用户名

  • 删除某个用户同时删除用户主目录
groupdel 删除组

groupdel 用户组名
usermod 修改用户属组

usermod -g 用户组名 用户名

  • 修改用户所在组,给定的组必须存在
groupmod 修改用户组名

groupmod -n 新组名 旧组名
who 查看当前用户

whoami        显示当前的用户名称
who am i        显示登录时的用户名称
文件权限类

文件属性

ll命令可以查看文件权限,如果没有该权限,对应位置显示 -
文件类型属主权限U属组权限G其他用户权限Od / l / -r-w-xr-w-xr-w-x目录 / 软链接 / 文件读-写-执行读-写-执行读-写-执行rwx作用到文件

  • r:可读,可以读取、查看
  • w:可写,可以编辑修改,但不可删除,删除文件需要对文件所在目录有写权限
  • x:可被系统执行
rwx作用到目录

  • r:可读,可以ll查看目录内容
  • w:可写,目录内创建、删除、重命名文件
  • x:可以进入该目录
chmod 修改文件权限

方式一:chmod [{u g o a} {+ - =} {r w x}] [文件或目录]

  • u g o a 对应 属主 属组 其他用户 全部
  • + - = 对应 增加 删除 设置
  • r w x 对应 读 写 执行
方式二:chmod [421] [文件或目录]

  • r w x 分别赋值 4 2 1
chown 改变所有者

chown [选项] [最终用户] [文件或目录]

  • 修改文件或目录(不包括子文件或子目录)的所有者
  • 选项

    • -R        修改目录的同时作用到其下所有子文件

chgrp 改变所在组

chgrp [最终用户组] [文件或目录]
搜索查找类

find 条件查找

从指定目录下递归的遍历所有文件即子目录
find [搜索范围] [选项]

  • 选项

    • -name        根据指定文件名查找
    • -user    根据指定用户名查找
    • -size    根据指定文件大小查找

grep 过滤查找

通常结合管道符 | 一起使用
选项 -n 显示匹配行和行号
which 查看命令位置

which ll 查看ll命令在哪个文件夹内
进程线程类

ps 查看系统进程

ps -aux | grep xxx 查看系统所有进程,可以查看CPU和RAM占用率
ps -ef | grep xxx 可以查看父子进程之间的关系
kill 终止进程

kill [进程号]

  • 通过进程号杀死进程
  • 选项 -9 强迫进程立即停止
killall [进程名称]

  • 通过进程名杀死进程,支持通配符
  • 用于系统负载过大变得缓慢时
netstat 查看进程网络信息

netstat -anp | grep 进程号

  • 查看进程的网络信息
netstat -nlp | grep 进程号

  • 查看网络端口号的占用情况
选项

  • -n        不显示别名,能显示数字的全部转化数字
  • -l    仅列出处于监听下的服务状态
  • -p    显示正在被哪个进程调用
时间日期类

date 显示当前时间

date [选项] [日期格式]        解释:显示当前时间 日期
  1. date                  #显示当前时间
  2. date +%Y         #显示当前年份
  3. date +%m         #显示当前月份
  4. date +%d         #显示当前是本月的哪一天
  5. #组合,根据设定格式显示年月日时分秒,加号别忘了,注意大小写,不能有空格,除非加引号
  6. date +%Y-%m-%d-%H:%M:%S
  7. date +%Y-%m-%d %H:%M:%S #达咩,更正如下
  8. date +%Y-%m-%d" %H:%M:%S"
复制代码
  1. #date显示非当前时间
  2. date -d '2 days ago' #前天时间,单引号
  3. date -d '-1 days gao' #明天时间
复制代码
  1. #date设置系统时间
  2. date -s "2017-5-2 19:32:13"
复制代码
  1. #显示时间戳
  2. date +%s
复制代码
cal 显示日历

cal [选项]         解释:查看日历,不加选项显示本月日历
  1. cal                 #显示本月日历
  2. cal 2017        #显示2017年的日历
  3. cal -y                 #显示本年日历
复制代码
crontab系统定时任务

crontab [选项]
  1. #首先查看守护进程crond服务是否开启
  2. systemctl status crond
复制代码
选项

  • -e        编辑crontab定时任务

    • 此命令会进入vim编辑界面,设置定时任务

  • -l    查询所有的crontab任务
  • -r    清空当前用户的所有crontab任务
vim编辑界面中,任务格式为  * * * * * 执行的任务
*含义范围第一个 “ * ”一个小时中的第几分钟0—59第二个 “ * ”一天当中的第几小时0—23第三个 “ * ”一个月当中的第几天1—31第四个 “ * ”一年当中的第几个月1—12第五个 “ * ”一周当中的星期几0—7(0 7都代表周日)此外,还有一些特殊符号
特殊符号含义*代表任何时间。比如第二个*代表一天中每小时都执行一次,代表不连续的时间。比如 “0 8,12,16 * * *”代表每天的8点12点16点0分都执行一次-代表连续的时间范围。比如“0 5 * * 1-6”代表在周一到周六的凌晨5点执行一次*/n代表每隔多久执行一次。比如“*/2 * * * *”代表每隔2分钟就执行一次命令软件管理类

RPM 包管理

RPM(RedHat Package Manager),RedHat软件包管理工具,类似win里的setup.exe,是Linux里的打包安装工具。
名称格式
Apache-1.3.23-11.i386.rpm
"Apache"

  • 软件名称
"1.3.23-11"

  • 软件版本号,主版本和此版本
"i386"

  • 软件运行的硬件平台,Intel 32位处理器的统称
"rpm"

  • 文件扩展名,代表RPM包
查询命令
rpm -qa        解释:查询安装的所有rpm软件包
rpm -qi 【软件】        解释:查询某个软件的详细信息
卸载命令
rpm -e 【软件包】        解释:卸载软件包,不用写全名,软件名就可以了
rpm -e --nodeps 【软件包】        解释:不检查依赖,强行卸载,会导致使用该包的软件无法工作
安装命令
rpm -ivh 【RPM包全名】
选项作用-iinstall,安装-v--verbose,显示详细信息-h--hash,显示进度条--nodeps安装前不检查依赖YUM 仓库管理

YUM是一个Shell前端软件包管理器,基于RPM包管理,能从指定服务器自动下载RPM包并安装,可以自动处理依赖性关系,并且一次性安装所有依赖包,无需繁琐的一次次下载安装。
基础命令
yum 【选项】【参数】
选项

  • -y    对所有提问都回答"yes"
参数作用install安装rpm软件包update更新rpm软件包remove卸载check-update检查是否有可用更新包list显示软件包信息clean清理yum过期的缓存deplist显示yum软件包的所有依赖关系
来源:https://www.cnblogs.com/sipierpoke/p/17421583.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具