首页 > 代码库 > Linux课程第一天学习笔记
Linux课程第一天学习笔记
####################虚拟机控制####################
[kiosk@foundation15 Desktop]$ rht-vmctl start desktop ##开启desktop虚拟机
Error: desktop not started (is already running) ##报错,desktop已经运行
[kiosk@foundation15 Desktop]$ rht-vmctl view desktop ##显示desktop
[kiosk@foundation15 Desktop]$ rht-vmctl poweroff desktop ##关闭desktop
Powering off desktop..
[kiosk@foundation15 Desktop]# rht-vmctl view desktop
Error: unable to view desktop - not currently running. ##虚拟机没有开启,无法显示
[kiosk@foundation15 Desktop]$ rht-vmctl reset desktop ##重置虚拟机
Are you sure you want to reset desktop? (y/n) y
Resetting desktop.
Powering off desktop.
Creating virtual machine disk overlay for rh124-desktop-vda
Creating virtual machine disk overlay for rh124-desktop-vdb
Starting desktop.
####################gedit####################
[kiosk@foundation15 Desktop]$ gedit 09.24 ##编辑文件09.24,编辑时命令行无法输入
[kiosk@foundation15 Desktop]$ gedit 09.24 & ##后面跟"&",指从后台打开,不影响命令行输入
####################进入系统####################
student 普通用户,密码student
点击not listed -->root/redhat 超级用户
####################语言调整####################
Applications-->system tools-->setting-->Region & Language-->Language-->汉语(中国)
打开命令行:reboot
####################
[root@foundation15 Desktop]# date
Wed Sep 28 11:10:11 CST 2016
[root@foundation15 Desktop]# cal
September 2016
Su Mo Tu We Th Fr Sa
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
[root@foundation15 Desktop]# timedatectl
Local time: Wed 2016-09-28 11:03:46 CST
Universal time: Wed 2016-09-28 03:03:46 UTC
RTC time: Wed 2016-09-28 11:03:46
Time zone: Asia/Shanghai (Cst, +0800) ##查看时区
NTP enabled: no
NTP synchronized: no
RTC in local TZ: yes
DST active: n/a
####################
####################
ssh root@172.25.254.115 -X ##使用root权限登陆该用户的图形界面,"-X"图形化
cheese ##打开摄像头
####################
####################
系统:是对一个环境的定义,各种软件的集合
内核:是操作系统的大脑,负责对软件的调度
Sheel保护内核不被篡改
bash是sheel的一种
####################
######################
###### 第一单元 ######
######################
####################1.行提示符####################
[kiosk@foundation15 Desktop]$
kiosk ##打开shell的用户
@ ##分隔符
foundation15 ##主机名称
Desktop ##工作目录名称
$ ##身份提示符,"#"表示超级用户,"$"表示普通用户
注意:命令要在行提示符之后输入才能执行
####################2.切换用户####################
[kiosk@foundation15 Desktop]$ su - [username] ##不写[username],默认切换到root用户
或者
[kiosk@foundation15 Desktop]$ su [username] ##不写[username],默认切换到root用户
注意:高级用户切换到低级用户不需要密码,低级用户切换到高级或平级用户需要。
退出:Exit或Ctrl+D
####################3.虚拟台控制####################
Crtl+Alt+F(1|7)进入图形
Crtl+Alt+F(2~6)进入虚拟控制台
Red hat Enterprise Linux Server 7.0 (Maipo) ##系统版本
Kernel 3.10.0-123.e17.x86_64 on an x86_64 ##内核版本
desktop0 login:root ##登陆用户名称输入
Password: ##密码输入无回显
####################4.命令的执行####################
1.命令必须在行提示符之后输入
2.命令的格式
命令 参数 目标
例:
rht-vmctl start desktop
内容 参数 目标
不同的字段打错,报错不一样
3.ctrl+c ##撤销命令的执行
4.命令参数
-参数 ##单词缩写
--参数 ##单词的全拼
####################5.命令的帮助####################
1.
whatis [命令] ##查看命令的功能
[命令] --help ##查看命令的帮助
[] ##选择加入的内容,可加可不加
... ##加入的内容个数任意
<> ##内容在命令执行过程当中必须要加
####################
图形用student登入:切到root用户可以调用student用户的gedit
图形用root登入:切到student用户不能调用root用户的gedit
####################
####################6.系统的使用基础方法####################
1)系统登陆
图形登陆方式
文本登陆方式
2)工作界面转换
Ctrl+Alt+上|下
3)开始bas
1.Applications-->Utilities-->Terminal
2.鼠标右键-->Open in Terminal
3.gnome-terminal ##在命令行中输入gnome-terminal,可以打开一个新的终端
4.退出:exit | Ctrl+D
4)系统关机,重启
关机
poweroff | init 0 | shutdown -h now
重启
reboot | init 6 | shutdown -r now
####################
注意:
"now"表示立即关机
也可以跟数字,例如"shutdown -h 5"或者"shutdown -h +5",表示5分钟后关机
也可以跟时间,例如"shutdown -h 12:00",表示12点整关机
也可以什么都不跟,例如"shutdown -h",默认1分钟后关机。
输入“shutdown -c”,表示中止关机
shutdown -P now ##同样是关机
init 指初始化
6 指所有进程关闭再开启
init 0 ##Halt[停机]
init 1 ##Single user[单用户模式]
init 2 ##multi user without network[多用户,没有NFS(net file system)]
init 3 ##Multi user[完全多用户模式(标准的运行级)]
init 4 ##unuse[安全模式]
init 5 ##X11(xwindow)[图形化模式]
init 6 ##Reboot[重新启动]
####################
5)锁屏
Ctrl+Alt+L
####################7.简单的系统命令####################
1)date
watch date ##进入监控模式,默认date命令每2秒执行一次,Ctrl+C退出监控模式
watch -n 1 date ##进入监控模式,让date命令每秒执行一次,Ctrl+C退出监控模式
date 11181115 ##把系统时间设定为11月18日11:15,格式为“月月天天小时分钟”
date 111811152016.55 ##"2016"表示年(可以不加),".55"表示秒(可以不加)
date -d +/-[x]second/minute/hour/day/month/year ##查看x秒/分/时/天/月/年前或后的时间
例如:
[root@foundation15 Desktop]# date
Tue Sep 27 16:46:09 CST 2016
[root@foundation15 Desktop]# date -d 5day ##不跟"+/-",默认为"+"
Sun Oct 2 16:46:11 CST 2016
date +%[……] ##设定date的输出格式
例如:
[root@foundation15 Desktop]# date -d 5day +%Y%m%d
20161002
[root@foundation15 Desktop]# date +%Y/%m/%d_%H:%M:%S
2016/09/27_16:42:36
2)passwd
1.使用passwd命令修改用户密码
[root@foundation15 ~]# passwd
Changing password for user root. ##超级用户更改超级用户密码
New password: ##输入密码
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: ##确认密码
passwd: all authentication tokens updated successfully.
[root@foundation15 Desktop]# passwd kiosk
Changing password for user kiosk. ##超级用户更改普通用户密码
New password: ##输入密码
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: ##确认密码
passwd: all authentication tokens updated successfully.
[kiosk@foundation15 Desktop]$ passwd
Changing password for user kiosk. ##普通用户更改普通用户密码
Changing password for kiosk.
(current) UNIX password: ##输入当前密码
New password:
BAD PASSWORD: The password is shorter than 8 characters ##密码必须大于8位
New password:
BAD PASSWORD: The password is the same as the old one ##和原始密码不能一样
New password:
BAD PASSWORD: The password is too similar to the old one ##和原始密码不能相似
New password:
BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic ##密码必须是无序数字+字母组合
[kiosk@foundation50 ~]$ passwd root
passwd: Only root can specify a user name. #普通用户不能更改超级用户密码
2.passwd参数
-S/--status ##用户密码信息
-l/--lock ##锁定账号密码,让某用户账号密码失效
-u/--unlock ##解锁账号密码
-n/--minimum ##设定密码最短有效期,密码可更改的最小天数,对root用户无效
-x/--maximum ##设定密码最长有效期
-w/--warning ##警告期,即到达最长有效期前多少天提醒用户更改密码
-i/--inactive ##设定用户非活跃天数,即密码过期多少天后,用户将被禁用
-d/--delete ##清除用户密码
注意:以上passwd参数只有root用户才能使用
[root@foundation15 Desktop]# passwd -S kiosk
kiosk PS 2016-09-27 0 99999 7 -1 (Password set, SHA512 crypt.)
#"0"表示最短有效期,"99999"表示最长有效期,"7"表示警告期,"-1"表示用户非活跃天数(-1表示0天,0表示1天)
监控passwd密码信息
watch -n 1 passwd -S student
3)file
file [文件名字] ##查看文件类型
例如:
[root@foundation50 Desktop]# gedit hello.exe ##编辑一个"hello.exe"的文件
[root@foundation50 Desktop]# file hello.exe
hello.exe: empty
4)文件的查看
cat [文件名字] ##显示文件的全部内容
head [文件名字] ##显示一个文件的前十行
head -n 5 [文件名字] ##显示一个文件的前五行
tail [文件名字] ##显示一个文件的后十行
tail -n 5 [文件名字] ##显示一个文件的后五行
####################
more [文件名字] ##分页显示文件内容;space(向后翻页),b(向前翻页)
less [文件名字] ##分页可控制查看文件内容;支持多种操作,按Q退出
注意:功能上less>more>cat
less的基本操作:
ctrl + F ##向前移动一屏
ctrl + B ##向后移动一屏
ctrl + D ##向前移动半屏
ctrl + U ##向后移动半屏
####################
5)wc统计文件容量信息
wc参数
-l ##行数
-w ##字数
-c ##字节数
-m ##字符数
-L ##最长有效字符
例一:
[root@foundation50 Desktop]# cat file
123 456 789
012
345
678
[root@foundation50 Desktop]# wc file
5 6 25 file
#"5"表示5行,"6"表示6个字,"25"表示25个字节(18个数字,2个空格,5行末尾5个空格),"file"是文件名
[root@foundation50 Desktop]# wc -L file
11 file
例二:
[root@foundation50 Desktop]# cat 文件
一二
三
[root@foundation50 Desktop]# wc 文件
2 2 11 文件
[root@foundation50 Desktop]# wc -c 文件
11 文件
[root@foundation50 Desktop]# wc -m 文件
5 文件
注意:一个英文字符等于一个英文字节,而一个中文字符等于三个中文字节
####################
1k等于1024字节
文件名最长能输入256个有效字符
####################
####################8.Tab键的用法####################
1.使用table键可以自动补齐系统中存在的命令,文件名称和某些命令的参数
2.Tabx2
[root@foundation50 Desktop]# a ##a + Tabx2,显示系统中所有a开头的命令
Display all 112 possibilities? (y or n)
a2p alternatives
abrt-action-analyze-backtrace amidi
abrt-action-analyze-c amixer
......
####################9.history历史调用####################
history ##显示历史
hostory -c ##清除当前环境当中的历史命令
!数字 ##执行第多少行命令
!字母 ##执行最近一条以这个字母开头的命令
Ctrl+R+[关键字] ##执行最近一条含有这个关键字的命令
上下键 ##逐行调用命令
####################
[root@foundation50 Desktop]# echo $HISTSIZE
1000 ##记录历史命令的数量为1000
####################
####################10.linux中的快捷键####################
左右 ##光标移动以字符为单位
ctrl + a ##光标移动到行首
+ e ##光标移动到行尾
+ u ##光标所在位置删除到行首
+ k ##光标所在位置删除到行尾
+ r + [关键字] ##调出最近一条含有关键字的命令
+ 左|右 ##光标移动以单词为单位
+ c ##撤销以输入的命令
+ d ##关闭当前环境
+ shift + t ##在现有shell中重新打开一个table
+ shift + pageup|pagedown ##切换table
+ alt + l ##锁屏
+ alt + 上|下 ##切换工作界面
+ alt + f1|f7 ##进入图形界面
+ alt + f2-f6 ##进入虚拟控制台
####################
Linux下的截屏:
截屏键 ##截取全屏并保存
Shift+截屏键 ##截取部分屏幕并保存
Alt+截屏键 ##截取当前活动窗口并保存
Ctrl+截屏键 ##截取全屏到剪切板
Shift+Ctrl+截屏键 ##截取部分屏幕到剪切板
####################
######################
###### 第二单元 ######
######################
####################1.linux系统结构####################
linux是一个倒树结构
linux中所有的东西都是文件
这些文件都在系统的顶级目录“/”里,/就是根目录
/目录以下为二级目录,这些目录都是系统装机时系统自动建立的
二级目录的作用
/bin ##二进制可执行文件也就是系统命令
/sbin ##系统管理命令存放位置
/boot ##启动分区,负责系统启动
/dev ##设备管理文件
/etc ##大多数系统管理文件,即用户信息配置文件
/home ##普通用户的家目录
/lib ##32位系统库文件存放位置
/lib64 ##64位系统库文件存放位置
/media ##系统临时设备挂载点,光盘
/mnt ##系统临时设备挂载点,手动挂载点
/run ##系统临时设备挂载点,自动挂载点
/opt ##第三方软件安装位置
/proc ##系统信息
/root ##超级用户家目录
/srv,/var ##系统数据
/sys ##系统管理,主要是关于内核的
/tmp ##系统临时文件存放位置
/usr ##系统用户相关信息数据及用户自定义软件存放位置
####################
linux里不说文件夹,说目录
####################
####################2.文件的寻址####################
绝对路径:
文件在系统里的真实位置,文件名字以“/”开头
相对路径:
文件相对与当前所在位置的一个名字的简写,这个名字不会以/开头,而且名字会自动添加pwd显示的值
pwd ##显示系统当前所在位置
####################3.文件的管理####################
1)touch 建立文件或修改文件时间戳
touch [file] ##创建文件
touch [.file] ##创建隐藏文件
touch是用来修改文件的时间戳,但如果没有这个文件就是创建文件
####################
[root@foundation50 Desktop]# touch 123
[root@foundation50 Desktop]# stat 123
File: ‘123’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 404876952 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2016-09-28 16:36:51.912033351 +0800
Modify: 2016-09-28 16:36:51.912033351 +0800
Change: 2016-09-28 16:36:51.912033351 +0800
Birth: -
注意以上三个时间戳:
Access time(atime) ##当文件内容被读取时,就会更新Access time
Modification time(mtime) ##当文件内容被改变时,就会更新Modification time
Change time(ctime) ##当文件属性被改变时,就会更新Change time
touch参数:
touch -c ##do not create any files
touch -a ##change only the access time
touch -m ##change only the modification time
touch -r ##use this file‘s times instead of current time
touch -d ##parse STRING and use it instead of current time
touch -t ##use [[CC]YY]MMDDhhmm[.ss] instead of current time
例如:
[root@foundation50 Desktop]# touch 123
[root@foundation50 Desktop]# stat 123
File: ‘123’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 404876853 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2016-09-28 17:45:59.073823636 +0800
Modify: 2016-09-28 17:45:59.073823636 +0800
Change: 2016-09-28 17:45:59.073823636 +0800
Birth: -
[root@foundation50 Desktop]# touch -a 123
[root@foundation50 Desktop]# stat 123
File: ‘123’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 404876853 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2016-09-28 17:46:09.850823091 +0800 ##atime改变
Modify: 2016-09-28 17:45:59.073823636 +0800
Change: 2016-09-28 17:46:09.850823091 +0800
Birth: -
[root@foundation50 Desktop]# touch -m 123
[root@foundation50 Desktop]# stat 123
File: ‘123’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 404876853 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2016-09-28 17:46:09.850823091 +0800
Modify: 2016-09-28 17:46:21.780822488 +0800 ##mtime改变
Change: 2016-09-28 17:46:21.780822488 +0800
Birth: -
[root@foundation50 Desktop]# touch 111
[root@foundation50 Desktop]# stat 111
File: ‘111’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 404876855 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2016-09-28 17:46:39.990821567 +0800
Modify: 2016-09-28 17:46:39.990821567 +0800
Change: 2016-09-28 17:46:39.990821567 +0800
Birth: -
[root@foundation50 Desktop]# touch -r 111 123
[root@foundation50 Desktop]# stat 123
File: ‘123’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 404876853 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2016-09-28 17:46:39.990821567 +0800
Modify: 2016-09-28 17:46:39.990821567 +0800
Change: 2016-09-28 17:46:55.548820780 +0800 ##文件123复制了文件111的时间戳
Birth: -
[root@foundation50 Desktop]# touch -d 20111111 123 ##格式"世纪年年月月日日时时分分秒秒"
[root@foundation50 Desktop]# stat 123
File: ‘123’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 404876853 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2011-11-11 00:00:00.000000000 +0800
Modify: 2011-11-11 00:00:00.000000000 +0800
Change: 2016-09-28 17:54:05.936799016 +0800
Birth: -
[root@foundation50 Desktop]# touch -t 11111111 123 ##格式"[[世纪]年年]月月日日时时分分[秒秒]"
[root@foundation50 Desktop]# stat 123
File: ‘123’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 404876853 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2016-11-11 11:11:00.000000000 +0800
Modify: 2016-11-11 11:11:00.000000000 +0800
Change: 2016-09-28 17:52:21.694804287 +0800
Birth: -
####################
2)mkdir 建立目录
mkdir [directory] ##创建目录
mkdir -p [directory] ##上级目录不存在自动建立
3)rm 删除目录或文件
rm -f [file] ##强行删除不提示
rm -r [directory] ##删除目录
rm -rf [file|directory] ##强行删除文件或者目录不提示,或者"-fr","-f -r","-r -f"
rm -fr /* ##删除整个系统,知道就好
4)cat|head|tail 查看文件内容
cat|head|tail ##文件内容查看命令
本文出自 “施超Linux学习笔记” 博客,谢绝转载!
Linux课程第一天学习笔记