Linux下需要了解的一些东西

本文介绍了Linux系统中重要的目录,包括/proc、/sys、/bin等,以及关键命令如df、du、top等的使用方法。同时给出了常用命令的格式与功能说明。

今天分享一些关于linux有必要知道的东西:

1.Linux下的重要目录

1)/proc目录
Linux系统上的/proc目录是一种文件系统,即proc文件系统。与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可以通过更改其中某些文件来改变内核的运行状态。
2)/sys目录
虚拟文件系统,被建立在内存中,是在2.6版的kernel之后才被加入到正式的文件系统中,以分类的方式将系统的信息存放在这个目录中,以方便linux用户通过不同的分类找出系统相关的信息。
3) /SElinux目录
selinux是一个很新的安全性方案,它是一种针对各种文件、目录、设备或daemon等在linux所需使用到的安全性机制,而且其安全性的数据时直接记录在文件系统中。
4)/bin目录
存放所有用户都可以使用的linux基本操作命令;(目录中多是可执行的二进制文件)。
5)/usr/lib目录
存放一些函数库、执行文件及连接文件,特别的是,存放在这里面的文件都是不希望直接被用户或shell脚本所使用的文件,在/usr/lib中有非常多的子目录,每一个软件都有其各自所需的函数库。
6)/usr/local
linux系统中安装的共享软件程序最好的方式是安装在/usr/local下,按照linux标准目录结构,新建立的软件都应该放在/usr/local下。
7) /var目录
动态文件或数据存放目录,默认日志文件都存放在这个目录下,一般建议把此目录单独划分一个分区。
8)/etc目录
主机、系统或网络配置文件存放目录。
9)/tmp目录
临时文件存放区域;(默认被设置了粘滞位)。
10)/opt目录
额外所安装的应用程序目录,有些软件包我们可以将它安装在该目录中;(一般为空,某些应用软件安装需要这个目录)。
11)/boot目录
存放开机启动加载程序的核心文件(如kernel和grup)。
12)/dev目录
设备文件目录,虚拟文件系统,主要存放所有系统中device的相关信息,不论是使用的或未使用的设备,只要有可能使用到,就会在/dev中建立一个相对应的设备文件;设备文件分为2种类型: 字符设备文件和块设备文件(目录中基本上都是设备文件,如硬盘设备件/dev/sda)

2.Linux下的重要命令

命令:du df top free pstack su sudo(sudo -,sudo -s) adduser password
1)df命令
df命令用于查看磁盘的分区,磁盘已使用的空间,剩余的空间
2)du命令
du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是查看当前指定文件或目录(会递归显示子目录)占用磁盘空间大小,还是和df命令有一些区别的.
命令格式:
du 选项 文件
-a或-all 显示目录中个别文件的大小
3)top命令
top命令算是最直观、好用的查看服务器负载的命令了。它实时动态刷新显示服务器状态信息,且可以通过交互式命令自定义显示内容,非常强大。
4)free命令
free 命令显示系统内存的使用情况,包括物理内存、交换内存(swap)和内核缓冲区内存。
5)pstack命令
pstack命令用来显示进程的栈跟踪。 pstack 命令必须由相应进程的属主或root账号运行。可以使用pstack来确定进程挂起的位置。此命令只有一个参数,那就是pid。
6)su命令
su(switch user)命令的作用:切换用户,一般是普通用户与root用户之间的切换。
7)sudo命令
通过sudo,我们能把某些root账号拥有的权限针对性的赋权给普通用户,并且不需要普通用户知道root密码, 所以sudo 相对于权限无限制性的su来说,还是比较安全的,因此sudo被称为受限制的su或授权许可的su。
8)adduser命令
Linux adduser命令用于新增使用者帐号或更新预设的使用者资料。
9) password命令
passwd命令原来修改账户的登陆密码,使用权限是所有用户。

最后建议大家在使用 linux时装一下gcc/g++, gdb, vim
下面是一些安装指令:安装gcc/g++时:sudo yum install gcc-c++(非root用户)
安装gdb时:sudo yum install gdb(非root用户)
vim 是Linux的一种文本编辑器,下面是vim的一些配置:
set nu :显示行号
set autoindent :自动缩进
set cindent :自动缩进
统一缩进为4:
set softtabstop = 2
set shiftwidth =2

查看所有软件包
yum list
查看已安装的软件包
yum list installed
安装软件包
yum install packet_name
移除软件包
yum remove packet_name

<think>好的,我现在需要回答用户关于SSH连接Linux服务器所需的详细配置步骤和参数的问题。首先,我需要回忆一下之前提供的引用内容,看看有哪些信息可以利用。 用户引用了四个资料,其中引用[1]提到了在Linux服务器上安装OpenSSH服务器的步骤,引用[2]和引用[3]讨论了Windows系统下安装SSH客户端以及使用VSCode进行连接的方法,引用[4]则涉及Java实现的SSH连接工具。不过用户的问题主要集中在配置SSH连接的详细步骤和参数上,因此我应该重点整理这些方面的信息。 首先,SSH连接需要服务器端和客户端的配置。服务器端需要安装并运行SSH服务,比如OpenSSH。客户端则需要有SSH客户端软件,比如OpenSSH客户端或者PuTTY等工具。接下来,步骤可能包括安装软件、配置服务器、启动服务、设置防火墙规则、生成密钥对进行免密登录以及测试连接等。 引用[1]中提到在Linux服务器上安装openssh-server的命令,即使用sudo apt-get update和sudo apt-get install openssh-server。同时,需要确保服务启动,使用systemctl或者service命令。引用[3]补充了检查SSH服务状态和开启服务的方法,以及如何设置开机自启。此外,还提到了如果无法启动服务可能需要安装或重新配置。 对于客户端配置,引用[2]说明在Win10中安装OpenSSH客户端的方法,通过系统设置添加功能。而引用[3]详细描述了VSCode如何通过Remote-SSH插件进行连接,包括配置主机信息和免密登录的设置。免密登录部分需要生成SSH密钥对,并将公钥上传到服务器的~/.ssh/authorized_keys文件中,这可以提升安全性和便利性。 关于参数配置,SSH默认使用端口22,但有时可能需要修改端口号以提高安全性。这涉及到修改服务器端的/etc/ssh/sshd_config文件,调整Port参数,并重启服务。同时,防火墙设置需要放行对应的端口,如使用ufw或iptables。 用户可能还需要了解如何测试连接,比如使用ssh命令连接服务器,以及如何排查连接问题,比如检查服务状态、端口监听情况、防火墙设置等。引用[3]中的测试步骤,如ssh localhost和检查进程ps -e | grep ssh,这些都是有用的诊断方法。 另外,安全性配置也很重要,比如禁用root登录、使用密钥认证、限制用户访问等,这些都可以在sshd_config文件中进行设置。引用中没有详细提到这些,但根据我的知识,这些是常见的服务器加固措施,应该包含在回答中。 总结一下,回答的结构应该分为服务器端配置、客户端配置、连接测试、高级配置(如端口修改、防火墙设置、密钥认证)以及常见问题处理。需要确保每一步都清晰,并且参数和命令准确无误。同时,根据引用内容,正确引用来源,比如安装openssh-server的命令来自引用[1],客户端安装参考引用[2],VSCode配置参考引用[3]等。 最后,生成相关问题,可能涉及性能优化、安全加固、不同客户端的连接方法、故障排除等,这样用户可以有进一步的学习方向。</think>### SSH连接Linux服务器详细配置步骤 #### 一、服务器端配置 1. **安装SSH服务** - 大多数Linux发行版默认使用OpenSSH,若未安装可执行: ```bash sudo apt-get update sudo apt-get install openssh-server # Debian/Ubuntu[^1] ``` ```bash yum install openssh-server # CentOS/RHEL ``` 2. **启动SSH服务** - 启动服务并设置开机自启: ```bash sudo systemctl start sshd # 启动服务 sudo systemctl enable sshd # 启用开机自启[^1] ``` - 检查服务状态: ```bash systemctl status sshd # 确认服务是否运行[^3] ``` 3. **配置SSH参数** - 修改配置文件`/etc/ssh/sshd_config`: ```bash sudo nano /etc/ssh/sshd_config ``` - 常用配置项: - `Port 22`:默认端口(可修改为其他端口如`2222`) - `PermitRootLogin no`:禁用root直接登录(建议) - `PasswordAuthentication yes`:是否允许密码登录(密钥登录更安全时可设为`no`) - 修改后重启服务: ```bash sudo systemctl restart sshd ``` 4. **防火墙放行端口** - 若修改了SSH端口,需放行对应端口: ```bash sudo ufw allow 22/tcp # 使用默认端口时[^1] ``` ```bash sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT # 自定义端口 ``` --- #### 二、客户端配置 1. **Windows客户端安装** - 安装OpenSSH客户端: - Win10/11:进入`设置 > 应用 > 可选功能 > 添加功能`,安装**OpenSSH客户端**[^2]。 - 或使用第三方工具(如PuTTY、MobaXterm)。 2. **连接命令** - 基础连接语法: ```bash ssh username@server_ip -p port # 默认端口可省略`-p 22` ``` 示例: ```bash ssh root@192.168.1.100 -p 2222 # 使用自定义端口[^2] ``` 3. **免密登录(密钥认证)** - **生成密钥对**(客户端操作): ```bash ssh-keygen -t rsa -b 4096 # 生成RSA密钥对 ``` - **上传公钥到服务器**: ```bash ssh-copy-id -i ~/.ssh/id_rsa.pub username@server_ip -p port ``` - 或手动将公钥内容添加到服务器`~/.ssh/authorized_keys`文件中[^3]。 --- #### 三、测试连接 1. **基础测试** ```bash ssh username@server_ip ``` 输入密码后成功登录即配置完成[^1]。 2. **诊断常见问题** - 检查服务状态:`systemctl status sshd` - 查看端口监听:`netstat -tuln | grep 22` - 防火墙规则:`sudo ufw status` 或 `iptables -L`[^3] --- #### 四、高级配置(可选) 1. **修改默认端口** - 编辑`sshd_config`中`Port`字段,例如: ```bash Port 2222 ``` - 重启服务后客户端需指定端口:`ssh -p 2222 user@ip`。 2. **限制用户访问** - 在`sshd_config`中添加: ```bash AllowUsers user1 user2 # 仅允许特定用户登录 ``` 3. **禁用密码登录(仅密钥认证)** - 设置: ```bash PasswordAuthentication no ``` --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值