Follow along with the video below to see how to install our site as a web app on your home screen.
Huomio: This feature may not be available in some browsers.
Missä initissä tämä ei ole oletusarvoinen toimintatapa? Minulla on kokemusta vain SystemD:stä ja OpenRC:stä (Alpine) ja molemmat tekevät kyseisellä tavalla mikäli verkkoajureissa/serviceissä on ongelmia.Kuulostaisi aika hölmöltä, jos normaaliasennuksessa koko bootti odottelee verkon heräämistä sen sijaan että ainoastaan ehdottomasti verkkoa vaativien palveluiden käynnistys odottaa sitä taustalla...
Missä initissä tämä ei ole oletusarvoinen toimintatapa? Minulla on kokemusta vain SystemD:stä ja OpenRC:stä (Alpine) ja molemmat tekevät kyseisellä tavalla mikäli verkkoajureissa/serviceissä on ongelmia.
Linukkan totuttelevat (tai sitä hakitsevat) lukee kylkähiki otsalla tuota sun viestiä (mountata, git, repo, dotfilet ja rsync).
Siirtymistä Windowssista Linuxin pariin haittaa aina toi, että Linux EI OLE Windows. Kuulostaa yksinkertaiselta, mutta se ei todellakaa ole sitä. Esim Windowsissa sovellus asennetaan hakemalla netistä sovelluksen kotisivulta (joskus "kotisivulta") tiedosto, jonka avaaminen aloittaa asennuksen vs. Linuxissa avaat sovelluksen, valitset mitä haluat asentaa ja se siittä.
Toi "Linux EI OLE Windows" on ollu aina pohjalla sen mitä oon selvitelly kun joku on postannut jotain tyyliin "Linux on paska" = suomennettuna "Oon tottunut tekemään asian X näin ja LInuxissa se ei enään onnistu vaan mun pitää tehdä eri tavalla".
EndavourOS voisi olla kans pelaamiseen, nvdian ajurit valmiiksi asennettuna ja kaikki sovellukset saa helposti asennettua ilman että tarvii eri repojen kanssa kikkailla, AUR tuki valmiina. DE:nä tykkään ite käyttää Budgieta ja Xfce4:sta mutta kannattaa muitakin koeilla niin oma suosikki löytyy.Kiinnostaisi kovasti siirtyä osittain käyttämään linuxia. Rinnalle jäisi kuitenkin Windows 11, joten ei onneksi tarvitse pyörää keksiä täysin uudestaan.
Omiin tarpeisiin (Pelaaminen & internetin selaus) Pop!_OS voisi sopia hyvin, mutta kuulen mielellään ehdotuksia muistakin distroista. Mulla on kuitenkin RTX 3070 alivoltitettuna ja ylikellotettuna. MSI Afterburneria ei näytä saavan linuxille, joten onko kokemuksia softasta jolla linux puolella onnistuisi sama?
nvidia-smi
komennollaflatpak install --user ohjelma
Kyllä, luot erillisen /home -osion ja asennat ohjelmat flatpak-paketteina sinne. Muuta keinoa en tiedä. Muista käyttää flatpakin --user flagia niin asennus menee /home/käyttäjä -kansion alle.
Koodi:flatpak install --user ohjelma
Mikäli tuo HDD jostain syystä hajoaisi niin miten se Linux asennus siihen reagoisi, boottaisiko edes työpöydälle? Voiko asennusmedialla korjata tilanne luomalla uusi /home partitio, asentamatta kaikkea uudelleen?
Immutable 2.0:Voihan sen pelkän kansion, jossa on Winen tai Flatpakin asentamat ohjelmat laittaa eri osiolle, jolloin muu /home jää SSD-levylle.
Voihan sen pelkän kansion, jossa on Winen tai Flatpakin asentamat ohjelmat laittaa eri osiolle, jolloin muu /home jää SSD-levylle.
WINEPREFIX-muuttujalla voi asentaa ohjelman mihin tahansa paikkaan tiedostojärjestelmässä mihin käyttäjällä on tietysti oikeudet, vakiona taitavat mennä $HOME/.wine. Voit siis tehdä vaikka /wine osion ja tallennella sinne ohjelmat.Ymmärsin että Wine asentuu yleensä johonkin tiettyyn kansioon root- osion läheisyyteen, ja Winen asentamat /homeen. Eli jos Winen asennuspaikkaa ei voi valita vapaasti eikä myöskään sen asentamien ohjelmien, niin ainoat vaihtoehdot ovat /homen luominen (tai muuntaminen erilliseksi osioksi asennuksen jälkeen) toiselle levylle, symboliset linkit useamman levyn välillä tai sitten kansioiden siirto ja mounttaaminen joka vaikutti monimutkaiselta. Windowsin tapa on paljon käyttäjäystävällisempi, vaikka tuhlaakin levytilaa. Jos toisen levyn koko tila pyhitetään /home- osiolle, on varmaan mahdollista että Linux-asennus voi korruptoida sen sisältämät tiedostot, jotka olisivat turvassa mikäli ne sijaitsisivat sen ulkopuolella.
WINEPREFIX-muuttujalla voi asentaa ohjelman mihin tahansa paikkaan tiedostojärjestelmässä mihin käyttäjällä on tietysti oikeudet, vakiona taitavat mennä $HOME/.wine. Voit siis tehdä vaikka /wine osion ja tallennella sinne ohjelmat.
edit: Ehkä fiksumpaa asennella Bottles ja hallinnoida sillä noita purkkeja, lisäät vaan Flatsealilla oikeudet sinne osiolle mihin haluat tallentaa ne ohjelmat ja säädät Bottlesista yleisen asennuskansion kohdilleen.
Voit säätää Flatsealilla oikeudet siihen asemaan kaikille Flatpakeille yhdellä kertaa.Eli näin täytyy ilmeisesti tehdä joka kerta kun olen lisännyt uuden flatpak ohjelman Linuxiin, ja haluaisin että kyseinen ohjelma voisi lukea ja muokata tiedostoja jotka sijaitsevat jollakin toisella levyllä, esim. mainitsemallani data-HDD:llä.
Millä tavalla eri levyllä sijaitseva ohjelma on ongelmallinen, suoritatko sen ohjelman kenties levyllä itsellään etkä prosessori+ram kombolla?Itselläni ei myöskään ollut tarkoitus että kaikkia ohjelmia asennettaisiin varastolevyille, lähinnä sellaiset jotka joko vievät paljon tilaa, joita käytetään harvoin tai jotka ovat riippuvaisia varastodatasta. Oletusselain, kuvankäsittelyohjelmat ja kaikki pikkuohjelmat voivat sijaita järjestelmälevyllä, mutta mediasoittimet ja "kirjankatselimet" ovat kinkkisiä - normaalisti asentaisin ne samalle levylle missä niiden käyttämät tiedostot sijaitsevat, mutta Linuxin natiivi- sovellusten kanssa tämä näyttää olevan hankalaa. Ne joutuisivat lukemaan tiedostoja jotka sijaitsevat toisella levyllä, ja tämä ei ole optimaalista.
Saattaa olla että toimii suoriltaan tai saattaa olla että vaatii joidenkin asetusten vaihtamista Winestä/Bottlesista. Tämän vuoksi yleensä teen oman purkin jokaiselle ohjelmalle ettei yhden ohjelman erikoisasetukset sekoita muita ohjelmia.Windowsin standalone-ohjelmista - niitähän ei tarvitse asentaa, eli toimivatko ne Winen kautta normaalisti jos ne pelkästään siirretään sinne missä muutkin Wine- sovellukset ovat?
Oletusselain, kuvankäsittelyohjelmat ja kaikki pikkuohjelmat voivat sijaita järjestelmälevyllä, mutta mediasoittimet ja "kirjankatselimet" ovat kinkkisiä - normaalisti asentaisin ne samalle levylle missä niiden käyttämät tiedostot sijaitsevat
Download size | 38.16 MB |
---|---|
Installed size | 75.33 MB |
Millä tavalla eri levyllä sijaitseva ohjelma on ongelmallinen, suoritatko sen ohjelman kenties levyllä itsellään etkä prosessori+ram kombolla?
Nyt kuulostaa melko erikoiselta väitteeltä. Avaatko hieman tarkemmin?Ainoa haitta taitaa olla vain se että distrosta riippuen uuteen LTS- versioon päivittäminen saattaa poistaa kaiken datan sieltä.
Nyt kuulostaa melko erikoiselta väitteeltä. Avaatko hieman tarkemmin?
Itse olen eri linuxeja käyttänyt about 20v eikä nyt yhtäkkiä ainakaan tule yhtään tapausta mieleen että päivitys olisi jyrännyt käyttäjädatan eli /homen sisällön. On ollut Debiania, RedHatia, Fedoraa, Ubuntua sun muita ja kaikissa on päivityksessä datat säilyneet.Kaikenlaisia ristiriitaisia mielipiteitä tuli vastaan kun etsin tietoa siitä että kannattaako luoda erillinen /home- osio. Distrohoppaajat niin ainakin tekevät, ja muut olivat esittäneet huolia siitä että säilyykö oma data home-kansiossa isojen päivitysten yli, jos se sijaitsee samassa osiossa asennuksen kanssa. Jos otetaan esimerkiksi se miten Windows 10 päivittyisi automaattisesti vaikka versiosta 1703 nykyiseen, niin kaikki käyttäjän data säilyy ellei käyttäjä itse lataa Windowsin asennusmediaa ja tee puhdasta asennusta. Toimiiko Linux siis enemmän tai vähemmän Windowsin tapaan tässä asiassa, vai vaatiiko vastaava versiopäivitys LTS-distroissa aina puhtaan asennuksen jossa käyttäjän data menetetään mikäli kaikki data on samalla osiolla?
No tuo on ollut suositus aikaisemmin, kenties sillä oli jotain merkitystä järjestelmän latenssien suhteen? Audioharrastajat ovat siitä hyvin tarkkoja.
$ sudo du --max-depth=1 -h
228G ./home
4,9G ./var
0 ./dev
9,6M ./run
11M ./etc
4,0K ./tmp
0 ./sys
0 ./proc
6,9G ./usr
0 ./mnt
381M ./opt
4,0K ./root
0 ./srv
241G .
$ du -h --max-depth=1 -x
186M ./boot
16K ./lost+found
4,0K ./srv
76K ./snap
4,0K ./mnt
1,3G ./opt
8,5G ./usr
8,0K ./media
12G ./var
21M ./etc
4,0K ./cdrom
17M ./root
22G .
Ensimmäisenä tulisi mieleen että et ole ajanut grub2-mkconfig:ia (vai mikä lienee olikaan) tuon grub.conf -tiedoston editoinnin jälkeen eli konffan muutokset eivät ole aktivoituneet.Apua!
Onko täällä kellään Raspi4 + Centos yhdistelmää. Tai yleensäkin Centosia, esim tätä Stream 9 versiota.
Miten siinä valitaan kerneli jolta systeemi käynnistetään?
Käynnistyy vanhemmalta asennetulta kerneliltä, joka ei ole tarpeeksi uusi että Bluetooth ei roskaisi logeja täyteen.
- Ei ole Grubbyä
- Ei ole /boot/config.txt -tiedostoa
- /boot/grub/grub.conf -tiedoston muuttaminen ei vaikuta mihinkään.
Ensimmäisenä tulisi mieleen että et ole ajanut grub2-mkconfig:ia (vai mikä lienee olikaan) tuon grub.conf -tiedoston editoinnin jälkeen eli konffan muutokset eivät ole aktivoituneet.
Auttaisikohan nämä ohjeet jotain: How to set default boot kernel on Linux ( CentOS / RHEL 7 ) | GoLinuxCloud
Vaikuttaisi ettei koko kerneliä löytyisi, tai ainakaan tuo grub-installeri ei sitä löytänyt. Kertooko joku seuraavista komennoista että koko haluttu kerneli on edes asennettuna?eipä ollu apua...
bash: grub2-mkconfig: command not found
update-grub ei myöskään toimi
-> ts. ei taida koko grub olla asennettuna.
asensin pakettienhallinsta grub2-efin.
käynnistin grub2-configin:
### BEGIN /etc/grub.d/30_os-prober ###
Found CentOS Stream 9 on /dev/mmcblk0p3
menuentry 'CentOS Stream 9 (on /dev/mmcblk0p3)' --class centos --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-6acbcaae-e0d4-42b6-9929-8e6d41690d12' {
insmod part_msdos
insmod fat
search --no-floppy --fs-uuid --set=root B249-54DB
linux /vmlinuz-0-rescue-fd4b44aa1345451f9ff35e797ebb361a root=/dev/mmcblk0p3
initrd /initramfs-0-rescue-fd4b44aa1345451f9ff35e797ebb361a.img
}
submenu 'Advanced options for CentOS Stream 9 (on /dev/mmcblk0p3)' $menuentry_id_option 'osprober-gnulinux-advanced-6acbcaae-e0d4-42b6-9929-8e6d41690d12' {
menuentry 'CentOS Stream 9 (on /dev/mmcblk0p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/vmlinuz-0-rescue-fd4b44aa1345451f9ff35e797ebb361a--6acbcaae-e0d4-42b6-9929-8e6d41690d12' {
insmod part_msdos
insmod fat
search --no-floppy --fs-uuid --set=root B249-54DB
linux /vmlinuz-0-rescue-fd4b44aa1345451f9ff35e797ebb361a root=/dev/mmcblk0p3
initrd /initramfs-0-rescue-fd4b44aa1345451f9ff35e797ebb361a.img
}
menuentry 'CentOS Stream 9 (on /dev/mmcblk0p3)' --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-/kernel-5.4.60-v8.1.el8.img--6acbcaae-e0d4-42b6-9929-8e6d41690d12' {
insmod part_msdos
insmod fat
search --no-floppy --fs-uuid --set=root B249-54DB
linux /kernel-5.4.60-v8.1.el8.img root=/dev/mmcblk0p3
initrd /initramfs-5.4.60-v8.1.el8.img
}
}
# Other OS found, undo autohiding of menu unless menu_auto_hide=2
if [ "${orig_timeout_style}" -a "${menu_auto_hide}" != "2" ]; then
set timeout_style=${orig_timeout_style}
set timeout=${orig_timeout}
fi
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/30_uefi-firmware ###
Adding boot menu entry for UEFI Firmware Settings ...
if [ "$grub_platform" = "efi" ]; then
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
fwsetup
}
fi
### END /etc/grub.d/30_uefi-firmware ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f ${config_directory}/custom.cfg ]; then
source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg
fi
### END /etc/grub.d/41_custom ###
done
toi 5.4.60 on tämä sama VANHA kerneli.
nyt mulla on /boot hakemistossa:
nämä:
grub/ grub2/
ja /etc:ssä kaksi rikkinäistä symlinkkiä mitkä ei johda mihinkään:
lrwxrwxrwx. 1 root root 22 May 31 11:53 /etc/grub2.cfg -> ../boot/grub2/grub.cfg
lrwxrwxrwx. 1 root root 22 May 31 11:53 /etc/grub2-efi.cfg -> ../boot/grub2/grub.cfg
eli nuo .cfg puuttuu. mutta
/boot/grub/grub.conf löytyy. sen sisältö:
default=0
timeout=15
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
yum list installed kernel
dnf list installed kernel
rpm -qa kernel
P
/ \
A B
|
A
Vastauksena tähän root/home partitio keskusteluun:
Ensin kannattaa miettiä mikä on oikeastaan se perustelu miksi jotkut ohjelmat halutaan asentaa HDD:lle. Lukaisin nopeasti keskustelun läpi ja en nähnyt mitään hyvää perustelua. Se että tällätavoin niistä saa hitaammin latautuvia ei ole hyvä perustelu. Oikeastaan ainoa perustelu miksi minä olen asentanut joitakin ohjelmia /home partitiolle on se että jotkut harvat on liian suuria että ne ei mahdu /root paritioon. Sinulla SDD oli 256GB kokoinen joten en usko että ihan heti tulee tällaista ongelmaa. Linux ohjelmat on monasti aika pienikokoisia.
Olisin myös sitä mieltä että linuxissä on paljon enemmän mahdollisuuksia joustavaan ohjelmien asentamiseen eri puolille kuin mikään windowssin systeemi. Se että linuxissa monet ohjelmat haluaa sijaita kiinteässä kohdassa hakemistorakennetta ei ole ongelma koska linuxissa hakemiston eri osia voi aika vapaasti siirtää levyltä toiselle jopa sen jälkeen kun asennukset on tehty ja softia ei tarvitse asentaa uudestaan jos ei halua vaikkakin ne siirretään eri levylle ihan yhtäkkiä yllättäen.
MInulla oli tapana joskus muinoin tehdä niin että kun asensin käyttöjärjestelmän niin pistin kaikki yhdelle partitiolle ja sen jälkeen kopioin /home hakemiston toiselle partitiolle ja mounttasin tämän toisen partition /home kohtaan käyttöä varten. sitten kun halusin päivittää käyttöjärjestelmää niin umounttasin tämän toisen partition /home hakemiston paljastaen sen alla olevan systeemipartition alkuperäisen /home hakemiston. Näin pystyin olemaan varma että käyttöjärjestelmän päivitys ei tuhoa sitä oikeaa home hakemistoa kun se ei ole edes mountattuna käyttispäivityksen aikana. No tämä oli joskus muinoin ja en ole enää jaksanut unmounttaamista tehdä kun luotan että tuota toisella partitiolla olevaa home hakemistoa se ei kirjoita uusiksi. Edelleen kuitenkin pidän root ja home partitiot erillään ihanvaan siksi että voin antaa käyttispäivitykselle luvan formatoida root partitio koska tälleen se käyttiksen asennus on paremmin uusi ja luotan että home partition arvokkaaseen tavaraan se ei koske. Tosin voi vaikuttaa että nykyään mulla on varmuuskopiointijutut paljon paremmin kuin silloin muinoin.
Minulla on ollut tämän root partition kokona yleensä joku 60GB ja loput levystä 200-700GB on ollut home partitiota. Kaikki ohjelmat olen asentanut root partitioon ja minulla on siis tuo 60GB riittänyt varsin hyvin eli en usko että sinulla 256GB tulee heti täyteen ohjelmista.
Mutta jos tällainen tarve tulee luoda tyhjää tilaa root partitiolle niin silloin on mahdollista just sillä hetkellä siirtää osa root partition tavarasta home partitioon luoden sinne esim hakemiston /home/usr ja kopioida esim /usr/local hakemiston tavarat uuteen paikkaan /home/usr/local hakemistoon ja tekemällä symlinkki /usr hakemistoon osoittamaan tähän uuteen /home/usr/local hakemistoon. Vanhan /usr/localin voi deletoida jos haluaa joko kokonaan tai osittain. Täten on noin 2 minuutin työllä siirretty osa root partition tavarasta home partitioon ja kaikki ohjelmat toimii niinkuin ennenkin ja ne ei mitenkään voi huomata että ne sijaitseekin nyt toisella levyllä. En usko että tällaista näppäryyttä löytyy Windowssista. Jos haluaa hifistellä niin ehkä ei kannata koko /usr/local hakemistoa siirtää jos vaikka pelkää home levyn crashaavan vaan voi siirtää vain /usr/local/BigProgram hakemisto. Tälleen ei haittaa jos home levy crashaa ja ainoastaan tämä yksi iso ohjelma ei toimi.
Jos minä olisin asentamassa linuxia tuonkaltaiseen levysysteemiin niin jakaisin SDD:n kahteen partitioon eli 60GB root ja 180GB home. Tällätavoin maksimoin tietsikan nopeuden kun home partitiokin on nopella SDD levyllä. HDD:n mounttaisiin siten että jotkut isot hakemistot olisivat siellä ja esim /${HOME}/Videos olisi symlinkki sinne HDD:lle jos sinulla on vaikka teratavuittain videoita jotka ei mahdu nopealle SDD:lle. Kallista SDD levyä kannattaa käyttää maksimaalisesti hyödyksi eikä pitää tyhjänä ihan turhanpäiten.
Kuinka paljon dynaamisen linkkerin toimintaa voi hienosäätää ympäristömuuttujilla? Oletetaan vaikka tilanne, jossa ohjelma P riippuu kirjastoista A (libA.so) ja B (libB.so), ja jälkimmäinen kirjasto riippuu kirjastosta A (libA.so). Eli näin:
Onko mahdollista määrittää eri polut P:n A:lle ja B:n A:lle? Eli niin, että tiedostot libA.so luetaan eri kansioista (esim. A:n versioeroavaisuuksien vuoksi)?Koodi:P / \ A B | A
Ympäristömuuttujaa LD_LIBRARY_PATH säätämällä voi vaikuttaa siihen, mistä P löytää A:n, mutta käsittääkseni ympäristömuuttujan arvo "periytyy" automaattisesti, eli se määrittää samalla sen, mistä B löytää A:n.
man 8 ld.so
.Kiinnostaisi kovasti siirtyä osittain käyttämään linuxia. Rinnalle jäisi kuitenkin Windows 11, joten ei onneksi tarvitse pyörää keksiä täysin uudestaan.
Omiin tarpeisiin (Pelaaminen & internetin selaus) Pop!_OS voisi sopia hyvin, mutta kuulen mielellään ehdotuksia muistakin distroista. Mulla on kuitenkin RTX 3070 alivoltitettuna ja ylikellotettuna. MSI Afterburneria ei näytä saavan linuxille, joten onko kokemuksia softasta jolla linux puolella onnistuisi sama?
Fedorassa 37:ssa ainakaan ei toiminut aiemmin nvidian kellotus vaikka cool-bitsit oli laitettu. Jos oikein muistan niin johtui siitä kun xserveriä ei ajettu roottina tms. Jotain Fedorassa kuitenkin tehtiin toisin kuin distroissa joissa kellotus toimi, asiasta taisi olla Fedoran forumilla kiivasta keskustelua joidenkin käyttäjän osalta. Osa siirsi syyn nvidialle ja osa Fedoralle mutta voin mustaa väärin, jos asia kiinnostaa niin kannattaa itse kaivella lisää. Kenties Nobarassa sama koska fedora pohjainen?Nobaraan kannattanee tutustua myös.
Voltittelut taitaa olla lukittuina, ja kelloja saa säädettyä vissiin vähän heikosti nykyään (ajurit tais jotenkin lukita niitä jne), itsekin kaivoin infoa tosi pitkään taannoin. GreenWithEnvy toimi hieman ja nvidia-smi ja nvidia-settings myös.
CoreCtrl:ää en testannut, mutta on mainittu vaihtoehtona. Löysin itse jonkun suomalaisen devaajan pikkusoftan tohon. Pitää kaivella myöhemmin, kun en kuolemaksenikaan muista softan nimeä. Githubista taisin kaivaa jollakin overclock tmv tagilla.
Fedorassa 37:ssa ainakaan ei toiminut aiemmin nvidian kellotus vaikka cool-bitsit oli laitettu. Jos oikein muistan niin johtui siitä kun xserveriä ei ajettu roottina tms. Jotain Fedorassa kuitenkin tehtiin toisin kuin distroissa joissa kellotus toimi, asiasta taisi olla Fedoran forumilla kiivasta keskustelua joidenkin käyttäjän osalta. Osa siirsi syyn nvidialle ja osa Fedoralle mutta voin mustaa väärin, jos asia kiinnostaa niin kannattaa itse kaivella lisää. Kenties Nobarassa sama koska fedora pohjainen?
Jännitteen säätö on lukittuna tosin kaikissa uudemmissa nvidian korteissa eikä MSI Afterburner tyyliin ole mahdollista säätää jännite käyrää ali-/ylivoltius tarkoituksiin. Jonkun pitäisi tehdä avoimen koodin afterburer klooni.
RUNPATHin tai RPATHin muuttaminen kävi mielessä, mutta se vaikuttaa vähän purkalta, ja silloin pitäisi varmaan olla lisäoletuksena se, että molempien A-kirjastojen mahdolliset riippuvuudet voidaan lukea samasta paikasta. Ellei sitten RUNPATHin ja RPATHin vaikutus ole jotenkin rekursiivinen.Kuulostaa äkkiseltään siltä että tässä tavoitellaan Windowsmaista dll-helvettiä ja päällimmäinen kysymys on miksi.. mutta en oikeastaan halua edes tietää.
Joka tapauksessa ympäristömuuttujien kautta lienee hankalampi rasti koska kuten jo totesit, ajetun ohjelman ympäristö on sama kaikille dynaamisille kirjastoille joita se käyttää. Väittäisin että yksinkertaisin tapa olisi puukottaa B:n RUNPATH tai RPATH osoittamaan sinne mistä tuo A halutaan. Suosittelen kuitenkin lämpimästi lukemaan ensin läpi ajatuksen kanssa ainakinman 8 ld.so
.
RUNPATHin tai RPATHin muuttaminen kävi mielessä, mutta se vaikuttaa vähän purkalta, ja silloin pitäisi varmaan olla lisäoletuksena se, että molempien A-kirjastojen mahdolliset riippuvuudet voidaan lukea samasta paikasta. Ellei sitten RUNPATHin ja RPATHin vaikutus ole jotenkin rekursiivinen.
En ole säätänyt Windowsia n. 20 vuoteen, joten en tiedä DLL-tiedostoista mitään, mutta Linuxissa olen törmännyt aiemminkin samankaltaiseen ongelmaan kolmannen osapuolen softia käytettäessä. Yksi tositapahtumiin perustuva esimerkki saadaan, kun riippuvuuskaaviossani valitaan P=matlab, A=libstdc++ ja B=libgstreamer. Matlabin asennuskansioon nimittäin asennoituu iso läjä so-tiedostoja, joista osa on samoja kuin järjestelmässä jo olevat, mutta mahdollisesti eri versioina. Matlabin käynnistyessä LD_LIBRARY_PATH menee sellaiseksi, että kirjastot löydetään ensisijaisesti tuolta Matlabin asennuskansiosta. Kaikkia Matlabin riippuvuuksia ei kuitenkaan tuolta löydy, vaan esimerkiksi tietyissä tapauksissa GStreamer otetaan käyttöön järjestelmäkansioista. Eräässä Matlab/Ubuntu-kombinaatiossa Matlabin tarjoama libstdc++ oli liian vanha Ubuntun asentamalle GStreamerille. Ratkaisuna oli yksinkertaisesti poistaa/uudelleennimetä/symlinkata tuo Matlab libstdc++ siten, että vain järjestelmän uudempi libstdc++ on linkkerille näkyvillä. Mutta tämä toimi ainoastaan siksi, että libstdc++:n taaksepäinyhteensopivuus on aika hyvä. Muussa tapauksessa jokin Matlabin asentama kirjasto olisi voinut lakata toimimasta.
Olisi kätevää, jos olisi joku ympäristömuuttuja kuten LD_LIBRARY_PATH_OVERRIDE, jolla voisi kirjastokohtaisesti määritellä poikkeuksia pathiin, ja se vaikutus pitäisi ulottua rekursiiviesti kaikkiin riippuvuuksiin siitä kyseisestä kirjastosta eteenpäin. Esim. yo. esimerkissä tekisin libgstreamerille poikkeuspathin. Etsimällä override-sanaa ehdottamastasi manuaalista löytyi sellainen kuin LD_PRELOAD, jota en muista ikinä käyttäneeni, mutta joka saattaisi tässä tapauksessa jopa toimia.
SSD:ssä on sekin juttu että niille kirjoittaminen lyhentää niiden elinikää. Kymmenien gigatavujen kokoisia pelejä on turha niihin asentaa jos ne eivät sinänsä vaadi SSD:tä kuten jotkin modernit pelit tekevät, liittyi muistaakseni niiden tapaan streamata renderöitävää sisältöä. Pelitkin kirjoittavat jatkuvasti dataa levylle käynnissä ollessaan. Selaimet ovat varmaankin pahimpia SSD:n raiskaajia heti käyttisten jälkeen, mutta SSD takaa niille parhaimman käyttömukavuuden (nopeus ja HDD-rutinoiden puute).
Juuri näin.Mun tämän hetkinen vanhin SSD Intelin 660p 2Tb mikä on ollut Windowsin levy kaikelle, käyttis, pelit, selaimet jne. 6241h ollut päällä ja tänä aikana kirjoitettu 40Tb dataa. Tuolle luvattu kesto on 400TBW
Tällä hetkellä halvimmat M.2 1Tb SSD ovat 50-60e luokkaa joille luvataan 300-600TBW.
Kukin voi arvottaa oman aikansa ja vaivansa näön, mutta itseäni ei juuri SSD "säästely" kiinnosta. Tämän lisäksi Btrfs voi pakata dataa lennossa ilman merkittävää overheadia mikä vähentänee kirjoitusten määrää, vaikea sanoa kuinka paljon.
Samaa mieltä, itsellä wanha läppäri joka on hankittu joskus arviolta 2009 oli ensin päivittäisessä käytössä muutaman vuoden ja sittemmin höpöhöpöserverinä 24/7 ainakin viimeiset 10v ja edelleen sen SSD-levy on ihan ok, SMART ei raportoi mitään vikaa vieläkään. Kuitenkin päivittäisiä luku/kirjoitus-syklejä on jatkuvasti. Ihan hetkessä nuo SSD:t eivät kuole, tuokin on jotain vanhaa sarjaa jossa takuulla ei ole vielä mietitty kaikkea mahdollista kulumista sun muuta ja vielä porskuttaa ihan hienosti. Toki siitä menee toisaalle backup viikon välein mutta silti.Juuri näin.
Eiköhän "SSD kirjotusten säästäminen ja joka tavu mitä levy tarjoaa on käytettävä"-juna oo menny jo aika päivää sitten. Jokainenhan toki voi tehhä asiasta kun asiasta itselleen ongelman niin halutessaan, mutta meitä on moneen lähtöön.
On Windows:n NTFS:llekin symboliset linkit tulleet aikaa sitten. "C:\Program Files\XXX" voi olla linkki "D:\ohjelmat\XXX":een, eikä ohjelma "XXX.exe" tiedä, ettei se (ja kaikki siihen liittyvä) olekaan C:n tiedostojärjestelmässä. Linux:n puolella ajettavat tiedostot ovat enimmäkseen samassa hakemistossa "/usr/bin" ja muut osat ohjelmaa muualla. Totta kyllä, että yksittäisen alihakemisto(puu)n saa Linuxissa helposti muualle.Olisin myös sitä mieltä että linuxissä on paljon enemmän mahdollisuuksia joustavaan ohjelmien asentamiseen eri puolille kuin mikään windowssin systeemi. Se että linuxissa monet ohjelmat haluaa sijaita kiinteässä kohdassa hakemistorakennetta ei ole ongelma koska linuxissa hakemiston eri osia voi aika vapaasti siirtää levyltä toiselle jopa sen jälkeen kun asennukset on tehty ja softia ei tarvitse asentaa uudestaan jos ei halua vaikkakin ne siirretään eri levylle ihan yhtäkkiä yllättäen.
Oletetaan, että Linux-distrossa on paketinhallinta. Ohjelmien tiedostot ovat paketeissa ja paketti määrää minne the asennetaan.MInulla oli tapana joskus muinoin tehdä niin että kun asensin käyttöjärjestelmän niin pistin kaikki yhdelle partitiolle ja sen jälkeen kopioin /home hakemiston toiselle partitiolle ja mounttasin tämän toisen partition /home kohtaan käyttöä varten. sitten kun halusin päivittää käyttöjärjestelmää niin umounttasin tämän toisen partition /home hakemiston paljastaen sen alla olevan systeemipartition alkuperäisen /home hakemiston. Näin pystyin olemaan varma että käyttöjärjestelmän päivitys ei tuhoa sitä oikeaa home hakemistoa kun se ei ole edes mountattuna käyttispäivityksen aikana. No tämä oli joskus muinoin ja en ole enää jaksanut unmounttaamista tehdä kun luotan että tuota toisella partitiolla olevaa home hakemistoa se ei kirjoita uusiksi. Edelleen kuitenkin pidän root ja home partitiot erillään ihanvaan siksi että voin antaa käyttispäivitykselle luvan formatoida root partitio koska tälleen se käyttiksen asennus on paremmin uusi ja luotan että home partition arvokkaaseen tavaraan se ei koske.
Monilla isoilla ohjelmistoilla kuten esim matlab on yleensä lueteltu ne käyttisversiot joissa toimii/on sertifioitu.RUNPATHin tai RPATHin muuttaminen kävi mielessä, mutta se vaikuttaa vähän purkalta, ja silloin pitäisi varmaan olla lisäoletuksena se, että molempien A-kirjastojen mahdolliset riippuvuudet voidaan lukea samasta paikasta. Ellei sitten RUNPATHin ja RPATHin vaikutus ole jotenkin rekursiivinen.
En ole säätänyt Windowsia n. 20 vuoteen, joten en tiedä DLL-tiedostoista mitään, mutta Linuxissa olen törmännyt aiemminkin samankaltaiseen ongelmaan kolmannen osapuolen softia käytettäessä. Yksi tositapahtumiin perustuva esimerkki saadaan, kun riippuvuuskaaviossani valitaan P=matlab, A=libstdc++ ja B=libgstreamer. Matlabin asennuskansioon nimittäin asennoituu iso läjä so-tiedostoja, joista osa on samoja kuin järjestelmässä jo olevat, mutta mahdollisesti eri versioina. Matlabin käynnistyessä LD_LIBRARY_PATH menee sellaiseksi, että kirjastot löydetään ensisijaisesti tuolta Matlabin asennuskansiosta. Kaikkia Matlabin riippuvuuksia ei kuitenkaan tuolta löydy, vaan esimerkiksi tietyissä tapauksissa GStreamer otetaan käyttöön järjestelmäkansioista. Eräässä Matlab/Ubuntu-kombinaatiossa Matlabin tarjoama libstdc++ oli liian vanha Ubuntun asentamalle GStreamerille. Ratkaisuna oli yksinkertaisesti poistaa/uudelleennimetä/symlinkata tuo Matlab libstdc++ siten, että vain järjestelmän uudempi libstdc++ on linkkerille näkyvillä. Mutta tämä toimi ainoastaan siksi, että libstdc++:n taaksepäinyhteensopivuus on aika hyvä. Muussa tapauksessa jokin Matlabin asentama kirjasto olisi voinut lakata toimimasta.
Olisi kätevää, jos olisi joku ympäristömuuttuja kuten LD_LIBRARY_PATH_OVERRIDE, jolla voisi kirjastokohtaisesti määritellä poikkeuksia pathiin, ja se vaikutus pitäisi ulottua rekursiiviesti kaikkiin riippuvuuksiin siitä kyseisestä kirjastosta eteenpäin. Esim. yo. esimerkissä tekisin libgstreamerille poikkeuspathin. Etsimällä override-sanaa ehdottamastasi manuaalista löytyi sellainen kuin LD_PRELOAD, jota en muista ikinä käyttäneeni, mutta joka saattaisi tässä tapauksessa jopa toimia.
OpenSUSE:ssahan on nvidian ajureille ihan oma repo. SDB:NVIDIA drivers - openSUSE WikiOlin sadisti ja asensin OpenSUSE Tumbleweedin (Plasma-työpöydällä) antiikkiseen nuhapumppu-läppäriin, jossa työjuhtana toimii AMD Turion 64 X2 TL-58, 2 gigaa muistia, hidas HDD ja joku Nvidian mobiilimopo. Muutaman tunnin kuluttua Plasma jo kaatuikin, ja asensin Xfce-työpöydän joka toimii huomattavasti sukkelammin. Wifi-adapteri toimi vielä Windowsin puolella mutta Linux-kernelissä ei taida olla tukea sille, ISO tunnisti vain LAN-kortin. Vielä jos non-free repoista löytyisi joku Nvidian ajuri tuohon, mutta en usko että näin tulee tapahtumaan.
Pitää ihan mielenkiinnosta kysyä, että paljon tossa meni aikaa siinä "loading basic drivers" vaimikäseoli kohdassa, ennen kuin se päästää sut klikkailee sitä itse asennusta? Muistaakseni joskus viime vai toissa vuonna ajoin Tumbleweedin omaa nuhapumppuas asteen modernimpaan Nehalem purkkiin ja siinä meni muistaakseni yli 30min, vaikka kyseessä olikin työpöytäprossu ja joku muinainen SATA II SSD.jossa työjuhtana toimii AMD Turion 64 X2 TL-58, 2 gigaa muistia, hidas HDD ja joku Nvidian mobiilimopo.