होम फोल्डर को दूसरी ड्राइव पर ले जाएं


65

मेरे कंप्यूटर में 2 HDD ड्राइव हैं। फिलहाल दूसरी ड्राइव को माउंट किया गया है /media/storage

मैं कैसे से मेरे उपयोगकर्ता डेटा स्थानांतरित कर सकते हैं /homeकरने के लिए /media/storage/home?

क्या मैं सिर्फ डेटा को वहां ले जा सकता हूं और फिर इसे वापस सिम्प्लेक्स कर सकता हूं?


उत्तर जो कि usermod का उपयोग करता है वह सबसे आसान है: एक अस्थायी व्यवस्थापक उपयोगकर्ता बनाएं, उस खाते पर स्विच करें, usermod -m -d /path/to/non_existent_home_dir usernameअपने खाते पर वापस जाएं (उपयोगकर्ता नाम), अस्थायी व्यवस्थापक उपयोगकर्ता निकालें। हालांकि यह अभी भी 5 कदम है, अन्य उत्तरों की तुलना में कम, जोखिम भरा तरीका और सरल उपाय।
ओलिवर

जवाबों:


31

यदि आप अपनी होम डायरेक्टरी यानी / होम / अपने-यूज़रनेम को बस स्थानांतरित करना चाहते हैं तो बस अपने होम डाइरेक्टरी को अन्य पार्टीशन में कॉपी करें और फिर यूजर सेटिंग डायलॉग खोलने के लिए सिस्टम-> एडमिनिस्ट्रेशन-> यूजर्स एंड ग्रुप्स का उपयोग करें। अपने स्वयं को प्रमाणित करने के लिए कुंजी आइकन पर क्लिक करें

वैकल्पिक शब्द

उसके बाद उस उपयोगकर्ता का चयन करें जिसे आप गुणों को बदलना और क्लिक करना चाहते हैं, उन्नत टैब पर जाएं

वैकल्पिक शब्द

होम डायरेक्टरी को नई डायरेक्टरी में बदलें यानी वह निर्देशिका जिसे आपने अन्य पार्टीशन में कॉपी किया है।


3
वास्तव में। यह एक विशिष्ट उपयोगकर्ता के घर निर्देशिका स्थान को आसानी से बदलने का एक शानदार तरीका है। प्रश्न को पढ़ते हुए, मैं समझ रहा था कि यह विश्व स्तर पर / होम निर्देशिका के लिए होगा। इस स्थिति में, आप अन्य डिवाइस पर विभाजन बना सकते हैं, मैन्युअल रूप से सभी फ़ाइलों को वहां स्थानांतरित कर सकते हैं और फिर डिवाइस को माउंट पॉइंट इन / etc / fstab फ़ाइल में बदल सकते हैं।
jfmessier

3
@jfmessier: आपको टिप्पणी के बजाय इसका उत्तर देना चाहिए!
स्किज़

1
यदि आप अपने होम डायरेक्टरी को कमांड लाइन पर 'cp' के साथ कॉपी कर रहे हैं, तो आप बेहतर 'cp -rPa *' का उपयोग करेंगे: पुनरावर्ती के लिए r, लिंक का पालन नहीं करने के लिए P, स्वामित्व और अनुमति फ़्लैग को संरक्षित करने के लिए।
drevicko

1
13.04 में एकता का कोई "उपयोगकर्ता और समूह" नहीं है, बस एक "उपयोगकर्ता" सेटिंग है जिसमें ये विकल्प शामिल नहीं हैं। क्या आप 13.04 में एकता के लिए संबंधित शर्तों का उल्लेख कर सकते हैं?
तोरबेन गुंडोफ्टे-ब्रून

यदि आपका उपयोग Ubuntu 12.04 या GUI विधि का उपयोग करने का विकल्प उपलब्ध नहीं है, तो कम से कम मेरे लिए यह नहीं है। मुझे यहाँ मिली इस विधि का उपयोग करना था: help.ubuntu.com/community/Partitioning/Home/Moving
काइल

84

कमांड लाइन से होम चल रहा है

ग्राफिकल में काम करते समय साइड इफेक्ट्स से बचने के लिए, हमें घर को टर्मिनल Ctrl+ से Alt+ स्थानांतरित करने के लिए सभी क्रियाएं करनी चाहिए F1

नए विभाजन को अस्थायी रूप से माउंट करें:

sudo mkdir /mnt/tmp
sudo mount /dev/sdb1 /mnt/tmp

संभालने / sdb1 गृह के लिए नया विभाजन है

नए स्थान पर होम कॉपी करें:

sudo rsync -avx /home/ /mnt/tmp

फिर हम नए विभाजन को गृह के साथ माउंट कर सकते हैं

sudo mount /dev/sdb1 /home

यह सुनिश्चित करने के लिए कि सभी डेटा मौजूद हैं। सबसे आसान /homeइस बिंदु पर पुराने को हटाना है (आप इसे बाद में कर सकते हैं लेकिन फिर आपको पुराने घर को देखने के लिए एक लाइव सिस्टम बूट करना होगा):

sudo umount /home  #unmount the new home first!
rm -rf /home/*  #deletes the old home

घर को स्थायी बनाएं

हमें fstabदेखा गया प्रविष्टि के लिए नए विभाजन का UUID जानना आवश्यक है :

sudo blkid

अपने fstabसाथ संपादित करने के लिए सही UUID को नोट या कॉपी / पेस्ट करें

sudo nano /etc/fstab   #or any other editor

और अंत में निम्नलिखित पंक्ति जोड़ें:

UUID=<noted number from above>    /home    ext4    defaults   0  2

यहां उचित फाइल सिस्टम चुनने का ध्यान रखें, जैसे ext3कि ext3 स्वरूपित

रीबूट

रिबूट के बाद , आपका /homeस्थान नई ड्राइव पर रहता है जिसमें बहुत जगह होती है।


1
मेरे लिए काम नहीं किया।
कोरव

2
मैं उस प्रोफ़ाइल से लॉग आउट करने की सलाह देता हूं जिसे आप स्थानांतरित करना चाहते हैं, तो आप usermodइस कार्य के लिए वितरण उपकरण का उपयोग भी कर सकते हैं ।
लाइववायरबीटी

इसने काम कर दिया! धन्यवाद। क्या मैं /mnt/tmpरिबूट के बाद निकाल सकता हूं ?
e9t

@ e9t: यह केवल एक माउंट पॉइंट है जिसे हमने अस्थायी रूप से हमारे घर को माउंट करने में सक्षम होने के लिए बनाया था। इस आरोह बिंदु को हटाना संभव है लेकिन इसे बनाए रखने के लिए यह कोई नुकसान नहीं पहुंचाएगा (और अधिक सुरक्षित हो सकता है)। यदि किसी भी कारण से आप इसे हटाना चाहते हैं, तो कृपया अतिरिक्त सावधानी बरतें कि वहाँ कुछ भी लगा हो (अन्यथा आप अपरिवर्तनीय रूप से आपके द्वारा लगाए गए सभी डेटा को हटाने का जोखिम उठाते हैं /mnt/tmp)।
तक़ात

1
मैंने अपने सर्वर के लिए इन निर्देशों का पालन किया और अब मैं SSH (अनुमति अस्वीकृत) (publickey) :( :( :(
Khue

13

आधिकारिक विस्तृत प्रक्रिया उबंटू मदद विकि पर यहाँ है


विभाजन के UUID का पता लगाएं

sudo blkid

फस्टब सेट करें

sudo -H gedit /etc/fstab 

और इसमें इन पंक्तियों को जोड़ें

UUID=????????   /media/home    ext4    defaults    0  2 

और ????????इच्छित /homeविभाजन के UUID संख्या के साथ बदलें ।

fstabफ़ाइल को सहेजें और बंद करें , फिर निम्न कमांड टाइप करें:

sudo mkdir /media/home

/homeनए विभाजन में कॉपी करें

sudo rsync -aXS --progress --exclude='/*/.gvfs' /home/. /media/home/.

चेक कॉपी करने का काम किया

sudo diff -r /home /media/home -x ".gvfs/*"

नोट: आप उन फाइलों के बारे में कुछ त्रुटियों को देखने की अपेक्षा कर सकते हैं जो नहीं मिलीं। ये प्रतीकात्मक लिंक के कारण हैं जो उन स्थानों को इंगित करते हैं जो वर्तमान में मौजूद नहीं हैं (लेकिन आपके द्वारा रिबूट किए जाने के बाद क्या करेंगे)। आप इन्हें अनदेखा कर सकते हैं - लेकिन कुछ और भी देख सकते हैं।

स्विच के लिए fstab तैयार करना

sudo -H gedit /etc/fstab

और अब आपके द्वारा पहले जोड़ी गई लाइनों को संपादित करें, इस /media/homeहिस्से को बस कहने के लिए बदल दें /homeताकि यह इस तरह दिखे:

UUID=????????   /home   ext4    defaults     0  2 

में चल /homeरहा है/old_home

cd / && sudo mv /home /old_home && sudo mkdir /home

रिबूट या रिमाउंट सभी

इसके साथ रिबूट या रिमाउंट करें:

sudo mount -a

10
उबंटू पूछने के लिए आपका स्वागत है! जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा
एलियाह कगन

7

वास्तव में। यह एक विशिष्ट उपयोगकर्ता के घर निर्देशिका स्थान को आसानी से बदलने का एक शानदार तरीका है। प्रश्न को पढ़ते हुए, मैं समझ रहा था कि यह विश्व स्तर पर / घर निर्देशिका के लिए होगा। इस स्थिति में, आप अन्य डिवाइस पर विभाजन बना सकते हैं, मैन्युअल रूप से सभी फ़ाइलों को वहां स्थानांतरित कर सकते हैं और फिर डिवाइस को माउंट पॉइंट इन / etc / fstab फ़ाइल में बदल सकते हैं


2

ठीक है, एक ही तरीका है जो मैंने पाया कि यह एक और उपयोगकर्ता बनाने के लिए है, इसे व्यवस्थापक अधिकार दें, मुख्य आईडी को लॉगऑफ़ करें, नई आईडी के साथ लॉगऑन करें और फिर usermod कमांड का उपयोग करें।


0

कार्य:

  • उपलब्धता की जांच करें और दो एचडीडी को प्रारूपित करें: "डब्ल्यूडी पर्पल" और "डब्ल्यूडी गोल्ड"।
  • उबंटू फाइल सिस्टम में दो एचडीडी माउंट करें।
  • घर फ़ोल्डर को "डब्ल्यूडी गोल्ड" एचडीडी में स्थानांतरित करें।

सम्बंधित लिंक्स:

प्रारूप डिस्क

अपने HDDs में सभी आवश्यक SATA और पावर केबल्स को प्लग इन करें। उबंटू लोड करें। कीबोर्ड दबाएं और "डिस्क" टाइप करें। "डिस्क" उपयोगिता खोली जाएगी: यहाँ छवि विवरण दर्ज करें

इस उपयोगिता में आप अपने HDD को Ext4 फ़ाइल सिस्टम में प्रारूपित कर सकते हैं। अन्यथा डिस्क डिस्क का उपयोग कमांड के लिए करें:

  1. fdisk (आदमी fdisk);
  2. जुदा (आदमी जुदा);
  3. mkfs (मैन mkfs)

उदाहरण के लिए, लेकिन पैरामीटर के साथ मुझे यकीन नहीं है क्योंकि GUI "डिस्क" का उपयोग किया गया है:

sudo mkfs.ext4 -L purple /dev/sdb  # not sure with parameters
sudo mkfs.ext4 -L gold   /dev/sdc  # not sure with parameters

ध्यान रखें, कि स्वरूपण लक्ष्य हार्ड डिस्क पर सब कुछ हटा देगा । यदि हार्ड डिस्क पर कोई डेटा है और आप इसे नहीं खोना चाहते हैं तो आप इस चरण को छोड़ सकते हैं।

धीमी स्वरूपण में बहुत समय लगना चाहिए: 4TB डिस्क के लिए 16 से 20 घंटे तक।

स्थायी रूप से माउंट डिस्क

# Press CTRL+ALT+T and open a console.
# Check your /dev/sdb and /dev/sdc discs are visible:
lsblk
# Create directories for the new HDD WD Purple and WD Gold
sudo mkdir /hdd_purple
sudo mkdir /hdd_gold  # temporary directory
# Temporary mount to the new mount point
sudo mount /dev/sdb1 /hdd_purple
sudo mount /dev/sdc1 /hdd_gold
# Unmount drives
sudo umount /dev/sdb1
sudo umount /dev/sdc1

# Configuration file /etc/fstab has list of all partitions that will be mounted at boot.
# 1. Show and copy UUID of the HDD with this command:
sudo blkid
# My data is:
#     /dev/sdb1: LABEL="purple" UUID="6ce9ec1f-3bf5-420f-8502-1b4f55f2fc60" TYPE="ext4" PARTUUID="a14c8357-a8ce-42e4-9772-64ccfad3e226"
#     /dev/sdc1: LABEL="gold" UUID="1d049c7c-4565-480b-a181-2459e8ff8c1b" TYPE="ext4" PARTUUID="4c691b21-b4e3-4dab-ab91-d7bf7272b2b5"
# Make a backup of that file to be able to revert changes.
sudo cp /etc/fstab /etc/fstab.2018.11.29.bak
# 2. Add a new partitions by editing /etc/fstab file as root:
sudo nano /etc/fstab
# 3. At the bottom of fstab file add 2 lines similar to this:
UUID=6ce9ec1f-3bf5-420f-8502-1b4f55f2fc60   /hdd_purple   ext4   defaults           0  2
UUID=1d049c7c-4565-480b-a181-2459e8ff8c1b   /hdd_gold     ext4   defaults           0  2
# Your UUID have to be different!
# Write the file with keys <Ctrl+O> then <Return>. Quit the editor with <Ctrl+X>.
# If you have Midnight Commander running, then save before quitting with <Ctrl+X>,
# because <Ctrl+O> will switch from nano editor to your MC.

# To see if the drive is mounted correctly we can simulate the mount process at boot with:
sudo mount -a

कमांड लाइन से होम चल रहा है

# To avoid side effects while working in a graphical, environment
# we should perform all actions to move HOME from a terminal with Ctrl+Alt+F3.

# Press <Ctrl+Alt+F3> and swidth to console mode.
# Login in the console mode.

# Copy HOME to the new location:
sudo rsync -avx /home/ /hdd_gold

# Delete everything in the HOME directory.
# Be careful with this command, make sure you have a backup.
rm -rf /home/*

# Make HOME permanent -- edit /etc/fstab configuration file
sudo nano /etc/fstab
# Change string
UUID=1d049c7c-4565-480b-a181-2459e8ff8c1b  /hdd_gold  ext4  defaults  0  2
# to string
UUID=1d049c7c-4565-480b-a181-2459e8ff8c1b  /home      ext4  defaults  0  2
# /hdd_golds change to /home directory

# After a reboot, your /home resides on the new drive having plenty of space.
sudo reboot
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.