• Opret dig
  • Glemt adgangskode

User account menu

  • Artikler
  • Forside
  • Forum
  • Nyheder
  • Log ind
Hjem
LinuxIN.dk

Snak med

Opret dig!

Af mrbrown79 | 31.01.2010 13:28

Flyt /home til ny diskpartition

Hjælp generelt
Jeg har taget en ny diskpartion i brug og vil gerne mounte den som /home

/home ligger lige nu på root-partionen (altså "/"), så at flytte den vil give lidt ekstra plads på denne.

Efter min vurdering (som ikke nødvendigvis er specielt god) skal jeg
1) skifte til init 3 (el. lign. for ikke at låse nogle filer i mit home)
2) flytte mapperne i /home til en temporær placering (fx. /temphome)
3) Mounte den nye partition på /home
4) Kopiere filerne fra /temphome til den nyoprettede /home

Jeg er i tvivl om hvordan jeg skal udføre pkt. 3 i en terminal. Hvad er kommandoen for at mounte en partition (i dette tilfælde /dev/sda4) til et bibliotek /home ? Og hvordan sikrer jeg mig at det sker ved boot fremover (/etc/fstab eller?)

Og er mit bud på proceduren OK?
  • Log ind eller opret dig for at tilføje kommentarer

Kommentarer12

# 1

15 år 5 måneder siden

Permalink

Indsendt af kingu den 31. januar 2010 kl. 14:17

Permalink

Re: Flyt /home til ny diskpartition

Hvis du logger ud af din normal bruger, smutter over i en VT hvor du logger ind som root bruger du ikke nogle filer i /home.

Mount så bare din partition og kopier indholdet af home over på den. Ændre /etc/fstab så du får mountet din partition som /home og gem den. Så ville det nok være en god ide at omdøbe mappen /home på din rod partition så filerne stadig er der hvis noget skulle kikse.

Der efter burde du bare kunne køre mount /home og logge ind som normalt
  • Log ind eller opret dig for at tilføje kommentarer

# 2

15 år 5 måneder siden

Permalink

Indsendt af m_abs den 31. januar 2010 kl. 14:22

Permalink

Re: Flyt /home til ny diskpartition

Jeg ville gøre sådan her som root:

1. Tilføj den nye home-partition til din /etc/fstab
2. Mount den nye partition under /mnt/tmp
3. Kør kommandoen: rsync -avP /home/ /mnt/tmp/
4. Flyt /home til /oldhome og opret ny /home
5. Genstart.
6. Konstater at alt er som det skal være og slet /oldhome
  • Log ind eller opret dig for at tilføje kommentarer

# 3

15 år 5 måneder siden

Permalink

Indsendt af mrbrown79 den 31. januar 2010 kl. 20:42

Permalink

Nyt problem

Tak for inspirationen til jer begge.

Brugte kommandoen cp -ax til kopiere hele home til en midlertidig placering. rsync-kommandoen er sikkert ligeså velegnet til formålet.

Jeg har tilføjet den fjerde linje til /etc/fstab:

UUID=xx..x /boot ext3 defaults 1 2
UUID=xx..x / ext4 defaults 1 1
UUID=xx...x swap swap defaults 0 0
/dev/sda4 /home ext4 defaults 1 3

Og flytningen af /home ser ud til at virke efter hensigten med undtagelse af en enkelt detalje:

Efterfølgende har jeg (af helt andre årsager) skiftet bruger-ID på min bruger. Dvs. jeg har rettet nummeret i /etc/passwd og /etc/group og slutteligt skiftet uid/gid rekursivt for hele /home/bruger biblioteket.

Nu er mit problem at når jeg starter en terminal fra GNOME, så starter den i root "/" (!). Hvis jeg efterfølgende skriver "cd", så skifter den som forventet til /home/bruger, men hvorfor mon den starter i root? Det er jo ikke verdens største problem, men stadig en indikation af at et-eller-andet ikke er som det bør være. Jeg ved ikke om det er relateret, men i /var/log/messages finder jeg linjen: Jan 31 20:03:32 hostname gdm-simple-greeter[3078]: WARNING: Unable to query filesystem type for /home/bruger: Error getting filesystem info: Permission denied.

Nogen ideer om, hvad der kan være galt?
  • Log ind eller opret dig for at tilføje kommentarer

# 4

15 år 5 måneder siden

Permalink

Indsendt af mrbrown79 den 31. januar 2010 kl. 21:03

Permalink

Endnu en kuriositet

En ls -la i /home/bruger giver bl.a.

d?????????? ? ? ? ? ? .gvfs


Grimt! Hvordan fa'en fixer jeg det?
  • Log ind eller opret dig for at tilføje kommentarer

# 5

15 år 5 måneder siden

Permalink

Indsendt af m_abs den 31. januar 2010 kl. 21:32

Permalink

#3
Da du skiftede uid+gid

#3
Da du skiftede uid+gid gjorde du det også på selve mappe /home/bruger?

chmod bruger:grupper /home/bruger -Rv

#4
Hvad giver den kommando, hvis du kører den som root?
  • Log ind eller opret dig for at tilføje kommentarer

# 6

15 år 5 måneder siden

Permalink

Indsendt af mrbrown79 den 31. januar 2010 kl. 21:39

In reply to #3
Da du skiftede uid+gid
by m_abs

Permalink

Da du skiftede uid+gid

Da du skiftede uid+gid gjorde du det også på selve mappe /home/bruger?

Ja.

Hvad giver den kommando, hvis du kører den som root?

Det samme.
  • Log ind eller opret dig for at tilføje kommentarer

# 7

15 år 5 måneder siden

Permalink

Indsendt af m_abs den 31. januar 2010 kl. 21:51

Permalink

Re: Flyt /home til ny diskpartition

Hvis du skifte ejerskab på alle filer der tilhørte din gamle uid, så kan du gøre sådan her som root:


find / -uid $OLD_UID -exec chown $NEW_UID '{}' \;
find / -gid $OLD_GID -exec chgrp $NEW_GID '{}' \;

Indsæt selv de rigtige værdier :)

Jeg vil dog anbefale at teste det på en anden mappe end / først :)

EDIT: Rettede lige kommandoerne så de rent faktisk virker.
  • Log ind eller opret dig for at tilføje kommentarer

# 8

15 år 5 måneder siden

Permalink

Indsendt af mrbrown79 den 31. januar 2010 kl. 21:52

In reply to Re: Flyt /home til ny diskpartition by m_abs

Permalink

find / -uid $OLD_UID -exec

find / -uid $OLD_UID -exec chown $NEW_UID '{}' \;
find / -gid $OLD_GID -exec chgrp $NEW_GID '{}' \;


Jeps, det minder lidt om måden, jeg selv gjorde det på :)

find / -uid 500 giver slet ingen forekomster nu (heller ikke gid).

  • Log ind eller opret dig for at tilføje kommentarer

# 9

15 år 5 måneder siden

Permalink

Indsendt af m_abs den 31. januar 2010 kl. 21:42

Permalink

#6
Jeg finder det ret

#6
Jeg finder det ret bekymrende at den giver samme resultat som root.

Jeg villle nok umounte filsystemet og kører en fsck på det.
  • Log ind eller opret dig for at tilføje kommentarer

# 10

15 år 5 måneder siden

Permalink

Indsendt af mrbrown79 den 31. januar 2010 kl. 21:57

In reply to #6
Jeg finder det ret
by m_abs

Permalink

Re: #6
Jeg finder det ret

Det er ikke sikkert problemerne er relaterede - jeg kan i hvert fald se at andre har oplevet .gvsf-mærkværdigheden. Fx. http://forums.opensuse.org/applications/387162-permission-denied-gvfs.h…

Jeg villle nok umounte filsystemet og kører en fsck på det.
Det lyder under alle omstændigheder som en god ide. Hvilke argumenter kører man fsck-kommandoen med? man fsck giver ret mange fremmedord for mit vedkommende :)
  • Log ind eller opret dig for at tilføje kommentarer

# 11

15 år 5 måneder siden

Permalink

Indsendt af m_abs den 1. februar 2010 kl. 00:19

Permalink

#10
Jeg kører normalt med

#10
Jeg kører normalt med den fsck der passer til filsystemet uden særlige parametre:

fsck.ext4 /dev/sdaX

Så stiller den spørgsmål, hvis den finder noget. Du kan også hvis du stoler på den gør det rigtigt give den -p, så løser den problemer selv. Personligt foretrækker jeg at se hvad den laver, selvom jeg stoler på den.

#9
Ahh, jeg tror jeg er med. .gvfs er noget fuse-relateret og som der står i tråden du linkede til så kan kun der der mounter noget med fuse se det.

Som den bruger der ejer den home, hvad får du med ls -la .gvfs? Så kan du måske unmounte den manuelt med
fusermount -u .gvfs

Hvis den er optaget, så prøv:
fuseermount -z -u .gvfs
  • Log ind eller opret dig for at tilføje kommentarer

# 12

15 år 5 måneder siden

Permalink

Indsendt af mrbrown79 den 1. februar 2010 kl. 01:50

Permalink

Problem løst - juhu!

fsck forløb problemfrit og uden anmærkninger.

Ad omveje fik jeg efterfølgende forvildet mig ind i SElinux loggen (titlen siger "setroubleshoot browser"). Der fandt jeg flg. interessante meddelelse:

Summary
SELinux is preventing access to files with the label, file_t.

Detailed Description
SELinux permission checks on files labeled file_t are being denied. file_t is the context the SELinux kernel gives to files that do not have a label. This indicates a serious labeling problem. No files on an SELinux box should ever be labeled file_t. If you have just added a new disk drive to the system you can relabel it using the restorecon command. Otherwise you should relabel the entire files system.

Allowing Access
You can execute the following command as root to relabel your computer system: "touch /.autorelabel; reboot"

Additional Information
Source Context:  system_u:system_r:xdm_t:s0-s0:c0.c1023Target Context:  system_u:object_r:file_t:s0T
....


Jeg forstår ikke meget af det, men prøvede med "touch /.autorelabel; reboot". Det resultaterede i noget relabelling under boot, men nu er problemet til gengæld væk (!)

Tak for sparring :)
  • Log ind eller opret dig for at tilføje kommentarer

Svar søges

den er sjov 0
llumos Unix-operativsystem, 0
Den er go 0
14. februar = I Love Free Software Day 0
Lokal fil-deling - for de dovne. 0

Seneste aktivitet

PcLinuxOS er død længe leve Pclosdebian 11
Reserve kernel og btrfs 1
En snak om Linux-kompatibel software 12
PCLinuxOS 28
"Intet realistisk alternativ" - mig i r*ven 17
Open source events i danmark? 3
Virtuel maskine? 4
Gode anmeldelser Zorin OS 17.3 8
Open Source-eksperimentet 5
Nulstilling af adgangskode 6
Ingen Mint 5
Linux App Store Flathub når 3 milliarder downloads 2
Digitaliseringsministeriet sætter gang i pilotprojekt om digital suverænitet 3
Mest sikker webbrowser 5
Firefox 2
Privatbeskeder 7
Backup/synkronisering? 3
BigLinux 5
Chatgpt satire 1
Læsning af databasefil i Firefox 2

© 2025 Linuxin og de respektive skribenter

Oprettet og drevet af nørder siden 2004 !