Linux 基础入门二
1、远程连接
ssh协议:secure shell
~]# ss -tnl 查看系统是否监听在tcp协议的22号接口;
~]# ip addr list 或者 ifconfig 查看ip地址
确保防火墙处于关闭状态:
~] # iptables -L -n
关闭防火墙:
CentOS 7
~]# systemctl disable firewalld.service
~]# systemctl stop firewalld.service
CentOS 6
~]# service iptables stop
~]# chkconfig iptables off
2、用户登录
root用户:一个特殊的管理账户,也称为超级用户,对系统有最高控制权限,建议使用非管理员账号登录,需要管理员权限时切换至管理员,操作完成后退出
普通用户:权限有限,对系统造成损害的能力比较有限
注意:
Linux系统中默认的管理员用户为root,系统判断用户是管理员还是普通用户,是通过用户的UID是否是0来判断
id 显示当前登录用户信息
-u 显示当前用户的UID信息
-u UserName 显示指定用户的UID信息
普通用户的UID编号:CentOS 6中默认从500开始编号,CentOS 7中默认从1000开始编号
3、命令提示符
管理员提示符为#,普通用户提示符为$
echo $PS1
[\u@\h \W]\$
\u当前用户名 \h主机名 \W工作目录的路径基名
basename 显示当前路径的基名(后面参数为一个路径,基名就是路径的最后一个“/”后面的内容)
dirname 显示当前路径的目录名(后面参数为一个路径,目录名就是除去基名外的目录路径)
命令执行过程:Shell程序找到键入的命令所对应的可执行程序的代码,并由其分析后提交给内核分配资源将其运行起来,表现为一个或多个进程
分层结构图
4、在shell中的可执行命令:
内建命令(bulitin)
由Shell程序自带的功能,通过某命令形式提供出来
enable COMMAND 启用内建命令
enable -n COMMAND 禁用内建命令
外部命令
在文件系统上的某个位置有一个与命令名称对应的可执行文件
可通过which、whereis 命令来查找可执行程序文件位置
shell事先通过一个PATH变量设定好了多个路径,当用户输入命令时,shell会自动到这些路径(由左向右)依次查找与命令名称相同的可执行文件
使用type命令来判断命令是外部命令还是内部命令
type COMMAND
-t 输出“file”、“alias”或者“builtin”,分别表示给定的命令为“外部指令”、“命令别名”或者“内部指令”
-p 如果给定命令为外部命令,则显示其绝对路径
-a 显示给定命令的类型和绝对路径
hash命令
用来保存以前曾经执行过的命令,以哈希表的方式保存(缓存为key-value格式),可以通过hash来查看(用于快速找到命令执行)
hash 列出命令的缓存
-d 表示清空指定命令的缓存,如:hash -d ls
-r 表示清空所有命令的缓存, hash -r
alias 定义别名
alias 定义别名
unalias 取消别名(临时生效)
在命令前加\使用命令本身,而不是别名(或者使用绝对路径执行命令使用命令本身)
仅对当前用户生效:~/.bashrc
对所有用户生效:/etc/bashrc
配置文件配置后不会立即生效需要重新运行配置文件
source /etc/bashrc
. /etc/bashrc
命令执行查找顺序:别名>内建>hash>$PATH
演示:
内建命令
[root@CentOS6 ~]# type cd
cd is a shell builtin # 内建命令
[root@CentOS6 ~]# enable -n cd
[root@CentOS6 ~]# cd /etc
-bash: cd: command not found
[root@CentOS6 ~]# enable cd
[root@CentOS6 ~]# cd /
[root@CentOS6 /]# ls
bin boot dev etc home lib lib64 lost+found media misc mnt net nfs opt
外部命令
[root@CentOS6 ~]# type date
date is /bin/date # 外部命令显示的是路径
# 查看外部命令对应的路径
[root@CentOS6 ~]# which date
/bin/date
[root@CentOS6 ~]# whereis date
date: /bin/date /usr/share/man/man1/date.1.gz /usr/share/man/man1p/date.1p.gz
# 所有的外部命令都在PATH变量中,执行顺序从左到右
[root@CentOS6 ~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
hash命令
# 缓存的外部命令
[root@centos7 ~]# hash
命中 命令
2 /usr/sbin/iptables
1 /usr/sbin/ifconfig
1 /usr/bin/cat
1 /usr/bin/locale
1 /usr/bin/yum
3 /usr/bin/ping
3 /usr/bin/ls
1 /usr/sbin/ip
# 清空指定的缓存命令
[root@centos7 ~]# hash -d iptables
[root@centos7 ~]# hash
命中 命令
1 /usr/sbin/ifconfig
1 /usr/bin/cat
1 /usr/bin/locale
1 /usr/bin/yum
3 /usr/bin/ping
3 /usr/bin/ls
1 /usr/sbin/ip
# 清空命令缓存
[root@centos7 ~]# hash -r
[root@centos7 ~]# hash
hash: 哈希表为空
alish 命令别名
[root@CentOS6 ~]# alias
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
5、运行命令:
命令格式:
COMMAND [OPTIONS] [ARGUMENTS]
命令 选项 参数
选项:调整命令的执行特性的;选项可以有多个,多个选项之间必须以空格分隔
短选项:-char(字符)
长选项:--word(单词)
两个短选项可以合并,长选项一般不可以合并;有些选项需要有参数
命令参数:命令的作用对象;有些命令可以带多个参数,各参数之间需要使用空格隔开
注意:
取消和结束命令执行:Ctrl+c
多个命令可以用";"隔开同时执行
一条命令可以用"\"分成多行
发起命令:请求内核将某个二进制程序文件运行为一个进程
程序—> 进程
静态—> 动态
程序文件没有生命周期,进程有生命周期
命令本身是一个可执行的程序文件,二进制格式的文件,有可能会调用共享库文件
多数系统程序文件都存放在:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin
普通命令:/bin,/usr/bin,/usr/local/bin
管理命令:/sbin,/usr/sbin,/usr/local/sbin
共享库:/lib,/lib64,/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64
32bits库:/lib,/usr/lib,/usr/local/lib
64bits库:/lib64,/usr/lib64,/usr/local/lib64
命令必须遵循特定格式规范:exe、msi、ELF(Linux)
演示:
[root@centos7 ~]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=aa7ff68f13de25936a098016243ce57c3c982e06, stripped
6、CentOS 7设置程序环境
localectl
status:显示当前状态
list-locales :列出支持的所有的程序环境
set-locale LOCALE... 设定程序环境
演示:
# 当前程序环境
[root@CentOS7 ~]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
# 设置为中文的语言环境
[root@centos7 ~]# localectl set-locale LANG=zh_CN.utf8
[root@centos7 ~]# localectl status
System Locale: LANG=zh_CN.utf8
VC Keymap: cn
X11 Layout: cn
# 重启之后就可以获得中文的语言环境了
[root@centos7 ~]# locale
LANG=zh_CN.utf8
LC_CTYPE="zh_CN.utf8"
LC_NUMERIC="zh_CN.utf8"
LC_TIME="zh_CN.utf8"
LC_COLLATE="zh_CN.utf8"
LC_MONETARY="zh_CN.utf8"
LC_MESSAGES="zh_CN.utf8"
LC_PAPER="zh_CN.utf8"
LC_NAME="zh_CN.utf8"
LC_ADDRESS="zh_CN.utf8"
LC_TELEPHONE="zh_CN.utf8"
LC_MEASUREMENT="zh_CN.utf8"
LC_IDENTIFICATION="zh_CN.utf8"
LC_ALL=
Linux 基础入门二的更多相关文章
- Linux 基础入门(新版)”实验报告一~十二
实验报告 日期: 2015年9月15日 一.实验的目的与要求 熟练地使用 Linux,本实验介绍 Linux 基本操作,shell 环境下的常用命令. 二.主要内容 1.Linux 基础入门& ...
- Linux基础入门学习笔记20135227黄晓妍
学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用L ...
- Linux 基础入门 第二周9.21~9.27
一.学习内容 本周主要学习内容主要贴合: 在进行<深入理解计算机系统>这门课的实验中没有遇到什么大问题,学习内容与上周实验<linux基础入门>有相似之处.本实验中的内容比较贴 ...
- 在学习linux基础入门时的一些问题总结(1)
本周在实验楼完成了<linux基础入门>的21个实验,虽然之前已经学习过linux的相关课程,对linux下的命令也有一些了解和实践,但完成这21个实验以及35个练习题仍然遇到了许多的问题 ...
- Linux基础入门 - 2
第三节 用户及文件权限管理 3-1.Linux用户管理 Linux 是一个可以实现多用户登陆的操作系统,他们共享一些主机的资源,但他们也分别有自己的用户空间,用于存放各自的文件.但实际上他们的文件都是 ...
- VBox&vmware虚拟机安装Linux及Linux基础入门学习
VBox&vmware虚拟机安装Linux及Linux基础入门学习 通过VMware workstation安装Linux 在安装虚拟机之前,我特意上网搜索了一下目前常使用的虚拟机软件,了解了 ...
- Linux基础练习题(二)
Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...
- Linux 基础入门----推荐课程
Linux 基础入门课程:https://www.shiyanlou.com/courses/1 很好的一门Linux基础课,精炼.简洁!推荐! 课程内容: 第1节 Linux 系统简介 https: ...
- Swift语法基础入门二(数组, 字典, 字符串)
Swift语法基础入门二(数组, 字典, 字符串) 数组(有序数据的集) *格式 : [] / Int / Array() let 不可变数组 var 可变数组 注意: 不需要改变集合的时候创建不可变 ...
随机推荐
- SQL控制语句基础
SQL变量 全局变量: 全局变量是由系统定义和维护的使用两个@作为前缀,不能由用户声明和赋值! 常用的全局变量如下 @@version :获取当前使用的SQL Server版本号 EG: select ...
- SpringCloud学习笔记(10)----Spring Cloud Netflix之声明式 REST客户端 -Feign的高级特性
1. Feign的默认配置 Feign 的默认配置 Spring Cloud Netflix 提供的默认实现类:FeignClientsConfiguration 解码器:Decoder feignD ...
- 安装lnmp前请先运行screen
当通过putty或者SecureCRT安装lnmp时, 网络突然掉线或者不小心putty被关掉等等原因, 造成lnmp安装过程被中断怎么办? 其实防止这种现象很简单, 只要在安装lnmp前执行scre ...
- Node_进阶_8
Node进阶第八天 一.复习 Node.js特点:单线程.异步I/O(非阻塞I/O).事件驱动(事件环). 适合的程序:就是没有太多的计算,I/O比较多的业务. 举例:留言本.考试系统.说说.图片裁切 ...
- Vue中两种传值方式
第一种:通过url传参,直接在地址后加? ,通过this.$route.query对象获取 第二种:通过路由传参,修改路由,通过this.$route.params对象获取
- 洛谷—— P2983 [USACO10FEB]购买巧克力Chocolate Buying
https://www.luogu.org/problem/show?pid=2983 题目描述 Bessie and the herd love chocolate so Farmer John i ...
- Qt之QAbstractButton
简述 QAbstractButton类是按钮部件的抽象基类,提供了按钮所共有的功能. QAbstractButton类实现了一个抽象按钮,并且让它的子类来指定如何处理用户的动作,并指定如何绘制按钮. ...
- vb.net版机房收费系统——教你七层架构(三)—外观模式
上次我们看到了D层是如何运作的,如今.我简单演示一下我的外观和B层是如何和U层和D层打交道的. 首先我跟大家说的是我的外观是依照界面功能划分的,粒度有点小,大家在做的时候,记得外观有几个即可了,可是不 ...
- hdu2236
链接:点击打开链接 题意:在一个n*n的矩阵中,找n个数使得这n个数都在不同的行和列里而且要求这n个数中的最大值和最小值的差值最小 代码: #include <iostream> #inc ...
- 去除ListView 上下边界蓝色或黄色阴影
默认的情况下,在 ListView 滑动到顶部或者是底部的时候,会有黄色或者蓝色的阴影出现.在不同的版本号上解决办法是不同的,在 2.3 版本号之前能够在 ListView 的属性中通过设置 andr ...