[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[PATCH 15/15] Updated for udev; do not try and make devices. Format devices if we're trying vfat and the device has no filesystem at all.
- From: Bill Nottingham <notting redhat com>
- To: anaconda-devel-list redhat com
- Cc: Bill Nottingham <notting redhat com>
- Subject: [PATCH 15/15] Updated for udev; do not try and make devices. Format devices if we're trying vfat and the device has no filesystem at all.
- Date: Wed, 5 Dec 2007 18:24:12 -0500
---
exception.py | 37 ++++++++++++++++++-------------------
1 files changed, 18 insertions(+), 19 deletions(-)
diff --git a/exception.py b/exception.py
index cb6a603..08d2622 100644
--- a/exception.py
+++ b/exception.py
@@ -25,6 +25,7 @@ import traceback
import iutil
import types
import bdb
+import partedUtils
import rhpl
from string import joinfields
from cPickle import Pickler
@@ -255,10 +256,8 @@ def copyExceptionToRemote(intf, scpInfo):
return False
# Save the traceback to a removable storage device, such as a floppy disk
-# or a usb/firewire drive. In the event of a floppy disk, it is assumed to
-# be unformatted and safe for us to destroy. For all other devices, it is
-# assumed that they are already formatted and we will only attempt to write
-# the traceback file to the device. Returns success or not.
+# or a usb/firewire drive. If there's no filesystem, write a vfat one.
+# Returns success or not.
def copyExceptionToDisk(anaconda, device):
# in test mode have save to disk option just copy to new name
if not flags.setupFilesystems:
@@ -271,33 +270,33 @@ def copyExceptionToDisk(anaconda, device):
anaconda.intf.__del__ ()
return True
- file = "/tmp/exndev"
try:
- isys.makeDevInode(device, file)
- except SystemError:
- pass
-
- try:
- fd = os.open(file, os.O_RDONLY)
+ fd = os.open(device, os.O_RDONLY)
except:
return False
os.close(fd)
- # Only format floppy devices, not usb storage devices.
- if device in isys.floppyDriveDict().keys() and rhpl.getArch() != "ia64":
+ fstype = partedUtils.sniffFilesystemType(device)
+ if fstype == None:
+ fstype = 'vfat'
+ try:
+ isys.mount(device, "/tmp/crash", fstype)
+ except SystemError:
+ if fstype != 'vfat':
+ return False
+
cmd = "/usr/sbin/mkdosfs"
if os.access("/sbin/mkdosfs", os.X_OK):
cmd = "/sbin/mkdosfs"
- iutil.execWithRedirect (cmd, [file], stdout = '/dev/tty5',
+ iutil.execWithRedirect (cmd, [device], stdout = '/dev/tty5',
stderr = '/dev/tty5')
-
- try:
- isys.mount(file, "/tmp/crash", fstype = "vfat")
- except SystemError:
- return False
+ try:
+ isys.mount(device, "/tmp/crash", fstype)
+ except SystemError:
+ return False
# copy trace dump we wrote to local storage to disk
try:
--
1.5.3.4
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]