man resize2fs翻译

本文介绍了resize2fs工具的使用方法,包括如何调整ext2/ext3文件系统的大小,以及相关的命令行选项。resize2fs可以在卸载的状态下进行文件系统的放大和缩小,并且支持在挂载状态下对ext3文件系统进行在线扩容。

 原贴:http://blog.linuxexpress.com.cn/index.php/uid-45-action-viewspace-itemid-4099

man resize2fs翻译

上一篇 / 下一篇  2008-03-24 17:52:47 / 个人分类:linux系统管理

文档:resize2fs(8)

名称:
   resize2fs -- ext2/ext2文件 系统重新设置大小(工具)

语法:

resize2fs [ -d debug-flags ] [ -S RAID-stride ] [ -f ] [ -F ] [ -p ] device [ size ]

详细描述:

resize2fs程序可以更改ext2/ext3文件系统。它可以放大和缩小它能够找到的设备上的被umount掉的文件系统。如果文件系统是处于mount状态下,那么它只能做到扩容,前提条件是内核支持在线resize.( linux kernel2.6支持在mount状态下扩容但仅限于ext3文件系统。)

尺 寸参数指定了新的要求大小的文件。如果任何单位都指明, 单位的尺寸参数应文件blocksize的版本。可选,大小参数可suffixed下列内容之一的单位代号:的' s ' ,按' k ' , ' m '为主,或字母' g ' ,为512字节部门,千字节,兆字节或千兆字节,分别。大小的文件系统可能永远也无法大于尺寸的划分。如果尺寸参数没有指定,它会默认为大小 该分割。
该 resize2fs程序不操纵市场的大小分割。如果你想放大一个文件, 你首先要相信你可以扩大规模,基本划分第一。这是可以做到的用fdisk ( 8 )删去分割再造,它具有较大规模或用lvextend ( 8 ) ,如你使用逻辑卷经理重量( 8 ) 。当重塑分割时,要确保你创建它与同一个起跑线上的磁盘缸以前一样!否则, resize运作,也决不会工作了,你可能会失去你的整个文件系统。经过运行fdisk ( 8 ) ,运行resize2fs以resize了ext2 文件系统,以利用所有的空间,在新扩大的分割。
如果你想缩小的一个ext2分区,首先使用resize2fs来缩小文件。然后你使用fdisk ( 8 ) ,以缩小尺寸的划分。当缩小尺寸的划分,相信你不使其小于新大小的ext2文件系统!

选项
        -d调试-标致
              轮流对各resize2fs调试功能,如果他们被编译成二进制。
              debug-flag应连续计算,加入的人数预期的特点,从以下
              名单:
                    1 -打印出所有磁盘输入/输出

        2 -调试块 迁移
                    8 -调试的i node迁移
                    16 -调试动议的i node表

 -S RAID-stride
              该resize2fs计划将启发式确定搜查一大步,这是指定时
              文件系统创建。这个选项允许用户明确指定一个空袭大步设置
              被人利用resize2fs代替。

        对打印出的百分比完成酒吧为每个r esize2fs操作,使用户可以不断
              田径什么样的节目是这样做。

        -f势力r esize2fs着手文件r esize行动中,压倒了一些安全检查
              其中resize2fs正常执行。

        -f刷新文件系统装置的缓冲快取记忆体,然后再开始。只有真正有用的做
               resize2fs时间的考验。

作者
        resize2fs作者西奥多惠阳<tytso@mit.edu> 。

版权
        resize2fs是版权1998年由西奥多惠阳和powerquest ,版权所有。截止到今年4月份,
        2000年resize2fs可以被传播,根据合同条款通用公共许可证。

也见
        fdisk ( 8 ) , e2fsck ( 8 ) , mke2fs ( 8 ) ,lvm( 8 ) , lvextend ( 8 )

 

我写的报错了:"ErrnoError",帮我看看有什么问题,我写的:cript type="text/javascript"> const curloc = document.location.href; const curdir = curloc.substring(0, curloc.lastIndexOf('/')); let pyodide, commandCode = null let gameWidth = 1038; let gameHeight = 815; const screenLoc = localStorage.getItem('screen') || {} const screenObj =JSON.parse(JSON.stringify(screenLoc)) if(Object.keys(screenObj).length ){ gameWidth = JSON.parse(screenObj).width gameHeight = JSON.parse(screenObj).height } console.log('screenObj',gameWidth,gameHeight); async function loadDirectory(pyodideInstance, baseUrl, targetPath) { try { console.log(baseUrl) const response = await fetch(baseUrl); if (!response.ok) { throw new Error(`Failed to fetch directory: ${response.status}`); } const html = await response.text(); const parser = new DOMParser(); const doc = parser.parseFromString(html, 'text/html'); const links = doc.querySelectorAll('a'); // 确保目标目录存在 try { pyodideInstance.FS.mkdir(targetPath); } catch (mkdirErr) { // 如果目录已存在,忽略错误 if (mkdirErr.errno !== 20) { console.warn('创建目录失败:', mkdirErr); } } for (const link of links) { const href = link.getAttribute('href'); if (href && !href.endsWith('/') && !href.includes('?')) { const fileUrl = `${baseUrl}${href}`; const filePath = `${targetPath}/${href}`; // 确保文件路径的父目录存在 const dirPath = filePath.substring(0, filePath.lastIndexOf('/')); try { pyodideInstance.FS.mkdir(dirPath); } catch (dirErr) { // 如果目录已存在,忽略错误 if (dirErr.errno !== 20) { console.warn('创建子目录失败:', dirErr); } } const fileResponse = await fetch(fileUrl); if (!fileResponse.ok) { console.warn(`Failed to fetch file: ${fileUrl}`); continue; } const buffer = await fileResponse.arrayBuffer(); pyodideInstance.FS.writeFile(filePath, new Uint8Array(buffer)); //console.log(`Loaded: ${filePath}`); } } } catch (error) { console.error('Error loading directory:', error); } } async function loadCharacterAssets(pyodideInstance) { const assetFolders = [ { baseUrl: '../../assets/', targetPath: '/home/pyodide/assets' }, { baseUrl: '../../assets/man/', targetPath: '/home/pyodide/assets/man' }, { baseUrl: '../../assets/man/down/', targetPath: '/home/pyodide/assets/man/down' }, { baseUrl: '../../assets/man/left/', targetPath: '/home/pyodide/assets/man/left' }, { baseUrl: '../../assets/man/right/', targetPath: '/home/pyodide/assets/man/right' }, { baseUrl: '../../assets/man/up/', targetPath: '/home/pyodide/assets/man/up' }, { baseUrl: '../../assets/level_1_1/background/', targetPath: '/home/pyodide/assets/level_1_1/background' }, { baseUrl: '../../assets/block/', targetPath: '/home/pyodide/assets/block' }, { baseUrl: '../../assets/card/', targetPath: '/home/pyodide/assets/card' }, { baseUrl: '../../assets/font/', targetPath: '/home/pyodide/assets/font' }, { baseUrl: '../../assets/message/', targetPath: '/home/pyodide/assets/message' }, { baseUrl: '../../assets/foe/', targetPath: '/home/pyodide/assets/foe' }, { baseUrl: '../../assets/icon/', targetPath: '/home/pyodide/assets/icon' } ]; for (const folder of assetFolders) { await loadDirectory(pyodideInstance, folder.baseUrl, folder.targetPath); } } console.log(`等待python加载`); async function main(){ initStatus('loading') try{ pyodide = await loadPyodide(); await pyodide.loadPackage(["pygame-ce"], { checkIntegrity: false }); canvas = document.getElementById("canvas"); pyodide.canvas.setCanvas2D(canvas); pyodide.FS.mkdir('/home/pyodide/assets'); pyodide.FS.mkdir('/home/pyodide/assets/level_1_1/background'); pyodide.FS.mkdir('/home/pyodide/assets/icon'); pyodide.FS.mkdir('/home/pyodide/assets/man'); pyodide.FS.mkdir('/home/pyodide/assets/card'); pyodide.FS.mkdir('/home/pyodide/assets/block'); pyodide.FS.mkdir('/home/pyodide/assets/font'); pyodide.FS.mkdir('/home/pyodide/assets/message'); pyodide.FS.mkdir('/home/pyodide/assets/foe'); pyodide.FS.mkdir('/home/pyodide/assets/icon'); pyodide.FS.mkdir('/home/pyodide/assets/man/down'); pyodide.FS.mkdir('/home/pyodide/assets/man/idle'); pyodide.FS.mkdir('/home/pyodide/assets/man/left'); pyodide.FS.mkdir('/home/pyodide/assets/man/right'); pyodide.FS.mkdir('/home/pyodide/assets/man/up'); pyodide.FS.mkdir('/home/pyodide/assets/man/attack'); pyodide.FS.mkdir('/home/pyodide/assets/man/shovel'); // 加载资源 await loadCharacterAssets(pyodide); // 加载字体 const fontFiles = [ 'assets/font/SimHei.ttf' ]; pyodide.globals.set("gameWidth", gameWidth); pyodide.globals.set("gameHeight", gameHeight); for (const fontPath of fontFiles) { const response = await fetch(fontPath); const buffer = await response.arrayBuffer(); const fileName = fontPath.split('/').pop(); const fullPath = `/home/pyodide/assets/font/${fileName}`; pyodide.FS.writeFile(fullPath, new Uint8Array(buffer)); } function resizeGameWindow(width, height) { pyodide.globals.get("global_game").resize_window(width, height); }
最新发布
11-06
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值