linux学习


介绍
Linux 是由芬兰的 Linus Torvalds 即 林纳斯·托瓦兹 创造的。
林纳斯·托瓦兹 只是开发 Linux 的内核。相当于主要功能。
而其他厂商在内核的基础上,又开发了自己的一些功能,形成了不同的 Linux 发行版。
比如:红帽 RedHat,乌班图 Ubuntu,红旗 等等。
Linux 的版本
偶数是正式版,奇数是开发版本。
安装
硬盘上内容的存储并不是连续的,类似于哈希表的存储。
哈希表
哈希表存一个字符串的时候,首先会通过hashcode方法来计算字符串的哈希值,然后存在哈希表唯一对应的位置上。
哈希值可能有重复,所以一个哈希值位置上一般是字符链表,存在着多个字符串。
哈希表上查找字符串特别快,原因是 当查找一个字符串时,先计算这个字符串的hashcode,然后看这个hashcode位置上有没有这个字符串。另一种情况,如果这个位置上是一个链表,则还需要比较两个字符串的equals。
所以,在哈希表上查找数据,不仅要hashcode相同,还要equals相同。
硬盘分区
硬盘分区有: 主分区 扩展分区 逻辑分区
主分区 和 扩展分区 最多有4个,而 扩展分区 还可以有多个 逻辑分区。
硬盘的分区信息是记录在 分区表 中,而传统的分区表只能记载4条记录,所以最多 有4个分区,而更多的是 逻辑分区。
Linux下的分区
在Linux下,所有的设备都被认为是文件。
文件又分 字符形式、二进制形式
/dev/ 目录下包含了系统的所有设备。
其命名规范如下:
前两个字母表示分区所在的设备类型
hd - IDE硬盘
sd - SCSI硬盘
第三个字母表示第几个设备
/dev/hda 第1个IDE硬盘
/dev/sdb 第2个SCSI硬盘
最后一个数字表示分区
1~4 主分区或扩展分区
5以后 逻辑分区
hda5 第1个IDE硬盘的第1个逻辑分区
hda5 第1个IDE硬盘的第2个逻辑分区
命令
进入某目录
cd /
进入根目录cd s tab tab
查看当前目录下以s开头的文件cd dev
进入dev目录cd ..
进入上级目录
查看内容
ls
查看当前目录内容ls -l
查看当前目录内容(以列表形式)grep abc my.txt
输出my.txt中包含abc的那行内容
whoami
查看当前用户
新建,删除相关
mkdir mydir
创建一个名为mydir的目录rmdir mydir
删除一个名为mydir的目录touch mytest
创建一个mytest文件 touch还能修改某文件时间
rm test.txt
删除test.txt文件rm -rf test
删除test目录
参数 -r 将目录及以下内容逐一删除,r 是 recursive(递归adj) 的简写
参数 -f 是只读文件,也直接删除,不用确认
cp -r /test newtest
复制test目录及下面所有文件mv /test newtest
移动test目录及下面所有文件,相当于重命名
mount /dev/cdrom /mnt/cdr
将光盘挂载到cdr下面mount /dev/cdrom
卸载命令man shutdown
查看shutdown命令使用方法
cat 命令用于连接文件并打印到标准输出设备上cat 1.txt > 2.txt
相当于复制了一份1.txtcat -n 1.txt > 2.txt
将1.txt的内容加入行号后写入到2.txt文件中cat 1.txt 2.txt > 3.txt
合并1.txt和2.txt并写到3.txt文件中,3.txt原内容没了·cat 1.txt 2.txt >> 3.txt
合并1.txt和2.txt并追加到3.txt文件中
more命令,翻页查看文件,space
查看下一页,back
回退一页。more -10 3.txt
查看3.txt文件,每10行一页more +10 3.txt
从第10行开始查看3.txt文件more s 3.txt
查看3.txt文件,2个空白行,则用1个空白行显示。
find / -name *.local
在根目录下查找名字里有local的文件whereis ls
查看ls命令是执行的哪里的文件echo $PATH
查看linux下的path,注意这里的path要大写
shutdown now -r
或 reboot
现在重启shutdown now
现在关机
压缩
解压yum install -y unzip
安装unzip命令unzip bdms.war -d ./bdms
解压bdms.war包到当前目录的bdms文件夹中
vi 常用命令
切换到insert模式 i
切换到命令模式 esc
保存文件并退出 :wq
不保存文件退出 :q!
挂载
不像Windows操作系统,读取光盘上的信息直接访问光盘目录即可,在Linux下面需要先挂载,在 /mnt/
目录下,新建一个目录“cdr”,mkdir cdr
,挂载光盘到此目录下mount /dev/cdrom /mnt/cdr
,这样访问 /mnt/cdr
目录就可以了。
用户管理
添加用户testuser,命令为useradd testuser
或者 adduser testuser
,
新增一个用户后,可以在 /home 目录下看到为新用户准备的目录。
另外,在etc目录下某个文件也发生了变化,使用命令查看 more /etc/passwd
为新用户指定密码,命令为passwd testuser
新增用户的时候,如果没有指定组,则会新增一个同用户名相同的组。
查看组信息tail -10 /etc/group
,这个命令的话,我们只看最后10行。
新增一个组:groupadd g1
新增用户并指定组:adduser user7 -g g1
添加user7用户并指定为g1组
修改用户所在组:usermod -g g1 user6
修改user6用户指定为g1组
删除用户:userdel user6
删除user6用户
文件权限
使用命令ls -l
可以查看文件的详细信息。
在最前面有 drwxr-xr-x. 类似的字符,这描述了文件的相关信息。
第一个字符
d:表示 目录
l:表示 链接
-:表示 文件
后面九个字符,每3个一组,共三组
第一组表示 当前用户的权限
第二组表示 和自己同组人的权限
第三组表示 其它人的权限
每一组的三个字符又分别代表:
rwx
r:read 读权限
w:write 写权限
x:execute 执行权限
相对应的,如果没有权限,则用 - 表示
比如:
drw-r- -r- - 表示
当前用户有读写权限,无执行权限。
同组用户只有读权限,无写权限,无执行权限。
其它人和同组用户权限相同。
修改权限
文件添加写权限chmod +w my.txt
文件去除写权限chmod -w my.txt
上面是三组均会添加写权限,如果只是给自己添加写权限,则为chmod u+w my.txt
对应还有 同组权限,其它人权限chmod g+w my.txt
chmod o+w my.txt
直接修改3组的权限,还可以这样写chmod 755 my.txt
755 代表 wrx w-x w-x
因为
7 为二进制的 111 4+2+1=7
5 为二进制的 101 4+0+1=5
所以,wrx 对应数字7,w-x 对应数字5
而755,即对应了三组的各个权限。
修改文件所属人chown testuser2 my.txt
*昵称:
*邮箱:
个人站点:
*想说的话: