From 2a2337aaf8a37747533751babb118de156d59ee4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=9F=E7=89=A1=E4=B8=B9?= <3334543605@qq.com> Date: Wed, 22 May 2024 11:19:02 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=94=E8=AE=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...024-5-15-\345\210\235\350\257\206linux.md" | 67 +++++++ ...024-5-18-linux\347\233\256\345\275\225.md" | 0 ...05\345\244\271\345\216\213\347\274\251.md" | 166 ++++++++++++++++++ .../\345\210\235\350\257\206linux.md" | 84 --------- 4 files changed, 233 insertions(+), 84 deletions(-) create mode 100644 "03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-5-15-\345\210\235\350\257\206linux.md" rename "03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/linux\347\233\256\345\275\225.md" => "03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-5-18-linux\347\233\256\345\275\225.md" (100%) create mode 100644 "03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-8-21-\346\226\207\344\273\266\346\211\223\345\214\205\345\244\271\345\216\213\347\274\251.md" delete mode 100644 "03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/\345\210\235\350\257\206linux.md" diff --git "a/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-5-15-\345\210\235\350\257\206linux.md" "b/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-5-15-\345\210\235\350\257\206linux.md" new file mode 100644 index 0000000..c316a54 --- /dev/null +++ "b/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-5-15-\345\210\235\350\257\206linux.md" @@ -0,0 +1,67 @@ +# Linux基础 + +1. Linux是操作系统的内核,以其为基础会有很多发行版本 + + 1. RedHat 收费商业版本,Centos 是RedHat的社区版本 很流行 + 2. Debian 命令行为主,Ubantu 是以Debian+桌面皮肤的版本 + 3. 类似显卡的核心,N卡A卡相当于内核,不同商家出的具体的型号的显卡,相当于发行版本 + +2. 学习Debian的两种方式 + + 1. 安装虚拟机,再安装debian,快照 + 2. 利用阿里云、华为云、腾讯云,也利用快照功能。对服务器进行存档 + +3. 准备好 虚拟机VM 17版本+Debian 12.5 64位的ISO文件 + +4. 先安装VM,再创建一个新虚拟机 + +5. 如何下载一个Debian的安装镜像 https://www.debian.org/ + +6. 直接在虚拟机操作debian很麻烦,所以想办法,用SSH远程登录它 + +7. 默认Debian没有安装SSH服务端,自己安装一个 + + 1. ```js + apt-get install ssh -y // 需要root权限,安装SSH服务端 + ip addr show // 查看IP地址 + ifconfig // 需要root权限,可以借权sudo + // 以上两步,就可以让我们用普通用户远程登录了,但是默认下root是不可以直接登录的。需对ssh做配置 + + // 为了方便我们编辑文件。安装一个vim编辑器,默认是vi + ``` + + + +8. 修改ssh的服务端配置文件/etc/ssh/sshd_config文件 + + ```js + vim /etc/ssh/sshd_config + Port 22// 开启端口22 + PermitRootLogin yes // 允许root登录 + PasswordAuthentication yes // 采用密码验证模式 + PermitEmptyPasswords no // 禁用空密码 + + + // 重启ssh,让修改后的配置生效 + systemctl restart ssh + // /etc/init.d/ssh restart 同上的效果 + ``` + + + +9. 如何借用root权限 + + 1. ```js + 1. 安装sudo + apt-get install sudo -y + 2. 将普通用户名加入 + vim /etc/sudoers + ## + ## Allow root to run any commands anywhere + root ALL=(ALL) ALL + 用户名 ALL=(ALL) ALL + + ``` + + 2. 重新登录普通用户,就可以使用sudo功能 + diff --git "a/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/linux\347\233\256\345\275\225.md" "b/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-5-18-linux\347\233\256\345\275\225.md" similarity index 100% rename from "03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/linux\347\233\256\345\275\225.md" rename to "03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-5-18-linux\347\233\256\345\275\225.md" diff --git "a/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-8-21-\346\226\207\344\273\266\346\211\223\345\214\205\345\244\271\345\216\213\347\274\251.md" "b/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-8-21-\346\226\207\344\273\266\346\211\223\345\214\205\345\244\271\345\216\213\347\274\251.md" new file mode 100644 index 0000000..c5e31ac --- /dev/null +++ "b/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/2024-8-21-\346\226\207\344\273\266\346\211\223\345\214\205\345\244\271\345\216\213\347\274\251.md" @@ -0,0 +1,166 @@ +## 创建新用户 + +- useradd -m username//创建用户名 + +- useradd passwd username //设置密码 注意密码和用户名一致 + +- 之后在输入密码 +- useradd -m -s/bin/bash //新建用户,自动创建家目录,以及对话形式建立相关参数 + +- sudo userdel 用户名 //删除已有用户 + +- su 用户名 //切换用户 + +- cd ~ //回到当前 + +- exit //退出 + +- 切换超级管理员 + - su - + - su 空格 + - su root + +## 创建文件名 + +```js +mkdir 文件名 //创建一个名为Dir1的文件夹 +mkdir -p /Dir1/Dir2/Dir3/Dir4/Dir5 //即可创建一个多文件嵌套的文件夹目录 +-p 连同父级目录一起创建,有则忽略无责创建 +``` + +- cd ../ //返回上级一层 + +- cd xx/xx //进入对应文件 + +- mkdir xx文件名 //创建文件名 + +- 在bash中,按一次tab自动识别文件的唯一性,只有一个,就自动显示或者将共同部分显示,如果不太一样,不确定唯一性,需要按两次tab,会显示所有可选项。 + +- touch 文件名.txt //创建空文本文件 + +- vim 文件名 //进入xx文件编辑 + +- vim的三种模式 + + - 普通模式:不能编辑,输入i进入编辑,输入dd编辑 + - 编辑模式:进行文字的相关编辑,esc退出 + - 命令行模式:通过命令执行保存,shift+:(英文状态)先回到普通模式,输入w保存,输入q退出,输入wq保存并退出,输入wq!强制退出 + +- vim 新建文件名 //进入编辑模式 新建.... + +- 或者直接vim进入编辑,保存时输入新文件名 然后wq 保存并退出 + +- Debian 默认编辑器 nano + +- cp xxx //复制 + + + +## 文件夹的压缩 + +```js +//打包 +tar -cvf archive.tar file1 file2 folder1 +//打开终端,并使用以下命令将文件/文件夹压缩为.tar文件, +//"archive.tar" 为你要创建的.tar文件的文件名。 +// "file1"、"file2" 为要压缩的具体文件名, +// "folder1" 为要压缩的文件夹名。 + +//如果要压缩整个文件夹及其内容 +tar -cvf archive.tar folder//将 "archive.tar" 替换为您要创建的.tar文件的文件名,将 "folder" 替换为要压缩的文件夹名。 + +ls-lh //查看 +//压缩 + gzip 压缩的文件 + //解压 + gunzip 解压缩 + //tar和gzip一起使用 + - tar-cvzf 打包并压缩 + - tar-zxvf 解压并解包 +//zip压缩 +zip -r myfolder.zip myfolder +//-r:递归地打包文件夹中的所有文件和子文件夹。 +//myfolder.zip:生成的 ZIP 文件的名称。 +//myfolder:要打包的文件夹。 +unzip -l myfolder.zip //查看 ZIP 文件的内容 +``` + +## 下载文件在本地 + +```js +scp 用户名@IP地址:/xx/xx 本地电脑目录 将本地文件上传到服务器 +scp 本地电脑文件路径 用户名@主机IP地址:/要上传的文件目录 + +例子:scp 用户名@主机IP:/ home/cxw/big.tar.gz d:/ +``` + +- local 当地的 简写 l +- lcd D:/ 进入本地D盘 + +报错提示:ZiP压缩 + +```js +zip -r 中国.zip 中国 提示:zip error: Nothing to do! (try: zip -r 中国.zip . -i 中国) +//使用非了 ASCII 字符(如中文)不要用中文!!!!!!!!!! + +zip warning: zip file empty +文件夹名称错误:指定的文件夹不存在或名称不正确。 +文件夹路径错误:指定的路径不正确,导致没有找到文件夹。 +文件夹为空:文件夹中没有任何文件或子文件夹。 +``` + +###### debian怎么寻找自己压缩的文件? + +```js +//使用 find 命令 +find /path/to/search -name "*.zip" +find ~ -name "中国.zip" +//使用 locate 命令 +locate "*.zip" + +``` + +```js +目录结构 +/root/ +└── 中国/ + ├── 贵州省/ + │ └── 六盘水市/ + │ └── 钟山区/ + │ └── 红岩街道/ + │ └── 程舜/ + │ └── 2244310251 程舜.txt + +zip -r 中国.zip 中国 -x 中国.zip +这样可以确保不将新创建的 中国.zip 文件包含在压缩过程中 +unzip -l 中国.zip//检查 ZIP 文件的内容 +``` + +## 怎么将压缩后的文件夹导出?Zip、tar都可 + +```js +使用 HTTP/HTTPS将文件上传到自己的网站上后通过浏览器下载。 +将文件复制(移动)到 Web 服务器的目录: +cp /path/to/中国.zip /var/www/html/ + +zip +通过浏览器访问: +//http://your_server_ip/中国.zip + +tar +找到并进入art文件所在的文件夹 +sudo mv 中国.tar /var/www/ //借用root权限将tar移动到www下 + +``` + +## zip tar解压缩 + +```js +tar +找到并进入art文件所在的文件夹 +sudo tar -xvf "中国.tar" //借用root权力解压缩 + +ZIP解压 +unzip your_file.zip//将 "your_file.zip" 替换为您要解压缩的.zip文件的实际文件名。 + +``` \ No newline at end of file diff --git "a/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/\345\210\235\350\257\206linux.md" "b/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/\345\210\235\350\257\206linux.md" deleted file mode 100644 index bafd107..0000000 --- "a/03\351\222\237\347\211\241\344\270\271/\347\254\224\350\256\260/\345\210\235\350\257\206linux.md" +++ /dev/null @@ -1,84 +0,0 @@ -注意: - -1.严格区分大小写 - -2.注意空格 - -3./不能忘记 - -**/bin**: -bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。 - -**/boot:** -这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。 - -**/dev :** -dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。 - -**/etc:** -etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。 - -**/home**: -用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。 - -**/lib**: -lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。 - -**/lost+found**: -这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。 - -**/media**: -linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。 - -**/mnt**: -系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。 - -**/opt**: -opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。 - -**/proc**: -proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。 -这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器: - -``` -echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all -``` - -**/root**: -该目录为系统管理员,也称作超级权限者的用户主目录。 - -**/sbin**: -s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。 - -**/selinux**: -这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。 - -**/srv**: -该目录存放一些服务启动之后需要提取的数据。 - -**/sys**: - -这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。 - -sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。 - -**/tmp**: -tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。 - -**/usr**: -usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。 - -**/usr/bin:** -系统用户使用的应用程序。 - -**/usr/sbin:** -超级用户使用的比较高级的管理程序和系统守护程序。 - -**/usr/src:** -内核源代码默认的放置目录。 - -**/var**: -var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。 - -**/run**: -是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。 \ No newline at end of file -- Gitee